Module DS1307 + 24C32 (RTC / I2C)- Module Thời Gian Thực
1. Giới thiệu về module :
- Đây là module tạo thời gian thực giao tiếp theo chuẩn I2C sử dụng 2 IC DS1307 + 24C32
2. Chức năng của module:
- Làm mạch đồng hồ số, alarm clock , mạch đếm , …
3. Thông Số Kĩ Thuật
- DS1307 I2C thời gian thực Sử dụng Chip đồng hồ (RTC)
- 24C32 32K I2C bộ nhớ EEPROM
- Khi sạc đầy, Module có thể cung cấp các DS1307 trong thời gian 1 năm
- Thiết kế nhỏ gọn, 27mm * 28mm * 8.4mm
- Chuẩn giao tiếp: I2C
4. Sơ đồ nguyên lí
- Về IC DS1307 ( IC real time )
- Đây là IC thời gian thực (RTC – real time clock ), chức năng như tên gọi là mô phỏng thời gian thực tế mà
chúng ta đang dùng.
- DS1307 có 7 thanh ghi 8bit chứa thời gian là : giây , phút , giờ , thứ , ngày , tháng , năm.
- DS1307 còn có 1 thanh ghi điều khiển ngõ ra phụ và 56 thanh ghi trống có thể dùng làm RAM.
- DS1307 đọc / ghi thông qua giao tiếp chuẩn I2C.
- Hình ảnh + thứ tự chân:
- Chân X1 , X2 kết nối với thạch anh 32 768 KHz làm nguồn tạo dao động cho IC.
- Vbat nối với nguồn ngoài 3V để nuôi IC.
- GND là chân Mass chung cho cả nguồn ngoài 3V và Vcc.
- Vcc là nguồn cho giao tiếp I2C, thường là 5V và dùng chung với VĐK.
( chú ý: nếu Vcc k đc cấp mà Vbat đc cấp thì DS1307 vẫn hoạt động nhưng k có khả năng đọc / ghi.
- SQW / OUT : ngõ phụ tạo xung vuông , tần số của xung đc tạo ra có thể lập trình đc ( chức năng chân này
k0 liên quan đến chức năng của DS1307 là đồng hồ thời gian thực , nên ta bỏ qua ).
- 2 chân SCL và SDA là chân của giao tiếp I2C.
- Về IC 24C32
- DataSheet: LINK
- Đây là IC EEPROM có dùng để lưu code , có khả năng nạp/ xóa , giao tiếp theo chuẩn I2C
- Về Module thời gian thực
Cách nối dây:
- Đối với Module DS1307 kết nối với Arduino Uno R3 như hình vẽ :
- Đối với LCD kết nối với chân của Arduino Uno R3 tương ứng như sau :
- chân RS ----> chân 2
- chân E -----> chân 4
- chân D4 ------> chân 9
- chân D5 ------> chân 10
- chân D6 ------> chân 11
- chân D7 ------> chân 12
- Thư viện cần có
-
Code test với arduino: Tại đây