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

正文內(nèi)容

畢業(yè)設(shè)計——基于單片機的數(shù)字溫度計設(shè)計-畢業(yè)設(shè)計-資料下載頁

2025-01-19 04:20本頁面

【導(dǎo)讀】和裝置顯得尤為重要。采用單片機對溫度進行控制,不僅電路簡單,控制方便,更。重要的是采集數(shù)據(jù)更為準(zhǔn)確,很好的滿足了生活中的許多要求。單片機為核心部件,外加溫度采集電路、顯示電路和越限報警等電路。本設(shè)計既可以對當(dāng)前溫度進行檢測又可以對溫度進行數(shù)碼顯示,采用四位。數(shù)碼管顯示方式具有高的顯示精度,若超越極限溫度則觸發(fā)蜂鳴器報警。強大的Keil軟件和DXP進行程序的編寫和原理圖繪制。

  

【正文】 21. [8] 黃宇飛,吳江 .單片機單總線技術(shù) [J].單片機與嵌入式系統(tǒng)應(yīng)用, 2021, 12( 1): 3236. [9] 胡振宇,劉魯源,杜振輝 .DS18B20 接口的 C 語言程序設(shè)計 [J].單片機與嵌入式系統(tǒng)應(yīng)用,2021, 51( 3): 4347. [10] 趙娜, 趙剛,于珍珠 .基于 51 單片機的溫度測量系統(tǒng) [J].微計算機信息, 2021,1( 2):146148. [11] Katsuhiko Control Engineering[M].Publishing house of electronics industry,2021. [12] G Jiang M Zhang, X Xie, S on temperature control of DS18B20[J].Control Engineering of China, 2021. 西京學(xué)院本科畢業(yè)設(shè)計(論文) 21 附錄 設(shè)計原理圖 西京學(xué)院本科畢業(yè)設(shè)計(論文) 22 設(shè)計編程 include include define uchar unsigned char define uint unsigned int unsigned char SZ[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。 uchar data temp_data[2]={0x00,0x00}。 uchar data display[5]={0x00,0x00,0x00,0x00,0x00}。 uchar aa,bb,i,j。 sbit D1=P1^0。sbit D2=P1^1。 sbit D3=P1^2。sbit D4=P1^3。 sbit D5=P1^4。sbit D6=P1^5。 sbit D7=P1^6。sbit D8=P1^7。 sbit CLK=P2^0。sbit AB=P2^1。 sbit COM1=P2^2。sbit COM2=P2^3。 sbit COM3=P2^4。sbit COM4=P2^5。 sbit sound=P3^1。 sbit DQ=P3^6。 void delay1() { unsigned char i,j,k。 for(i=1。i0。i) for(j=10。j0。j) for(k=240。k0。k)。 } void delayms(uint xms) { uint i,j。 for(i=xms。i0。i){ for(j=110。j0。j) { } } } void senddata(unsigned char num) { unsigned char c。 for(c=0。c8。c++) { CLK=0。 西京學(xué)院本科畢業(yè)設(shè)計(論文) 23 AB=numamp。0x01。 num=1。 CLK=1。 } } void delay(uint t) { for (。t0。t)。 } void ow_reset(void) { char presence=1。 while(presence) { while(presence) { DQ=1。_nop_()。_nop_()。//從高拉倒低 DQ=0。 delay(55)。 //550 us DQ=1。 delay(7)。 //66 us presence=DQ。 //presence=0 復(fù)位成功 ,繼續(xù)下一步 } delay(50)。 //延時 500 us presence=~DQ。 } DQ=1。 //拉高電平 } // // /****************DS18B20 寫命令函數(shù) ************************/ //向 1WIRE 總線上寫 1 個字節(jié) void write_byte(uchar val) { uchar i。 for(i=8。i0。i) { DQ=1。_nop_()。_nop_()。 //從高拉倒低 DQ=0。_nop_()。_nop_()。_nop_()。_nop_()。 //5 us DQ=valamp。0x01。 //最低位移出 delay(7)。 //66 us val=val/2。 //右移 1 位 西京學(xué)院本科畢業(yè)設(shè)計(論文) 24 } DQ=1。 delay(1)。 } // /****************DS18B20 讀 1 字節(jié)函數(shù) ************************/ //從總線上取 1 個字節(jié) uchar read_byte(void) { uchar i。 uchar value=0。 for(i=8。i0。i) { DQ=1。_nop_()。_nop_()。 value=1。 DQ=0。_nop_()。_nop_()。_nop_()。_nop_()。 //4 us DQ=1。_nop_()。_nop_()。_nop_()。_nop_()。 //4 us if(DQ)value|=0x80。 delay(7)。 //66 us } DQ=1。 return(value)。 } // /****************讀出溫度函數(shù) ************************/ // void read_temp() { int x,y。 unsigned char g,s,first,second。 ow_reset()。 //總線復(fù)位 delay(20)。 write_byte(0xcc)。 //發(fā)命令 write_byte(0x44)。 //發(fā)轉(zhuǎn)換命令 ow_reset()。 delay(1)。 write_byte(0xcc)。 //發(fā)命令 write_byte(0xbe)。 temp_data[0]=read_byte()。 //讀溫度值的第字節(jié) temp_data[1]=read_byte()。 //讀溫度值的高字節(jié) /*if(temp_data[0]5amp。amp。temp_data[1]2){ sound=0。 }*/ display[4]=((temp_data[0]amp。0xf0)4)|((temp_data[1]amp。0x0f)4) 。 g=display[4]%10。 西京學(xué)院本科畢業(yè)設(shè)計(論文) 25 s=display[4]/10。 first=SZ[g]。 second=SZ[s]。 x=s*10+g。 if(x=30){ aa=0xfe。 for(i=0。i8。i++) { P1=aa。 aa=_crol_(aa,1)。 delayms(8)。 sound =0。 delayms(8)。 sound=1。 for(y=0。y5。y++) { COM1=0。 COM2=1。 senddata(first)。 delay1()。 COM1=1。 COM2=0。 senddata(second)。 delay1()。 } } } else if(x35){ /* bb=0xef。 for(j=0。j8。j++) { P1=bb。 bb=_cror_(bb,1)。 delayms(8)。 //sound =0。 delayms(8)。 sound=1。 */ P1=0Xff。 for(y=0。y5。y++) { COM1=0。 COM2=1。 senddata(first)。 delay1()。 COM1=1。 西京學(xué)院本科畢業(yè)設(shè)計(論文) 26 COM2=0。 senddata(second)。 delay1()。 } } } // /****************溫度數(shù)據(jù)處理函數(shù) ************************/ //二進制高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一字節(jié) ,這個 //字節(jié)的二進制轉(zhuǎn)換為十進制后 ,就是溫度值的百、十、個位值 /********************************************************/ void main() { ow_reset()。 //開機先轉(zhuǎn)換一次 write_byte(0xcc)。 //Skip ROM write_byte(0x44)。 while(1) { read_temp()。 aa=0xfe。 /* for(i=0。i7。i++) { P1=aa。 aa=_crol_(aa,1)。 delayms(5)。 sound =0。 delayms(5)。 sound=1。 } */ } }
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1