freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的數(shù)字溫度計(jì)控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)范文模板參考資料-閱讀頁

2024-12-27 09:40本頁面
  

【正文】 在,但是應(yīng)注意不能無限的進(jìn)行等待,不然會(huì)使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)控制)。 ( 8) 將數(shù)據(jù)線再次拉高到高電平 “1” 后結(jié)束。 對(duì)于 DS18B20 的讀時(shí)隙是從主機(jī)把單總線拉低之后,在 15 秒之內(nèi)就得釋放單總線,以讓 DS18B20 把數(shù)據(jù)傳輸?shù)絾慰偩€上。 ( 1)將數(shù)據(jù)線拉高 “1” 。 ( 3)將數(shù)據(jù)線拉低 “0” 。 ( 5)將數(shù)據(jù)線拉高 “1” 。 ( 7)讀數(shù)據(jù)線的狀態(tài)得到 1 個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。 DS18B20 的寫時(shí)序 : 對(duì)于 DS18B20 的寫時(shí)序仍然分為寫 0時(shí)序和寫 1時(shí)序兩個(gè)過程。 ( 1) 數(shù)據(jù)線先置低電平 “0” 。 ( 3) 按從低位到高位的順序發(fā)送字節(jié)(一次只發(fā)送一位)。 ( 5) 將數(shù)據(jù)線拉到高電平。 ( 7) 最后將數(shù)據(jù)線拉高。 二、 Y1 與 c c2 給單片機(jī)提供晶振信號(hào),這一部分可以說是單片機(jī)的心臟。 四、 p0 口是數(shù)據(jù)口,連接數(shù)碼管。 六、復(fù)位電路, s3 為復(fù)位 開關(guān)。 八、顯示電路, p0 口是數(shù)據(jù)口連接數(shù)碼管的段碼,數(shù)碼管采用共陽連接, p2 口是控制線。 圖 7 主程序流程圖 圖 8讀溫度流程圖 讀出溫度子程序的主要功能 是讀出 RAM 中的 9字節(jié),在讀出時(shí)需進(jìn)行 CRC 校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。溫度轉(zhuǎn)換命令 子程序流程圖如上圖,圖 9所示 計(jì)算溫度子程序 計(jì)算溫度子程序?qū)?RAM中讀取值進(jìn)行 BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖 10所示。 ucharcode tab[]={0xc0,0xf9,0xa4,0xbo,0x99,0x92,0x82,oxf8,0x80,0x90,0xff,0xbf}。 //子碼表 char tempmax=6C。 //30 的十六進(jìn)制為 1C //延時(shí)子程序、延時(shí) 1ms void mdelay(uint m) { uchar i。m0。i0。 } // 延時(shí)子程序 15微秒 void delay(uchar k) { do{ _nop_()。 開始 溫度零下 ? 溫度值取補(bǔ)碼置“ — ”標(biāo)志 計(jì)算小數(shù)位溫度 BCD值 計(jì)算整數(shù)位溫度 BCD值 結(jié)束 置“ +”標(biāo)志 N Y 溫度數(shù)據(jù)移入顯示寄存器 十位數(shù) 0? 百位數(shù) 0? 十位數(shù)顯示符號(hào)百位數(shù)不顯示 百位數(shù)顯示數(shù)據(jù)(不顯示符號(hào)) 結(jié)束 N N Y Y 山東英才學(xué)院畢業(yè)論文設(shè)計(jì) 16 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 } //單總線的復(fù)位,器件不存在輸出 1器件正常輸出 0 bit reset( ) { bit F。 _nop_()。 =0。 =1。 delay(16)。 =1。 } else { delay(15)。 // 應(yīng)答信號(hào)返回 } //從單總線送出 1B、輸入要寫入的字節(jié) void write( uchar x) { bir R。 for(i=8。i) //寫字節(jié)、 1位一各時(shí)序 { R=xamp。 if(R) { =0。 _nop_()。 delay(8)。 _nop_()。 delay(8)。 } } //從單總線讀 1B子程序 read ( ) { uchar t,i,v。i0。 _nop_()。 // 降低 電平開始脈沖 delay(1)。 //拉高 脈沖 delay(3)。 =1。 v=v1。} }return(v)。 bit flag。 flag=reset( )。 write(0xcc)。 //開始轉(zhuǎn)換 c[0]=read( )。 t=c[0]+c[1]*256。 } Init 0( ) interrupt 0 { uchar i=5。 disbuf[3]=0x0a。 disbuf[1]=tempmax%100/10。 for(i。i) { tempdsp( )。 if( P3^3==0 ) { tempmin++。 disbuf[2]=tempmin/100。 disbuf[0]=tempmin%10。j0。 } } } void waring ( ) { uchari, j,k=5。 for(j=500。j) for(i=124。i)。} } Iint ( ) { IT0=1。 EA=1。 EX1=1。 float m。 山東英才學(xué)院畢業(yè)論文設(shè)計(jì) 19 disbuf[3]=0x0b。 disbuf[1]=(m%100/10)。 } else { m=m*。 disbuf[2]=m%1000/100。 disbuf[0]=m%10/1。 for(k=0。k++) { if(k=1) { P2^1=0。 P0=tab[temp]amp。0x7f。 P2^1=1。 } else { P2=xtab[k]。 P0=tab[temp]。 P0=0xff。 } } } // 主函數(shù) main( )。 Init( )。 if(valuetempmax||valuetempmin) waring( )。 //調(diào)用溫度轉(zhuǎn)換子程序 tempdsp( )。過程當(dāng)中用到的單片機(jī)作為控制內(nèi)核,四段數(shù)碼管作為顯示部分,及其他電路,共同組成了我的成果數(shù)字溫度計(jì)。其次我們設(shè)計(jì)了它的靈魂軟件電路,通過用 C 語言編程實(shí)現(xiàn)對(duì)器件的控制。 山東英才學(xué)院 畢業(yè)論文 設(shè)計(jì) 22 參考文獻(xiàn) [1] 李朝青 .單片機(jī)原理及接口技術(shù)(簡明修訂版) .杭州:北京航空航天大學(xué)出版社, 1998 [2] 李廣弟 .單片機(jī)基礎(chǔ)[M] .北京:北京航空航天大 學(xué)出版社, 1994 [3] 閻石 .數(shù)字電子技術(shù)基礎(chǔ)(第三版) . 北京:高等教育出版社, 1989 [4] 廖常初 .現(xiàn)場總線概述 [ J] .電工技術(shù), 1999. [5] 新穎電子模塊應(yīng)用手冊 . 北京:機(jī)械工業(yè)出版社, 2021.
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1