[VI ĐIỀU KHIỂN PIC] - BÀI 13: ĐỒNG HỒ THỜI GIAN THỰC (DS1307 + PIC16F877A + CCS) - BeeLab

Sunday, June 11, 2017

[VI ĐIỀU KHIỂN PIC] - BÀI 13: ĐỒNG HỒ THỜI GIAN THỰC (DS1307 + PIC16F877A + CCS)


Trong file download bên dưới có nhiều project về DS1307 và I2C với PIC16F877A VÀ 8051 các bạn download về tham khảo !
1. Giới thiệu:
IC thời gian thực (RTC) DS1307 có thể đếm giờ, phút, giây, thứ, ngày tháng, năm. Giao tiếp với vi điều khiển thông qua chuẩn I2C, và đóng vai trò là slave khi kết nối đến Bus I2C này. Có thể đếm thời gian theo định dạng 24 giờ hoặc 12 giờ với chỉ thị AM/PM. Ngoài ra bên trong chíp có bộ dò phát hiện mất nguồn và tự động chuyển sang sử dụng nguồn Pin dự phòng.

2. Sơ đồ chân:

Trong đó:

ChânTênChức năng
1X1Kết nối đến thạch anh  32.768Khz làm nguồn dao động cho chip
2X2
3VBatKết nối đến cực dương của Pin dự phòng, có điện áp tiêu chuẩn khoảng 3V
4GNDKết nối đến mass
5SDAChân dữ liệu khi kết nối đến bus I2C
6SCLChân nhận xung clock đồng bộ khi kết nối bus I2C
7SQW/OUTNgõ xuất xung vuông, tần số có thể lập trình để thay đổi từ 1Hz, 4Khz, 8 Khz, 32 Khz
8VCCNguồn cấp chính, khoảng 5VDC
 3. Lấy thông tin về thời gian và lịch
Bảng 1 là địa chỉ của các thanh ghi RAM và thanh ghi RTC của DS 1307. Thanh ghi RTC có địa chỉ từ 00-07h. các thanh ghi RAM chiếm địa chỉ từ 08h - 3Fh
Các thông tin về thời gian và lịch thu được bằng cách đọc các byte trong thanh ghi tương ứng. Thời gian và lịch được thiết lập hoặc khởi tạo bằng cách viết các byte thanh ghi thích hợp. Lưu ý dữ liệu lưu thời gian chứa trong thanh ghi đều theo định dạng BCD. Thứ trong tuần thay đổi tại lúc nữa đêm, lưu dưới dạng con số (Ví dụ 1 là Chủ Nhật, 2 là Thứ hai, 3 là thứ 3 ...). Khi lần đầu tiên IC được cấp nguồn các thanh ghi thời gian và lịch reset về 01/01/00 01 00:00:00. (MM/DD/YY DOW HH:MM:SS)
LINK TẢI PROJEECT TẠI ĐÂY!