|
發布時間: 2022-5-8 14:01
正文摘要:由于本程序使用了STC12C5A60S2單片機,最好不要使用太高的晶振,不然DS18B20延時部分太難調試(搞不好會顯示00.0度),一般12M以下相對好些. 制作出來的實物圖如下: 單片機源程序如下: //****************** ... |
|
我用串口顯示秒,部分出現了亂碼,是什么原因,開始時間為0秒 unsigned int ReadTime() //接收并且轉換為十進制 { dat = ReadDs1302(0x81) ; damp = (int)dat / 16*10 + (int)dat %16; return damp; } void main() { uart_init(); SetTime(); //設置開始時間 while(1) { sec = ReadTime(); printf("%d ",sec); Delay100ms(10); } } 例如: 1 0 3 0 1 2 7 0 1 0 1 0 3 0 1 2 7 8 9 0 1 0 3 0 1 2 7 0 1 10 11 8 13 8 9 10 17 18 19 0 1 0 |
| 無事再來頂一下 |
| 本程序已實測無BUG,若溫度不顯示,要按你的晶振來調DS18B20讀寫部分的延時,本程序使用STC12C5A60S2單片機和6M晶振實測 |