intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

TIỂU LUẬN "TÌM HIỂU RTC DS1307"

Chia sẻ: Tran Van Dung | Ngày: | Loại File: DOCX | Số trang:14

382
lượt xem
113
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong những thập niên cuối thế kỷ XX, từ sự ra đời của công nghệ bán dẫn, kỹ thuật điện tử đã có sự phát triển vượt bậc. Các thiết bị điện tử sau đó đã được tích hợp với mật độ cao và rất cao trong các diện tích nhỏ, nhờ vậy các thiết bị điện tử nhỏ hơn và nhiều chức năng hơn. Các thiết bị điện tử ngày càng nhiều chức năng hơn trong khi giá thành ngày càng rẻ hơn, chính vì vậy điện tử có mặt khắp mọi nơi....

Chủ đề:
Lưu

Nội dung Text: TIỂU LUẬN "TÌM HIỂU RTC DS1307"

  1. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý LỜI NHẬN XÉT CỦA GIẢNG VIÊN ............................................................................................................................................ ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. .............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. ............................................................................................................................................. TP.HCM ,THÁNG 06 NĂM 2011 LỜI MỞ ĐẦU Trong những thập niên cuối thế kỷ XX, từ sự ra đời của công nghệ bán dẫn, kỹ thuật điện tử đã có sự phát triển vượt bậc. Các thiết bị điện tử sau đó đã được tích hợp với mật độ cao và rất cao trong các diện tích nhỏ, nhờ vậy các thiết bị điện tử nhỏ hơn và nhiều chức năng hơn. Các thiết bị điện tử ngày càng nhiều chức năng hơn trong khi giá thành ngày càng rẻ hơn, chính vì vậy điện tử có mặt khắp mọi nơi. Và theo đó hãng Dallas đã cho ra đời IC thời gian thực DS1307 để phục vụ cho nhu cầu ngày càng cao của con người. Đây là một IC tích hợp cho thời gian bởi vì tính chính xác về thời gian tuyệt đối, cho thời gian : Thứ, ngày, tháng, năm, giờ, phút, giây. Được sử áp dụng rộng rãi trong các thiết bị điện tử như : đồng hồ số, chuông báo tiết hoc,... Và để tìm hiểu kỹ hơn về một trong những phát minh lớn này, nhóm em xin trình bày về đặc điểm,cấu tạo, chức năng và một số ứng dụng của IC thời gian thực DS1307. Mặc dù nhóm chúng em đã cố gắng nhưng không thể tránh khỏi sai sót , mong thầy và các bạn góp thêm ý kiến để bai tiểu luận của chúng em được hoàn thiện hơn. Chúng em xin chân thành cảm ơn… ! Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  2. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý I: Tìm hiểu IC thời gian thực DS1307 1. Giới thiệu chung về DS1307 - DS1307 là chip thời gian thực hay RTC (Read time clock). Đây là một IC tích hợp cho thời gian bởi vì tính chính xác về thời gian tuyệt đối, cho thời gian : Thứ, ngày,tháng, năm, gi ờ, phút, giây. -DS1307 được chế tạo bởi Dallas. Chip này có 7 thanh ghi 8 bit mỗi thanh ghi này chứa : Thứ , ngày, tháng, năm, giờ , phút, giây. Ngoài ra DS1307 còn chứa 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống, các thanh ghi này có thể dùng như là RAM. DS1307 được đọc thông qua chuẩn truyền thông I2C nên do đó để đọc được và ghi từ DS1307 thông qua chuẩn truyền thông này. Do nó được giao tiếp chuẩn I2C nên cấu tạo bên ngoài nó rất đơn giản Dạng đóng vỏ của DS1307 như sau : Trên là hai dạng cấu tạo của DS1307. Chip này có 8 chân và chúng ta hay dùng là dạng Dip và các chân nó được mô tả như sau : Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  3. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý + X1 và X2 là đầu vào dao động cho DS1307. Cần dao động thạch anh 32.768Khz. + Vbat là nguồn nuôi cho chip. Nguồn này từ ( 2V- 3.5V) ta lấy pin có nguồn 3V. Đây là nguồn cho chip hoạt động liên tục khi không có nguồn Vcc mà DS1307 vẫn hoạt động theo thời gian + Vcc là nguồn cho giao tiếp I2C. Điện áp cung cấp là 5V chuẩn và được dùng chung với vi xử lý. Nếu mà Vcc không có mà Vbat có thì DS1307 vẫn hoạt động bình thường nhưng mà không ghi và đọc được dữ liệu. + GND là nguồn Mass chung cho cả Vcc và Vbat + SQW/OUT là một ngõ ra phụ tạo xung dao động (xung vuông). Chân này không ảnh hưởng đến thời gian thực nên chúng ta không sử dụng chân này trong thời gian thực và bỏ trống chân này! + SCL và SDA là hai bus dữ liệu của DS1307. Thông tin truyền và ghi đều được truyền qua 2 đường truyền này theo chuẩn I2C. -DS1307 có một số đặc trưng cơ bản sau: +DS1307 là IC thời gian thực với nguồn cung cấp nhỏ dùng để cập nhật thời gian và ngày tháng. +SRAM : 56bytes +Địa chỉ và dữ liệu được truyền nối tiếp qua 2 đường bus 2 chiều. +DS1307 có môt mạch cảm biến điện áp dùng để dò các điện áp lỗi và tự động đóng ngắt với nguồn pin cung cấp 3v. + DS1307 có 7 byte dữ liệu nằm từ địa chỉ 0x00 tới 0x06, 1 byte điểu khiển, và 56 byte lưu trữ (dành cho người sủ dụng ) + Khi xử lý dữ liệu từ DS1307, họ đã tự chuyển cho ta về dạng số BCD, ví dụ như ta đọc được dữ liệu từ địa chỉ 0x04 ( tương ứng với Day- ngày trong tháng) và tại 0x05 ( tháng ) là 0x15, 0x11 như thế có nghĩa là lúc đó là ngày 15-11 chứ không phải là ngày 21 tháng 17. + Lưu ý đến vai trò của chân SQW/OUT. Đây là chân cho xung ra của DS1307 có 4 chế độ (1Hz, 4.096HZ, 8.192Hz, 32.768Hz) các chế độ này được quy định bởi các bít của thanh ghi Control Register ( địa chỉ 0x07 ) + Địa chỉ của DS1307 là 0xD0 2.Cơ chế hoạt động và chức năng của DS1307: -DS1307 hoạt động với vai trò slave trên đường bus nối tiếp.Việc truy cập được thi hành với chỉ thị start và một mã thiết bị nhất định được cung cấp bởi địa chỉ các thanh ghi. Tiếp theo đó các thanh ghi sẽ được truy cập liên tục đến khi chỉ thị stop đươc thực thi. Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  4. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý Vcc: nối với nguồn X1,X2: nối với thạch anh 32,768 kHz Vbat: đầu vào pin 3V GND: đất SDA: chuỗi data SCL: dãy xung clock SQW/OUT: xung vuông/đầu ra driver - DS1307 là một IC thời gian thực với nguồn cung cấp nhỏ, dùng để cập nhật thời gian và ngày tháng với 56 bytes SRAM. Địa chỉ và dữ liệu được truyền nối tiếp qua 2 đường bus 2 chiều. Nó cung cấp thông tin về giờ, phút, giây , thứ, ngày , tháng, năm. Ngày cuối tháng sẽ tự động được điều chỉnh với các tháng nhỏ hơn 31 ngày,bao gồm cả việc tự động nhảy năm. Đồng hồ có thể hoạt động ở dạng 24h hoặc 12h với chỉ thị AM/PM. -Sơ đồ khối của DS1307: Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  5. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý -Mô tả hoạt động của các chân: - Vcc,GND: nguồn một chiều được cung cấp tới các chân này. Vcc là đầu vào 5V. Khi 5V được cung cấp thì thiết bị có thể truy cập hoàn chỉnh và dữ liệu có thể đọc và viết. Khi pin 3 V được nối tới thiết bị này và Vcc nhỏ hơn 1,25Vbat thì quá trình đọc và viết không được thực thi, tuy nhiên chức năng timekeeping không bị ảnh hưởng bởi điện áp vào thấp. Khi Vcc nhỏ hơn Vbat thì RAM và timekeeper sẽ được ngắt tới nguồn cung cấp trong (thường là nguồn 1 chiều 3V) - Vbat: Đầu vào pin cho bất kỳ một chuẩn pin 3V . Điện áp pin phải được giữ trong khoảng từ 2,5 đến 3V để đảm bảo cho sự hoạt động của thiết bị. - SCL (serial clock input): SCL được sử dụng để đồng bộ sự chuyển dữ liệu trên đường dây nối tiếp. - SDA (serial data input/out): là chân vào ra cho 2 đường dây nối tiếp. Chân SDA thiết kế theo kiểu cực máng hở , đòi hỏi phải có một điện trở kéo trong khi hoạt động. - SQW/OUT (square wave/output driver)- khi được kích hoạt thì bit SQWE được thiết lập 1 chân SQW/OUT phát đi 1 trong 4 tần số (1Hz,4kHz,8kHz,32kHz). Chân này cũng được thiết kế theo kiểu cực máng hở vì vậy nó cũng cần có một điện trở kéo trong. Chân nàysẽ hoạt động khi cả Vcc và Vbat được cấp. - X1,X2: được nối với một thạch anh tần số 32,768kHz.Là một mạch tạo dao động ngoài , để hoạt động ổn định thì phải nối thêm 2 tụ 33pF Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  6. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý - Cũng có DS1307 với bộ tạo dao động trong tần số 32,768kHz, với cấu hình này thì chân X1 sẽ được nối vào tín hiệu dao động trong còn chân X2 thì để hở. II, Ghép nối DS1307 với vi điều khiển -Do DS1307 giao tiếp chuẩn I2C nên việc ghép nối nó với vi điều khiển khá là đơn giản và theo datasheet thì có sơ đồ sau : DS1307 nó chỉ giao tiếp với vi điều khiển với 2 đường truyền SCL và SDA nên do đó trên vi xử lý cần phải xác định chân nào trên vi xử lý nó có SCL và SDA để nối với DS1307 cái này đối với dòng PIC, AVR còn với dòng Psoc nó có sự khác biệt tùy theo kiều Fimware hay harware mà các chân SDA và SCL nó sẽ nằm ở chân nào được thiết lập trong phần mềm. III : Tổ chức thanh ghi trong DS1307 -Cấu tạo bên trong của DS1307 bao gồm mạch nguồn, dao động, logic và con trỏ , thanh ghi thực hiện việc ghi đọc. Do trong các bài toán chúng ta thường sử dụng DS1307 cho đồng hồ thời gian thực nên do đó chúng ta chỉ quan tâm đến việc ghi đọc các thanh ghi cần thiết (sec, min, hour…) thông qua chuẩn truyền thông I2C. Vì các thanh ghi đó được coi như là RAM lưu trữ, nên do đó chúng em chỉ giới thiệu các thanh ghi có chức năng thời gian thực phục vụ cho bài toán thời gian. Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  7. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý -Trong bộ nhớ của DS1307 có tất cả 64 thanh ghi địa chỉ từ 0 đến 63 và được bắt đầu từ 0x00 đến 0x3F nhưng trong đó chỉ có 8 thanh ghi đầu là thanh ghi thời gian thực nên chúng ta sẽ đi sâu vào 8 thanh ghi ( chức năng và địa chỉ thanh ghi thời gian thực này). Nhìn vào bảng thanh ghi trong datasheet ta sẽ thấy như sau : -Dựavào bảng trên chúng ta thấy các thanh ghi thời gian thực nó được sắp sếp theo thứ tự : giây, phút, giờ, thứ, ngày , tháng, năm và bắt đầu từ thanh ghi Giây (0x00) và kết thúc bằng thanh ghi năm (0x06). Riêng thanh ghi Control dùng để điều khiển ngõ ra của chân SQW/OUT nên trong thực tế nên không mấy ai sử dụng thanh ghi này trong thời gian thực nên chúng ta bỏ qua thanh ghi này. -Do 7 thanh ghi đầu tiên là khá quan trọng cho thời gian thực và là thanh ghi quan trọng nhất trong con DS1307 nên chúng ta phải hiểu được cách tổ chức thanh ghi này trong DS1307. - Thông tin về thời gian và ngày tháng được lấy ra bằng cách đọc các byte thanh ghi thích hợp. thời gian và ngày tháng được thiết lập cũng thông qua các byte thanh ghi này bằng cách viết vào đó những giá trị thích hợp. -Nội dung của các thanh ghi dưới dạng mã BCD (binary coded decreaseimal). -Bit 7 của thanh ghi seconds là bit clock halt (CH) , khi bit này được thiết lập 1 thì dao động disable, khi nó được xoá về 0 thì dao động được enable. (Chú ý : enable dao động trongsuốt quá trình cấu hình thiết lập (CH=0) ). Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  8. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý Thanh ghi thời gian thực được mô tả như sau: -Nhìn bảng trên chúng ta thấy các thanh ghi được mã hóa theo bit. Mỗi bit trong thanh ghi đều có chức năng riêng và được sẽ trình bày chi tiết như sau : + Thanh ghi giây (0x00) : Đây là thanh ghi giây của DS1307. Nhìn trên bảng trên ta thấy được từ bit 0 đến bit 3 là dùng để mã hóa số BCD hàng đơn vị của giây. Tiếp theo từ bit 4 đến bit 6 dùng để mã hóa BCD hàng chục của giây. Tại sao nó chỉ sử dụng có 3 bit này là do giây của chúng ta lớn nhất chỉ đến 59 nên hàng chục lớn nhất là 5 nên chỉ cần 3 thanh ghi này là cũng đủ mã hóa rồi. Còn bit thứ 7 có tên là “CH” nó có nghĩa là “ Clock Halt – Treo đồng hồ” Do đó nếu mà bit 7 này mà được đưa lên ‘1’ tức là khóa đồng hồ nên do đó nó vô hiệu hóa chip và chip không hoạt động. Nên do vậy lúc nào cũng phải cho bit 7 này luôn xuống 0 từ lúc đầu (cái này sử dụng lệnh end với 0x7F) + Thanh ghi phút (0x01) : Đây là thanh ghi phút của DS1307. Cũng nhìn trên bảng thanh ghi này được tổ chức như thanh ghi giây. Cũng là 3 bit thấp dùng để mã hóa BCD chữ số hàng đơn vị và số hàng trục chỉ lớn nhất là 5 nên do đó chỉ cần dùng từ bit 4 đến bit 6 để mã hóa BCD tiếp chữ số hàng chục. Nhưng thanh ghi này có sự khác biệt với thanh ghi giây là bit 7 nó đã mặc định bằng 0 rồi nên do đó chúng ta không phải làm gì với bit 7 mà kệ nó. + Thanh ghi giờ (0x02) : Đây là thanh ghi giờ của DS1307 và ta thấy thanh ghi này được coi là phức tạp nhất vì nó lằng nhằng nhưng mà nhìn bảng thì thấy các tổ chức của nó cũng Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  9. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý hợp lý. Trước tiên chúng ta thấy được rằng từ bit 0 đến bit 3 nó dùng để mã hóa BCD của chữ số hàng đơn vị của giờ. Nhưng mà giờ nó còn có chế độ 24h và 12h nên do đó nó phức tạp ở các bit cao (bit 4 đến bit 7) và sự chọn chế độ 12h và 24h nó lại nằm ở bit 6. Nếu bit 6=0 thì ở chế độ 24h thì do chữ số hàng trục lớn nhất là 2 nên do đó nó chỉ dùng 2 bit ( bit 4 và bit 5 ) để mã hóa BCD chữ số hàng trục của giờ. Nếu bit 6 =1 thì chế độ 12h được chọn nhưng do chữ số của hàng trục của giờ trong chế độ này chỉ lớn nhất là 1 nên do đó bit thứ 4 là đủ để mã hóa BCD chữ số hàng trục của giờ rồi nhưng mà bit thứ 5 nó lại dùng để chỉ buổi sáng hay chiều, nếu mà bit 5 =0 là AM và bit 5 =1 là PM. Trong cả 2 chế độ 12h và 24h thì bit 7 =0 nên ta ko cần chú ý đến thanh ghi này. + Thanh ghi thứ (0x03): Đây là thanh ghi thứ trong tuần của DS1307 và thanh ghi này khá là đơn giản trong DS1307. Nó dùng số để chỉ thứ trong tuần nên do đó nó chỉ lấy từ 1 đến 7 tương đương từ thứ hai đến chủ nhật. Nên do đó nó dùng 3 bit thấp (bit 0 đến bit 2) để mã hóa BCD ra thứ trong ngày. Còn các bit từ 3 đến 7 thì nó mặc định bằng 0 và ta không làm gì với các bit này. + Thanh ghi ngày (0x04) : Đây là thanh ghi ngày trong tháng của DS1307. Do trong các tháng có số ngày khác nhau nhưng mà nằm trong khoảng từ 1đến 31 ngày. Do đó thanh ghi này các bit được tổ chức khá là đơn giản. Nó dùng 4 bit thấp (bit 0 đến bit 3) dùng để mã hóa BCD ra chữ số hàng đơn vị của ngày trong tháng. Nhưng do chữ số hàng trục của ngày trong tháng chỉ lớn nhất là 3 nên chỉ dùng bit 4 và bit 5 là đủ mã hóa BCD rồi. Còn bit 6 và bit 7 chúng ta không làm gì và nó mặc định bằng 0. + Thanh ghi tháng (0x05) : Đây là thanh ghi tháng trong năm của DS1307. Tháng trong năm chỉ có từ 1 đến 12 tháng nên việc tổ chức trong bit cũng tương tự như ngày trong tháng nên do cũng 4 bit thấp (từ bit 0 đến bit 3) mã hóa BCD hàng đơn vị của tháng. Nhưng do hàng chục c hỉ lớn nhất là 1 nên chỉ dùng 1 bit thứ 4 để mã hóa BCD ra chữ số hàng trục và các bit còn lại từ bit 5 đến bit 7 thì bỏ trống và nó mặc định cho xuống mức 0. + Thanh ghi năm (0x06): Đây là thanh ghi năm trong DS1307. DS1307 chỉ có 100 năm thôi tương đương với 00 đến 99 nên nó dùng tất cả các bit thấp và bit cao để mã hóa BCD ra năm. + Thanh ghi điều khiển (0x07): Đây là thanh ghi điều khiển quá trình ghi của DS1307 và Quá trình ghi phải được kết thúc bằng địa chỉ 0x93. Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  10. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý - Trong quá trình truy cập dữ liệu, khi chỉ thị START được thực thi thì dòng thời gian được truyền tới một thanh ghi thứ 2, thông tin thời gian sẽ được đọc từ thanh ghi thứ cấp này, trong khi đó đồng hồ vẫn tiếp tục chạy. -Trong DS1307 có một thanh ghi điều khiển để điều khiển hoạt động của chân SQW/OUT - OUT(output control): bit này điều khiển mức ra của chân SQW/OUT khi đầu ra xung vuông là disable. Nếu SQWE=0 thì mức logic ở chân SQW/OUT sẽ là 1 nếu OUT=1,và =0 nếu OUT=0 - SQWE(square wave enable): bit này được thiết lập 1 sẽ enable đầu ra của bộ tạo dao động. Tần số của đầu ra sóng vuông phụ thuộc vào giá trị của RS1 và RS0 - DS1307 hỗ trợ bus 2 dây 2 chiều và giao thức truyền dữ liệu. Thiết bị gửi dữ liệu lên bus được gọi là bộ phát và thiết bị nhận gọi là bộ thu. Thiết bị điều khiển quá trình này gọi là master. Thiết bị nhận sự điều khiển của master gọi là slave. Các bus nhận sự điều khiển của master, là thiết bị phát ra chuỗi xung clock(SCL), master sẽ điều khiển sự truy cập bus, tạo ra các chỉ thị START và STOP Sự truyền nhận dữ liệu trên chuỗi bus 2 dây : Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  11. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý Tuỳ thuộc vào bit R/ w mà 2 loại truyền dữ liệu sẽ được thực thi: - Truyền dữ liệu từ master truyền và slave nhận: Master sẽ truyền byte đầu tiên là địa chỉ của slave. Tiếp sau đó là các byte dữ liệu . slave sẽ gửi lại bit thông báo đã nhận được (bit acknowledge) sau mỗi byte dữ liệu nhận được. dữ liệu sẽ truyền từ bit có giá trị nhất (MSB). - Truyền dữ liệu từ slave và master nhận: byte đầu tiên (địa chỉ của slave) được truyền tới slave bởi master. Sau đó slave sẽ gửi lại master bit acknowledge. tiếp theo đó slave sẽ gửi các byte dữ liệu tới master. Master sẽ gửi cho slave các bit acknowledge sau mỗi byte nhận được trừ byte cuối cùng, sau khi nhận được byte cuối cùng thì bit acknowledge sẽ không được gửi . - Master phát ra tất cả các chuỗi xung clock và các chỉ thị START và STOP. sự truyền sẽ kết thúc với chỉ thị STOP hoặc chỉ thị quay vòng START. Khi chỉ thị START quay vòng thì sự truyền chuỗi dữ liệu tiếp theo được thực thi và các bus vẫn chưa được giải phóng. Dữ liệu truyền luôn bắt đầu bằng bit MSB. IV. Các chế độ hoạt động của DS1307 1, Chế độ slave nhận( chế độ DS1307 ghi): chuỗi dữ liệu và chuỗi xung clock sẽ được nhận thông qua SDA và SCL. Sau mỗi byte được nhận thì 1 bit acknowledge sẽ được truyền. Các điều kiện START và STOP sẽ được nhận dạng khi bắt đầu và kết thúc truyền 1 chuỗi. Nhận dạng địa chỉ được thực hiện bởi phần cứng sau khi chấp nhận địa chỉ của slave và bit chiều. Byte địa chỉ là byte đầu tiên nhận được sau khi điều kiện START được phát ra từ master. Byte địa chỉ có chứa 7 bit địa chỉ của DS1307, là 1101000, tiếp theo đó là bit chiều (R/ w) cho phép ghi khi nó bằng 0. Sau khi nhận và giải mã byte địa chỉ thì thiết bị sẽ phát đi 1 tín hiệu acknowledge lên đường SDA. Sau khi DS1307 nhận dạng được địa chỉ và bit ghi thì master sẽ gửi một địa chỉ thanh ghi tới DS1307 , tạo ra một con trỏ thanh ghi trên DS1307 và master sẽ truyền từng byte dữ liệu cho DS1307 sau mỗi bit acknowledge nhận được. Sau đó master sẽ truyền điều kiện STOP khi việc ghi hoàn thành. 1, Chế độ slave phát ( chế độ DS1307 đọc): byte đầu tiên slave nhận được tương tự như chế độ slave ghi. Tuy nhiên trong chế độ này thì bit chiều lại chỉ chiều truyền ngược lại. Chuỗi dữ liệu được phát đi trên SDA bởi DS1307 trong khi chuỗi xung clock vào chân SCL. Các điều kiện START và STOP được nhận dạng khi bắt đầu hoặc kết thúc truyền một chuỗi. Byte địa chỉ nhận được đầu tiên khi master phát đi điều kiện START. Byte địa chỉ chứa 7 bit địa chỉ của slave và 1 bit chiều cho phép đọc là 1. Sau khi nhận và giải mã byte địa chỉ thì thiết bị sẽ nhận 1 bit acknowledge trên đường SDA. Sau đó DS1307 bắt đầu gửi dữ liệu tới địa chỉ con trỏ thanh ghi thông qua con trỏ thanh ghi. Nếu con trỏ thanh ghi không được viết vào trước khi chế độ đọc được thiết lập thì địa chỉ đầu tiên được đọc sẽ là địa chỉ cuối cùng chứa trong con trỏ thanh ghi. DS1307 sẽ nhận được một tín hiệu Not Acknowledge khi kết thúc quá trình đọc. Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  12. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý - Thời gian thực hiện việc đọc, ghi dữ liệu của DS1307: sơ đồ đồng bộ: Đặc tính và thời gian thực hiện: V: Tổng kết Như chúng ta đã biết thì DS1307 nó mã hóa ra số BCD như đã nói ở trên do đó khi ghi vào các thanh ghi này cũng phải là số BCD. Vì vậy việc đọc và ghi thì đều là giá trị BCD trong lập trình thì việc đưa các giá trị BCD này vào khó khăn nên chúng ta thường dùng biến đổi qua lại giữa BCD và thập lục phân để dễ dàng kiểm soát của các giá trị của thanh ghi. Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  13. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý VD : Thanh ghi giờ cho giá trị là 0x10 đây là mã BCD nhưng mà khi chuyển sang mã thập lục phân thì giá trị nó là 16 Cái này các bạn tìm hiểu cách chuyển đổi và cấu tạo của hai mã này. Ở đây không nói về nó! Nói chung trong LED 7 đoạn thì các mã BCD này rất tiện dùng vì LED 7 đoạn được mã hóa theo BCD khi dùng thêm con mã hóa 7447 chẳng hạn ! Trong quá trình ghi dữ liệu cho các thanh ghi thời gian thực chúng ta cũng phải chuyển đổi thành mã BCD tương ứng sau đó mới ghi vào cho DS1307. Tài liệu tham khảo 1/ picvietnam.com 2/ www.goole.com.vn 3/ dientuvietnam.net 4/ hocavr.com… Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
  14. Trường ĐH Công NghiệpTPHCM Tiểu luận vi xử lý MỤC LỤC Tìm hiểu RTC DS1307 và ứng dụng GVHD: HUỲNH MINH NGỌC
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2