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

正文內(nèi)容

基于單片機(jī)的溫度警報(bào)系統(tǒng)的設(shè)計(jì)論文(參考版)

2025-06-30 19:42本頁面
  

【正文】 }} }}/*****END*****/。x=0。 if(xiaxianshangxian)xiaxian=shangxian。 do{}while(ADD==0)。 if(xiaxian0)xiaxian=0。 do{}while(DEC==0)。}}else if(set_st==2){ BEEP=0。x=0。 if(shangxian99)shangxian=99。 do{}while(ADD==0)。 if(shangxianxiaxian)shangxian=xiaxian。 do{}while(DEC==0)。 //報(bào)警檢測}else if(set_st==1){ BEEP=0。 Disp_Temperature()。 //關(guān)閉外部中斷0 EX1=0。 if(set_st2)set_st=0。x=0。 do{}while(SET==0)。z++){Disp_init()。for(z=0。check_wendu()。ET0=1。 //初始化定時器EA=1。}/*****主函數(shù)*****/void main(void){ uint z。beep_st==1))BEEP=1。beep_st==1)||(mxiaxianamp。}if((m=shangxianamp。 //關(guān)閉顯示}/*****報(bào)警子程序*****/void Alarm(){if(x=10){beep_st=~beep_st。Delay(200)。else if(set_st==2)P2 =0x3d。Delay(200)。P2 =LEDData[baojing/10]。 //顯示十位P0 = 0xef。Delay(200)。 //關(guān)閉顯示}/*****顯示報(bào)警溫度子程序*****/Disp_alarm(uchar baojing){P2 =0x3c。Delay(300)。P2 =LEDData[m/10]。 //顯示小數(shù)點(diǎn)P0 = 0xfb。P2 =LEDData[m%10]。 //顯示個位P0 = 0xef。Delay(300)。 //關(guān)閉顯示}/*****顯示溫度子程序*****/Disp_Temperature() //顯示溫度{P2 =0x3c。Delay(200)。Delay(200)。Delay(200)。Delay(200)。} //設(shè)置溫度顯示上限 }/*****顯示開機(jī)初始化等待畫面*****/Disp_init() {P2 = 0xf7。} //設(shè)置溫度顯示上限if(m99){m=99。 //計(jì)算得到小數(shù)位if(m0){m=0。 //計(jì)算得到個位數(shù)字m=c/10。 //獲取溫度值并減去DS18B20的溫漂誤差a=c/100。}/*****讀取溫度*****/void check_wendu(void){uint a,b,c。TL0=0x00。TL0=0x00。}/*****初始化定時器0*****/void InitTimer(void){TMOD=0x1。 //下限報(bào)警溫度,默認(rèn)值為38uchar code LEDData[]={0x28,0xeb,0x32,0xa2,0xe1,0xa4,0x24,0xea,0x20,0xa0}。 //狀態(tài)標(biāo)志signed char shangxian=30。 //溫度值全局變量uchar n。 //小數(shù)點(diǎn)uchar x=0。 //閃爍間隔標(biāo)志bit beep_st。從這次的課程設(shè)計(jì)中,我真真正正的意識到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識用到實(shí)際當(dāng)中,不僅使我真正的學(xué)會了數(shù)字溫度計(jì)的設(shè)計(jì),而且我相信通過這次的學(xué)習(xí)我能夠達(dá)到舉一反三的效果,同時這次的不足之處是在有些細(xì)節(jié)方面剛開始做的很不詳細(xì),我想原因在于自己平時對自己的學(xué)習(xí)要求的不夠嚴(yán)格,才造成遇到一些問題顯得驚慌失措,在日后我會克服這些缺點(diǎn)的。首先設(shè)計(jì)的是它的硬件電路,最重要的部分是89S52控制內(nèi)核,所有的數(shù)據(jù)處理都是采用的單片機(jī),其次是DS18B20溫度采集電路,其他還有晶振電路,復(fù)位電路,報(bào)警點(diǎn)及上下限溫度調(diào)整電路。經(jīng)過四年的學(xué)習(xí),終于完成了我的溫度報(bào)警系統(tǒng)的設(shè)計(jì),雖然沒有完全達(dá)到設(shè)計(jì)要求,但從心底里說,還是比較高興的。另外,如果把本設(shè)計(jì)方案擴(kuò)展為多點(diǎn)溫度控制,加上上位機(jī),則可以實(shí)現(xiàn)遠(yuǎn)程溫度監(jiān)控系統(tǒng),將具有更大的應(yīng)用價值。5 結(jié)論本文詳細(xì)講述了系統(tǒng)設(shè)計(jì)方案,并給出了相關(guān)程序流程。 按鍵處理問題 由于按鍵采用的是機(jī)械按鍵,會發(fā)生抖動,所以程序中要加延時,去抖動。分別對應(yīng)0 1 2 3 4 5 6 7 8 9.4 調(diào)試過程 ,b,c,d,e,f,g相連,所以需要重新編碼,因?yàn)橛玫氖枪碴枖?shù)碼管,所以數(shù)據(jù)端低電平亮,故LEDData[]={0x28,0xeb,0x32,0xa2,0xe1,0xa4,0x24,0xea,0x20,0xa0}。P0 = 0xff。 //上限H、下限L標(biāo)示P0 = 0xbf。if(set_st==1)P2 =0x8c。 //顯示百位P0 = 0xef。Delay(200)。P2 =LEDData[baojing%10]。 //顯示CP0 = 0xfe。P0 = 0xff。 //顯示百位P0 = 0xbf。Delay(300)。 //顯示十位DIAN =0。Delay(300)。P2 =LEDData[n]。 //顯示CP0 = 0xfe。} //設(shè)置溫度顯示上限 }讀取的18B20程序需要轉(zhuǎn)換出要顯示的溫度值。} //設(shè)置溫度顯示上限if(m99){m=99。 //計(jì)算得到小數(shù)位if(m0){m=0。 //計(jì)算得到個位數(shù)字m=c/10。 //獲取溫度值并減去DS18B20的溫漂誤差a=c/100。發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)溫度轉(zhuǎn)換開始命令 結(jié)束 圖322 溫度轉(zhuǎn)換流程圖 讀取溫度程序 /*****讀取溫度*****/void check_wendu(void){uint a,b,c。讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯時不進(jìn)行溫度數(shù)據(jù)的改寫。 //放大10倍輸出并四舍五入return(t)。tt=t*。t=8。 //讀低8位b=ReadOneChar()。 //跳過讀序號列號的操作WriteOneChar(0xBE)。 //啟動溫度轉(zhuǎn)換Init_DS18B20()。WriteOneChar(0xCC)。float tt=0。unsigned char b=0。 dat=1。 Delay_DS18B20(5)。 DQ = datamp。 i0。}/*****寫一個字節(jié)*****/void WriteOneChar(unsigned char dat){unsigned char i=0。 Delay_DS18B20(4)。 DQ = 1。i){ DQ = 0。for (i=8。}/*****讀一個字節(jié)*****/unsigned char ReadOneChar(void){unsigned char i=0。x = DQ。 //精確延時,大于480usDQ = 1。 //稍做延時DQ = 0。DQ = 1。 DS18B20采集溫度程序define DQ P3_4 //定義DS18B20總線I/O/*****延時子程序*****/void Delay_DS18B20(int num){while(num) 。P0 = 0xff。P0 = 0xfe。 P0 = 0xfb。P0 = 0xef。 //顯示P0 = 0xbf。 ISP程序下載接口電路圖319 下載電路 本系統(tǒng)才用AT89S52單片機(jī),故可以采用ISP方式下載程序。單片機(jī)輸出低電平時三極管導(dǎo)通,使數(shù)碼管的4各公共端5和12腳為高電平,此時數(shù)碼管的數(shù)據(jù)端輸入低電平后數(shù)碼管被點(diǎn)亮,120歐電阻R12到R19為三極管的限流電阻。 報(bào)警電路圖316 蜂鳴器電路本系統(tǒng)中采用蜂鳴器報(bào)警,由于單片機(jī)輸出電流較小,所以用三極管9013驅(qū)動蜂鳴器發(fā)出聲音。(3)由于單片機(jī)只訪問片內(nèi)Flash ROM并執(zhí)行內(nèi)部程序存儲器中的指令,因此單片機(jī)的31腳接高電平VCC。 硬件設(shè)計(jì) 單片機(jī)最小系統(tǒng)電路圖314 單片機(jī)最小系統(tǒng)(1)單片機(jī)9腳接復(fù)位電路,可按復(fù)位按鈕S1給單片機(jī)復(fù)位。引腳排列依然是從左下角的那個腳(1腳)開始,以逆時針方向依次為1~12腳,圖313中的數(shù)字與之一一對應(yīng)。注意,3腳和8腳是連通的,這兩個都是公共腳。圖中的8個LED分別與
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1