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

正文內(nèi)容

基于51單片機(jī)的溫度控制系統(tǒng)的設(shè)計(jì)(留存版)

  

【正文】 處理器與DS18B20只有一個(gè)一條口線連接。引腳號(hào)引腳名說 明引腳號(hào)引腳名說 明1GND/Vss電源地7D08位雙向數(shù)據(jù)線2Vdd+5V電源8D13VL液晶顯示偏壓信號(hào)9D24RS數(shù)據(jù)/命令控制,H/L10D35R/W讀/寫控制,H/L11D46E使能端12D515BLA背光源正極13D616BLK背光源負(fù)極14D7圖7 RT1602C的引腳定義RT1602C的內(nèi)部結(jié)構(gòu)可以分為3個(gè)部分:LCD控制器、LCD驅(qū)動(dòng)器、LCD顯示器,其中LCD控制器采用的是HD44780。 //下限報(bào)警溫度初值10 Delay(500)。開始寫顯示命令定位顯示位置寫顯示字符結(jié)束顯示/************LCD初始化************/void init_LCD(void){ P0=0。溫度測(cè)量模塊程序流程圖如圖14所示,DS18B20初始化程序如下,其它子程序詳見附錄一。 switch(temp) { case 0xfe:Key_set()。在本次仿真中,可以看出,本次設(shè)計(jì)的硬件電路和軟件程序均能成功仿真出來,設(shè)計(jì)要求的各種功能均已達(dá)到。當(dāng)然,本次設(shè)計(jì)還存在一些不足,例如在本次設(shè)計(jì)中,由于時(shí)間較短,警戒值只是在1~99℃之間,沒有能夠擴(kuò)展到負(fù)溫度和100℃以上;在本次設(shè)計(jì)中只是用了4個(gè)獨(dú)立按鍵,實(shí)現(xiàn)簡(jiǎn)單的上下限警戒值設(shè)定,操作較麻煩,如果能夠設(shè)計(jì)出多按鍵的矩陣式鍵盤,則能夠?qū)囟冗M(jìn)行很方便的設(shè)定。void Key_scan(void)。uchar Temp_low_1,Temp_low_2。 //DS18B20初始化 Display_str(0,0,str2)。j++) { 。 LCD_RS=0。}/********檢測(cè)LCD忙狀態(tài)********/void ReadyLCD(void){ P0=0xff。=0x0f。 Temp_low_2=Temp_set2%10。 //拉高總線 Delay_us(40)。 for(i=8。 init_18B20()。 //,功能選擇 case 0xfd:Key_inc()。 if(Temp_set1=Temp_set2) Temp_set1=Temp_set2。 Alarm_L=0。 Alarm_L=1。break。 if(P1!=0xff) { Delay(20)。 uchar t=0。 if(DQ) dat|=0x80。 //DQ復(fù)位 Delay_us(4)。 X++。 } LCD_EN=0。 _nop_()。 //清屏 LCD_Command(0x06,1)。 for(i=0。 //上限報(bào)警溫度初值90 Temp_set2=10。sbit Alarm_BEEP=P2^7。uchar Read_18B20(void)。在此期間可以通過按鍵進(jìn)行上下限警戒值設(shè)置,通過LED和蜂鳴器進(jìn)行指示和報(bào)警。圖17 上限值設(shè)定仿真圖(4)再次按下S1鍵,進(jìn)入下限警戒值設(shè)置模式L,此時(shí)按SS3鍵可以進(jìn)行下限值設(shè)定,同時(shí)溫度正常顯示,設(shè)置下限值20℃,如圖18。/************鍵盤掃描************/void Key_scan(void){uchar temp。 //顯示光標(biāo)右移設(shè)置 LCD_Command(0x0c,1)。 //顯示 Alarm()。 P2amp。本次設(shè)計(jì)中,采用外部電源方式,其連接方式如圖6所示。DS18B20采用獨(dú)特的一線接口,具有只需要一條口線通信多點(diǎn)的能力,簡(jiǎn)化了分布式溫度傳感應(yīng)用,無需外部元件。LCD顯示屏可識(shí)別性較好,背光亮度可調(diào),而且比LED數(shù)碼管顯示更多字符,但是編程要求比LED數(shù)碼管要高。顯示模塊有兩種方案可供選擇。3個(gè)鍵設(shè)計(jì)思路如下:當(dāng)按下S1鍵時(shí),系統(tǒng)進(jìn)入上下限警戒值調(diào)整狀態(tài);當(dāng)?shù)谝淮伟聪耂1鍵時(shí),進(jìn)行上限警戒值設(shè)定,當(dāng)?shù)诙伟聪耂1鍵時(shí),進(jìn)行下限警戒值設(shè)定,當(dāng)?shù)谌伟聪耂1鍵時(shí),回到正常工作狀態(tài)。如果DS18B20由寄生電源供電,除非在進(jìn)入溫度轉(zhuǎn)換時(shí)總線被一個(gè)強(qiáng)上拉拉高,否則將不會(huì)由返回值。主程序清單如下,程序流程圖如圖11所示。 //掃描鍵盤 Read_temp()。 //8位數(shù)據(jù)傳送,2行顯示,5*7字形 LCD_Command(0x08,1)。開始發(fā)ROM指令初始化發(fā)功能指令結(jié)束 Delay_us(20)。(1)按照原理圖,從Proteus元件庫(kù)中找出對(duì)應(yīng)元件,搭建硬件仿真電路,將程序燒寫到單片機(jī)中,仿真圖見附錄三。void Change(void)。sbit Normal=P2^4。 P2amp。 //顯示 Alarm()。 LCD_Command(0x38,1)。 LCD_RS=1。 LCD_EN=1。=0x0f。 Display_char(14,1,str3[Temp_true_2])。 dat=1。 Delay_us(10)。}/********精確延時(shí)********/void Delay_us(uchar i){ while(i)。break。 Low=Temp_set25。 Alarm_H=1。 if(Temp_set2=1) Temp_set2=1。break。 a=Read_18B20()。 _nop_()。}/********從DS18B20讀取一個(gè)字節(jié)數(shù)據(jù)********/uchar Read_18B20(void){ uchar i=0。}/********顯示子程序********/void Display(void){ Display_char(5,0,str3[Temp_high_1])。 LCD_Command(X,0)。 LCD_RW=1。 _nop_()。 LCD_Command(0x38,0)。 Display_str(0,0,str0)。extern uchar code str1[]={Mode:
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1