View Single Post
Old 05-06-2009, 07:21 PM   #15
Mr.Bi
Đệ tử 7 túi
 
Tham gia ngày: Jul 2007
Nơi Cư Ngụ: Đà Nẵng
Bài gửi: 188
:
Trích:
Nguyên văn bởi hailuabk View Post
Em chỉ còn thắc mắc chỗ lấy dữ liệu ra ở con DS1307 rồi chuyển qua mã BCD sau đó lại đưa dữ liệu vào led 7 đoạn.Tại sao phải chuyển qua BCD mà không phải là số thập phân luôn
em hỉu sai !Khi nạp vào con RTC 1307 , ta phải chuyển thành mã BCD .
vd : mún nạp ngày = 27 thì phải nạp 0x27 .

Còn khi đọc ra , dữ liẹu ta thu đc là số có dạng mã BCD , ta phải chuyển wa thành số thập phân để dễ làm việc khi xuất led

vd : ngay = read_rtc(0x04) ; // ngày = 0x27 <-- số này là số BCD
bước tiếp theo ngay = (ngay>>4)*10 + (ngay&0x0F) // lúc này ngày = 27 <-- số thập phân đây
Mr.Bi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn