|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
|
Ðiều Chỉnh | Xếp Bài |
18-09-2007, 02:21 PM | #11 |
Đệ tử 6 túi
Tham gia ngày: Jun 2005
Bài gửi: 141
: |
Ban đầu, ds1307 chưa có giá trị nào cả trong các thanh ghi. Vì vậy, việc đầu tiên là phải nạp một giá trị bất kỳ cho các thanh ghi. Chương trình sau sẽ thực hiện công việc này. Sau này , bạn có thể dùng 4 nút bấm để hiệu chỉnh lại thời gian cho đúng với thực tế.
Code:
void INIT_MAIN() { // Khoi tao truyen thong I2C I2C_Init(100000); // Kích hoạt môddun truyền thông i2c với tốc độ baud là 100kHz // Khoi tao DS1307 I2C_Start(); // điều kiện start I2C_Wr(0xD0); // truyền địa chỉ của ds1307 và chọn ghi dữ liệu lên ds1307 I2C_Wr(0x00); // Truyền địa chỉ ô nhớ đầu tiên của ds1307 I2C_Wr(0x13); // Khoi tao gia tri ban dau cho thanh ghi giây I2C_Wr(0x03); // Khoi tao gia tri ban dau cho thanh ghi phút I2C_Wr(0x02); // Khoi tao gia tri ban dau cho thanh ghi giờ I2C_Wr(0x03); // Khoi tao gia tri ban dau cho thanh ghi thứ I2C_Wr(0x05); // Khoi tao gia tri ban dau cho thanh ghi ngày I2C_Wr(0x03); // Khoi tao gia tri ban dau cho thanh ghi tháng I2C_Wr(0x03); // Khoi tao gia tri ban dau cho thanh ghi năm I2C_Wr(0x90); // đặt cấu hình cho thanh ghi điều khiển, sử dụng xung 1Hz. I2C_Stop(); // Điều kiện stop } Code:
void MAIN() { INIT_MAIN(); } thay đổi nội dung bởi: namqn, 19-09-2007 lúc 02:48 AM. Lý do: định dạng lại code |
|
|