標(biāo)題: 大佬們ds1302模塊怎樣表示12進制? [打印本頁]

作者: Peterter    時間: 2024-5-27 19:39
標(biāo)題: 大佬們ds1302模塊怎樣表示12進制?
void ds_init(uchar *uRc)
{uchar i;
Write Ds1302 Byte(0x8e,0x00);
for(i=0;i<3;i++)
{
Write Ds1302 Byte(w[ i],uRc[ i]);
Write Ds1302 Byte(0x8e,0x80);
}
Write Ds1302 Byte(0x8e,0x80);
}
void ds_read(uchar *uRc)
{uchar i;
for(i=0;i<3;i++)
{
uRc[ i]=Read Ds1302 Byte(rli]);
}
uchar time[]={0x88,0x50,0x50}
我把下面這個time帶進去 時鐘顯示88


作者: donglw    時間: 2024-5-28 01:05
DS1302是一個實時時鐘芯片,可以提供秒、分、小時、日期、月、年等信息,并且還有軟年自動調(diào)整的能力,可以通過配置AM/PM來決定采用24小時格式還是12小時格式。
作者: yzwzfyz    時間: 2024-5-28 08:15
眉毛胡子一把抓了。
作者: zch5200    時間: 2024-5-28 08:25
DS1302的讀出來時分秒等字節(jié),不能直接當(dāng)數(shù)據(jù)拿來使用,它的個位和十位是單獨輸出的,字節(jié)的高四位是十位,低四位是個位,所以讀出來的數(shù)據(jù)還得處理。
作者: Peterter    時間: 2024-5-28 09:50
zch5200 發(fā)表于 2024-5-28 08:25
DS1302的讀出來時分秒等字節(jié),不能直接當(dāng)數(shù)據(jù)拿來使用,它的個位和十位是單獨輸出的,字節(jié)的高四位是十位, ...

怎么處理呀大佬

作者: Peterter    時間: 2024-5-28 09:52
我數(shù)碼管把0x88高八位/16 第八位%16了還是顯示88
作者: Peterter    時間: 2024-5-28 09:52
yzwzfyz 發(fā)表于 2024-5-28 08:15
眉毛胡子一把抓了。

這是什么意思

作者: zch5200    時間: 2024-5-28 16:27
Peterter 發(fā)表于 2024-5-28 09:50
怎么處理呀大佬

比如 讀到的 分鐘num    給變量 fen
fen =( (num>>4)&0x0f)*10 + (num&0x0f);
時分秒年月日每個都要這樣算下才能是真正的十進制的數(shù),給數(shù)碼管顯示就正常了
作者: Peterter    時間: 2024-5-28 18:48
zch5200 發(fā)表于 2024-5-28 16:27
比如 讀到的 分鐘num    給變量 fen
fen =( (num>>4)&0x0f)*10 + (num&0x0f);
時分秒年月日每個都要這 ...

哦哦謝謝我試試

作者: coody_sz    時間: 2024-5-29 17:10
可以軟件處理啊




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1