




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選文檔/按下K1顯示序列碼,按下K2顯示實(shí)時(shí)溫度(本實(shí)驗(yàn)適合初學(xué)者調(diào)試?yán)斫?8B20用, )#include <reg52.h>/52單片機(jī)#define uchar unsigned char#define uint unsigned int /uint 無符號整數(shù)sbit DQ=P22; /單總線(與自己的開發(fā)板相匹配) uint temp; /溫度uchar flag1; /符號 sbit rs = P10; / 控制LCD (與自己的開發(fā)板相匹配) sbit rw = P11; / 控制LCD (與自己的開發(fā)板相匹配) sbit lcden = P25; /led使能端(
2、與自己的開發(fā)板相匹配)sbit K1=P34; /獨(dú)立按鍵k1(與自己的開發(fā)板相匹配)sbit K2=P35; /獨(dú)立按鍵k2 (與自己的開發(fā)板相匹配)sbit du=P26;/位選(防LED燈亂閃)(與自己的開發(fā)板相匹配)sbit we=P27; /段選(防LED燈亂閃) (與自己的開發(fā)板相匹配)uchar a,b,c,d,e,f,g,h,A1,A2,A2t,A3,A4,A5;/寫在LCD上的字符,具體在程序中看 void delay(uint count) /延遲程序 (200*count)/8 毫秒 uint i; while(count) i=200; while(i>0) i-
3、; count-; void DQreset(void) /初始化,主機(jī)將DQ拉高 (上升沿) (從機(jī)檢測到上升沿后延時(shí)15到60毫秒,從機(jī)拉低總線60到240毫秒表示“我”在線) /從機(jī)的工作是自動(dòng)完成的 uint i; DQ=0; i=103; while(i>0)i-; DQ=1; i=4; while(i>0)i-; bit tmpreadbit() /從18b20讀1位 uint i; bit dat; DQ=0;i+; DQ=1;i+;i+; dat=DQ; i=8;while(i>0)i-; return (dat); /返回datuchar tmpread()
4、 /從18b20讀1字節(jié) uchar i,j,dat; dat=0; for(i=1;i<=8;i+) j=tmpreadbit(); dat=(j<<7)|(dat>>1); return(dat);void tmpwritebyte(uchar dat) /18b20寫1bit (只能用于寫命令) uint i; uchar j; bit testb; for(j=1;j<=8;j+) /一位一位地傳 testb=dat&0x01; dat=dat>>1; if(testb) DQ=0; i+;i+; DQ=1; i=8;while(
5、i>0)i-; else DQ=0; i=8;while(i>0)i-; DQ=1; i+;i+; void tmpchange(void) /溫度轉(zhuǎn)換子程序 DQreset(); delay(1); tmpwritebyte(0xcc); /CCH跳過ROM tmpwritebyte(0x44); /44H溫度轉(zhuǎn)換uint tmp() /讀取溫度子程序 float tt; uchar a,b; DQreset(); /無論什么命令, 首先都要發(fā)起初始化 delay(1); tmpwritebyte(0xcc); /跳過ROM(本實(shí)驗(yàn)中實(shí)驗(yàn)板上只連接一塊18B20) tmpwrit
6、ebyte(0xbe); /讀便簽存儲器(溫度以二進(jìn)制儲存于BEH) a=tmpread();/a為低八位 b=tmpread();/b為高八位 temp=b; temp<<=8; temp=temp|a; tt=temp*0.0625; /二進(jìn)制乘0.0625為十進(jìn)制 temp=tt*1000; /精度為0.001 return temp;void LCD_WriteCom(uchar com)/LCD寫入命令 rs = 0;rw = 0; P0 = com; delay(5); lcden = 0; delay(5); lcden = 1; delay(5); lcden =
7、0; void LCD_WriteData(uchar dat)/LCD寫入數(shù)據(jù) rs = 1; rw = 0; lcden = 0; P0 = dat; delay(5); lcden = 1; delay(5); lcden = 0; delay(5);void LCD_Init() /LCD初始化 LCD_WriteCom(0x38); delay(15); LCD_WriteCom(0x08); delay(3); LCD_WriteCom(0x01); delay(3); LCD_WriteCom(0x06); delay(3); LCD_WriteCom(0x0c); void D
8、isplay18B20Rom(char Rom) /display rom uchar h,l; l = Rom & 0x0f; h = Rom & 0xf0; h >>= 4; if( ( h >= 0x00 )&&( h <= 0x09 ) ) LCD_WriteData(h+0x30); else LCD_WriteData(h+0x37); if( ( l >= 0x00 )&&( l <= 0x09 ) ) LCD_WriteData(l+0x30); else LCD_WriteData(l+0x3
9、7); void temshow() /溫度顯示/LCD_WriteCom(0x01); 寫命令不能放在此位置DQreset(); /無論什么命令, 首先都要發(fā)起初始化tmpchange(); /溫度轉(zhuǎn)換(相當(dāng)于讀溫度前的初始化)temp=tmp();/讀溫度A1=temp/10000;A2=(temp%10000)/1000;A3=(temp%10000)%1000)/100;A4=(temp%10000)%1000)%100)/10;A5=(temp%10000)%1000)%100)%10;LCD_WriteCom(0x80);LCD_WriteData('t') ;LC
10、D_WriteData('e');LCD_WriteData('m') ;LCD_WriteData('p') ;LCD_WriteData(':');LCD_WriteCom(0x80+0x40);LCD_WriteData('+') ;LCD_WriteData('0'+A1);LCD_WriteData('0'+A2) ;LCD_WriteData('.') ;LCD_WriteData('0'+A3);LCD_WriteData('0&
11、#39;+A4);LCD_WriteData('0'+A5);void romshow()/序列碼顯示LCD_Init();rw = 0;DQreset();/無論什么命令, 首先都要發(fā)起初始化delay(1);tmpwritebyte(0x33);/讀ROM,允許主機(jī)讀出DS18B20的64為二進(jìn)制序列碼(僅限于總線上存在單只DS18B20) delay(1); a = tmpread(); b = tmpread(); c = tmpread(); d = tmpread(); e = tmpread(); f = tmpread(); g = tmpread(); h =
12、 tmpread(); LCD_WriteCom(0x80);/LCD第一行開始LCD_WriteData('n');LCD_WriteData('u');LCD_WriteData('m');LCD_WriteData('b');LCD_WriteData('e');LCD_WriteData('r'); LCD_WriteCom(0x80+0x40);/lCD第二行開始 Display18B20Rom(a); Display18B20Rom(b); Display18B20Rom(c); Display18B20Rom(d); Display18B20Rom(e); Display18B20Rom(f); Display18B20Rom(g); Displa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城市交通規(guī)劃與交通信息管理重點(diǎn)基礎(chǔ)知識點(diǎn)
- 2025年軟考網(wǎng)絡(luò)管理員逆襲計(jì)劃試題及答案
- 2024年海南省知識產(chǎn)權(quán)局下屬事業(yè)單位真題
- 2024年海南省民政廳下屬事業(yè)單位真題
- 2024年山東省淡水漁業(yè)研究院招聘筆試真題
- 數(shù)據(jù)庫與網(wǎng)絡(luò)管理關(guān)系試題及答案
- 2024年黃山新區(qū)婦產(chǎn)醫(yī)院招聘筆試真題
- 2024年北海市合浦縣司法局招聘筆試真題
- 行政法學(xué)策劃能力試題及答案
- 未來科技變革下的公司戰(zhàn)略與風(fēng)險(xiǎn)預(yù)測試題及答案
- TSG 07-2019《特種設(shè)備生產(chǎn)和充裝單位許可規(guī)則》
- 新人教版數(shù)學(xué)四年級下冊全冊課本練習(xí)題可編輯可打印
- 山東省義務(wù)教育必修地方課程小學(xué)四年級上冊《環(huán)境教育》教案-全冊
- 藝術(shù)概論智慧樹知到答案2024年寧波財(cái)經(jīng)學(xué)院
- 社會單位滅火和應(yīng)急疏散預(yù)案編制及實(shí)施導(dǎo)則知識培訓(xùn)
- 中國高血壓防治指南(2024年修訂版)解讀(總)
- 創(chuàng)業(yè)管理-易學(xué)實(shí)+用的創(chuàng)業(yè)真知智慧樹知到期末考試答案章節(jié)答案2024年天津工業(yè)大學(xué)
- 低代碼開發(fā)智慧樹知到期末考試答案章節(jié)答案2024年南華大學(xué)
- 食堂意見反饋制度
- 成都市2022級(2025屆)高中畢業(yè)班摸底測試(零診) 語文試卷(含答案)
- 老舊小區(qū)改造管道開挖方案
評論
0/150
提交評論