資源簡(jiǎn)介
使用STC12C5A60S2驅(qū)動(dòng)1602顯示溫度,下載到不同的開(kāi)發(fā)板只需修改1602、鍵盤以及DS18B20對(duì)應(yīng)驅(qū)動(dòng)管教即可;
附件是整個(gè)工程,修改驅(qū)動(dòng)管腳編譯后即可使用

代碼片段和文件信息
/*********************************************************************************************************
**?工程功能?:溫度計(jì)DS18B20
**?工程作者?:Blue?Sky?Teams——WCW
**?工程版本?:V1.0
*********************************************************************************************************/
#include
#include
#include
#define?uint?unsigned?int
uint?TPH;???????????????????????????//存放溫度值的高字節(jié)
uint?TPL;???????????????????????????//存放溫度值的低字節(jié)
uint?TP; //存放溫度值的十進(jìn)制數(shù)
/*********************************************************************************************************
**?函數(shù)功能?:延時(shí)函數(shù)
**?函數(shù)說(shuō)明?:利用軟件延時(shí),占用CPU,經(jīng)調(diào)試最小單位大約為1ms
**?入口參數(shù)?:time:需要延時(shí)的時(shí)間,單位ms
**?出口參數(shù)?:無(wú)
*********************************************************************************************************/
void?Delay_ms(uint?time)
{
uint?ij;
for(i?=?0;i? for(j?=?0;j?930;j?++);
}
void?main()
{??
LCD_1602_Init();? //液晶顯示前進(jìn)行初始化
???while(1)
???{
Write_1602_String(“DS18B20?Temp:“0X80);
????DS18B20_Reset();????????????????//設(shè)備復(fù)位
????DS18B20_WriteByte(0xCC);????????//跳過(guò)ROM命令
????DS18B20_WriteByte(0x44);????? //開(kāi)始轉(zhuǎn)換命令?????????????
Delay_ms(1000); ????//延時(shí)等待轉(zhuǎn)換完成?
????DS18B20_Reset();????????????????//設(shè)備復(fù)位
????DS18B20_WriteByte(0xCC);????????//跳過(guò)ROM命令??
????DS18B20_WriteByte(0xBE);????????//讀暫存存儲(chǔ)器命令
????TPL?=?DS18B20_ReadByte();???????//讀溫度低字節(jié)
????TPH?=?DS18B20_ReadByte();???????//讀溫度高字節(jié)
TP=((TPH<<8)|TPL)*0.0625; //將讀取的數(shù)據(jù)轉(zhuǎn)換成十進(jìn)制數(shù)
//Write_1602_String(&TP0X80);
Write_Num(TP0x80+13); //顯示讀到數(shù)據(jù)的整數(shù)部分,小數(shù)部分可自行編寫程序顯示
Write_1602_String(“success!“0x80+0x40);???
???}
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????3271??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\DS18B20.h
?????文件???????3112??2012-03-18?11:29??實(shí)驗(yàn)15?溫度計(jì)DS18B20\key_scan.h
?????文件???????9572??2012-03-12?16:32??實(shí)驗(yàn)15?溫度計(jì)DS18B20\LCD1602.h
?????文件???????1872??2012-03-12?16:32??實(shí)驗(yàn)15?溫度計(jì)DS18B20\main.c
?????文件???????3797??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\main.LST
?????文件??????14768??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\main.OBJ
?????文件???????6376??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\STARTUP.A51
?????文件??????10761??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\STARTUP.LST
?????文件????????750??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\STARTUP.OBJ
?????文件???????9713??2012-03-12?16:32??實(shí)驗(yàn)15?溫度計(jì)DS18B20\STC12C5A60S2.h
?????文件??????14447??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15
?????文件???????4424??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15.hex
?????文件?????????58??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15.lnp
?????文件??????17953??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15.M51
?????文件???????1181??2012-03-17?13:13??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15.Opt
?????文件????????413??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15.plg
?????文件???????2147??2012-03-14?18:52??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15.Uv2
?????文件???????1181??2012-03-17?13:12??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15_Opt.Bak
?????文件??????????0??2012-03-14?18:51??實(shí)驗(yàn)15?溫度計(jì)DS18B20\test15_Uv2.Bak
?????目錄??????????0??2012-04-29?10:39??實(shí)驗(yàn)15?溫度計(jì)DS18B20
-----------?---------??----------?-----??----
???????????????105796????????????????????20
評(píng)論
共有 條評(píng)論