1024手机基地看电影,午夜福利视频导航,国产精品福利在线一区,亚洲欧美日韩另类成人,在线观看午夜日本理论片,成年超爽免费网站,国产精品成人免费,精品动作一级毛片,成人免费观看网站,97精品伊人久久大香蕉
標(biāo)題:
51單片機(jī)的DS18B20測(cè)溫程序帶12864顯示
[打印本頁]
作者:
不知所言
時(shí)間:
2017-6-28 14:51
標(biāo)題:
51單片機(jī)的DS18B20測(cè)溫程序帶12864顯示
51mcu做的DS18B20測(cè)溫源碼帶lcd12864液晶顯示,,,,,,,,,
0.png
(60.59 KB, 下載次數(shù): 33)
下載附件
2017-6-28 18:06 上傳
單片機(jī)源程序如下:
/*******************************************************************************
*
* 普中科技
--------------------------------------------------------------------------------
* 實(shí) 驗(yàn) 名 : 18B20溫度顯示試驗(yàn)
* 實(shí)驗(yàn)說明 : LCD1602顯示溫度值。
* 連接方式 : 見連接圖
* 注 意 :
*******************************************************************************/
#include <reg52.h>
#include "lcd.h"
#include "temp.h"
#include "juzhenkeys.h"
#include <caidan.h>
void LcdDisplay(int);
/*******************************************************************************
* 函數(shù)名 : main
* 函數(shù)功能 : 主函數(shù)
* 輸入 : 無
* 輸出 : 無
*******************************************************************************/
void main()
{
// lcd_init();
init(); //初始化LCD12864
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{
keys();
caidanfuzhi();
Lcd_Num1(3,0,Ds18b20ReadTemp());
Lcd_Display(3,5,"度");
// Delay1ms(1000);
}
}
/*******************************************************************************
* 函數(shù)名 : LcdDisplay()
* 函數(shù)功能 : LCD顯示讀取到的溫度
* 輸入 : v
* 輸出 : 無
*******************************************************************************/
//void LcdDisplay(int temp) //lcd顯示
//{
//
// unsigned char datas[] = {0,0,0,0,0}; //定義數(shù)組
// float tp;
// if(temp< 0) //當(dāng)溫度值為負(fù)數(shù)
// {
// weizhi(3,0); //寫地址 80表示初始地址
// LcdWriteData('-'); //顯示負(fù)
// //因?yàn)樽x取的溫度是實(shí)際溫度的補(bǔ)碼,所以減1,再取反求出原碼
// temp=temp-1;
// temp=~temp;
// tp=temp;
// temp=tp*0.0625*100+0.5;
// //留兩個(gè)小數(shù)點(diǎn)就*100,+0.5是四舍五入,因?yàn)镃語言浮點(diǎn)數(shù)轉(zhuǎn)換為整型的時(shí)候把小數(shù)點(diǎn)
// //后面的數(shù)自動(dòng)去掉,不管是否大于0.5,而+0.5之后大于0.5的就是進(jìn)1了,小于0.5的就
// //算由?.5,還是在小數(shù)點(diǎn)后面。
//
// }
// else
// {
// weizhi(3,0); //寫地址 80表示初始地址
// LcdWriteData('+'); //顯示正
// tp=temp;//因?yàn)閿?shù)據(jù)處理有小數(shù)點(diǎn)所以將溫度賦給一個(gè)浮點(diǎn)型變量
// //如果溫度是正的那么,那么正數(shù)的原碼就是補(bǔ)碼它本身
// temp=tp*0.0625*100+0.5;
// //留兩個(gè)小數(shù)點(diǎn)就*100,+0.5是四舍五入,因?yàn)镃語言浮點(diǎn)數(shù)轉(zhuǎn)換為整型的時(shí)候把小數(shù)點(diǎn)
// //后面的數(shù)自動(dòng)去掉,不管是否大于0.5,而+0.5之后大于0.5的就是進(jìn)1了,小于0.5的就
// //算加上0.5,還是在小數(shù)點(diǎn)后面。
// }
// datas[0] = temp / 10000;
// datas[1] = temp % 10000 / 1000;
// datas[2] = temp % 1000 / 100;
// datas[3] = temp % 100 / 10;
// datas[4] = temp % 10;
//
// weizhi(3,1); //寫地址 80表示初始地址
// LcdWriteData(0x30+datas[0]); //百位
//
// weizhi(3,2); //寫地址 80表示初始地址
// LcdWriteData(datas[1]+0x30); //十位
……………………
…………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
DS18B20-LCD.zip
(101.47 KB, 下載次數(shù): 50)
2017-6-28 14:51 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1