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

正文內(nèi)容

基于stc89c52單片機(jī)溫濕度檢測系統(tǒng)設(shè)計(jì)-在線瀏覽

2025-08-14 18:50本頁面
  

【正文】 在此期間無需發(fā)送任何指令。串行接口 (單線雙向)DATA 用于微處理器與 DHT11之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時(shí)間4ms左右, 用戶MCU發(fā)送一次開始信號(hào)后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開始信號(hào)結(jié)束后,DHT11發(fā)送響應(yīng)信號(hào),送出40bit的數(shù)據(jù),并觸發(fā)一次信號(hào)采集,DHT11接收到開始信號(hào)觸發(fā)一次溫濕度采集,如果沒有接收到主機(jī)發(fā)送開始信號(hào),。注意事項(xiàng)(1)避免結(jié)露情況下使用。它的全名是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”。隨著設(shè)備的不斷改進(jìn),出現(xiàn)了代替DB25的DB9接口,現(xiàn)在都把RS232接口叫做DB9。片上Flash允許ROM在系統(tǒng)可編程,亦適于常規(guī)編程器。 主要特性(1) 與MCS51單片機(jī)產(chǎn)品兼容;(2) 8K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器;(3) 1000次擦寫周期;(4) 全靜態(tài)操作:0Hz~33Hz;(5) 三級(jí)加密程序存儲(chǔ)器;(6) 32個(gè)可編程I/O口線;(7) 三個(gè)16位定時(shí)器/計(jì)數(shù)器;(8) 八個(gè)中斷源;(9) 全雙工UART串行通道;(10) 低功耗空閑和掉電模式;(11) 掉電后中斷可喚醒; STC89C52芯片的引腳圖(12) 看門狗定時(shí)器;(13) 雙數(shù)據(jù)指針;(14) 掉電標(biāo)識(shí)符。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。當(dāng)訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在Flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。P1口:具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在Flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。對(duì)P2端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。在方位外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口送出高八位地址。P3口:P3口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動(dòng)四個(gè)TTL邏輯電平。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。晶振工作時(shí),RST腳持續(xù)2個(gè)機(jī)器周期高電平將使單片機(jī)復(fù)位。ALE/:控制信號(hào)(ALE)是訪問外部程序存儲(chǔ)器時(shí),鎖存低8位地址的輸出脈沖。在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時(shí)器或時(shí)鐘使用。如果需要,通過將地址為8EH的SFR的第0位置“1”,ALE操作將無效。否則,ALE將被微弱拉高。:外部程序存儲(chǔ)器選通信號(hào)()是外部程序存儲(chǔ)器選通信號(hào)。/VPP:訪問外部程序存儲(chǔ)器控制信號(hào)。為執(zhí)行內(nèi)部程序指令,應(yīng)該接VCC。XTAL1:振蕩器反相放大器和內(nèi)部時(shí)鐘發(fā)生電路的輸入端。 LCD1602工業(yè)字符型液晶,能夠同時(shí)顯示16x02即32個(gè)字符。4RSRS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器。6EE(或EN)端為使能(enable)端,下降沿使能。Pl口控制數(shù)碼管顯示溫度和濕度值。鍵盤控制采用PO口.其中PO.O是溫度的設(shè)置,PO.1是濕度的設(shè)置,PO.2/PO.3是分別對(duì)溫度與濕度的上/下限值進(jìn)行設(shè)置。DHT11接收到主機(jī)的開始信號(hào)后,等待主機(jī)開始信號(hào)結(jié)束,延時(shí)等待2040us后, 讀取DHT11的響應(yīng)信號(hào),主機(jī)發(fā)送開始信號(hào)后,可以切換到輸入模式,或者輸出高電平均可, 總線由上拉電阻拉高。 數(shù)字0信號(hào)表示方法如圖4所示 圖4 圖5 鍵盤設(shè)計(jì)用了幾個(gè)簡單的按鍵將它們拼成了一個(gè)簡易的鍵盤。按鍵對(duì)單片機(jī)的接口電路圖如圖所示??梢栽O(shè)置列線初始狀態(tài)為低電平(0000)。下面就要運(yùn)用掃描的原理了:因?yàn)橹恢赖谝恍杏墟I按下,不知道是那個(gè),可以設(shè)置列信號(hào)為0111,這時(shí)行信號(hào)變?yōu)椋?111)(注:假設(shè)時(shí)鐘周期很短,手還沒松開,即鍵還在按下的狀態(tài))設(shè)置列信號(hào)為1011,行信號(hào)也變成(1111)設(shè)置列信號(hào)為1101,行信號(hào)也變成(1111)設(shè)置列信號(hào)為1110,行信號(hào)也變成(0111),這時(shí)就可以肯定是第一個(gè)鍵按下。在大氣氣候的檢測中需要做記錄時(shí),可以通過設(shè)置單片機(jī)的參數(shù),每隔一定的時(shí)間進(jìn)行自動(dòng)的做記錄,省去人工的記錄麻煩。 單片機(jī)系統(tǒng)與上位機(jī)的連接 報(bào)警電路設(shè)計(jì)NPN+5VAT89S52PB2130UP002A本設(shè)計(jì)采用峰鳴音報(bào)警電路。壓電式蜂鳴器約需10mA的驅(qū)動(dòng)電流,可以使用TTL系列集成電路7406或7407低電平驅(qū)動(dòng),也可以用一個(gè)晶體三極管驅(qū)動(dòng)?!?”時(shí),晶體管導(dǎo)通,壓電蜂鳴器兩端獲得約+5V電壓而鳴叫;“0”時(shí),三極管截止,蜂鳴器停止發(fā)聲。通常,符合上述功能的溫度控制程序由主程序和T0中斷服務(wù)程序兩部分組成。 程序流程圖LCD1602頭文件ifndef __LCD_1602_CLIMBERWIN__define __LCD_1602_CLIMBERWIN__define uchar unsigned chardefine uint unsigned intinclude include/******Port Definitions*****/define LCD_Data P0 //LCD的數(shù)據(jù)口sbit LCD_BF=LCD_Data^7。sbit LCD_RW = P2^6。unsigned char dis_buf[3]。//字碼/*定義子程序*/void LCD_ClrAll(void)。 //檢測是否忙碌void LCD_Write(uchar WriteData)。 //寫數(shù)據(jù)顯示void LCD_cursor(uchar x)。 //輸出一個(gè)字符void LCD_prints(unsigned char *lcd_string)。//1ms延時(shí)//************************************************************************/*LCD1602忙碌判斷子程序*/void Judge_LCD_busy(void) //判斷LCD1602是否忙狀態(tài){ while(1) { LCD_EN=0。 LCD_RW=1。 LCD_EN=1。 //LCD_BF=1表示忙碌,需要等待。}/******LCD清屏***************/void LCD_ClrAll(void){ Judge_LCD_busy()。 LCD_RW=0。 LCD_EN=1。}/*******LCD寫數(shù)據(jù)定義各種模式*********/void LCD_Write(uchar WriteData) //寫指令到LCD{ Judge_LCD_busy()。 LCD_RW=0。 //把WriteData的數(shù)據(jù)送到數(shù)據(jù)口 LCD_EN=1。 }/********LCD顯示數(shù)據(jù)***********/void LCD_write_data(uchar LCD_data) //輸出一個(gè)字節(jié)數(shù)據(jù)到LCD{ Judge_LCD_busy()。 LCD_RW=0。 LCD_EN=1。 }/****光標(biāo)位置的確定***/void LCD_cursor(uchar x) //LCD光標(biāo)定位到x處{ LCD_Write(0x80+x)。}/*輸出字符串*/void LCD_prints(unsigned char *lcd_string){ unsigned char i=0。 i++。 for(i=0。i++)//拆分bcd { dis_buf[i] = num%10。 } for(i=2。i)//滅零 { if(dis_buf[i]==0)dis_buf[i]=10。 } for(i=2。i)//逐個(gè)顯示 { LCD_write_data(table[dis_buf[i]])。 LCD_Write(LCD_DISPLAY_ON|LCD_CURSOR_OFF)。 LCD_ClrAll()。 //字符串接受完成后標(biāo)志位置位,須軟件復(fù)位unsigned char S_LEN = 4。void Uart_init(){ ES = 1。 //set SMREN and TI。 //set M1,方式2。 TL1 = 0xf3。 //計(jì)數(shù)使能}void Uart_sc(unsigned char byte) //發(fā)送單字符{ while(!TI)。 TI = 0。 } if(flag==1) { Uart_sc(0x0D)。 //結(jié)尾發(fā)送回車換行 }}KEY頭文件unsigned char code row_scan[4]={0xef,0xdf,0xbf,0x7f}。 for(j=0。j++) for(x=0。x++)。 unsigned char temp,key_vaul。i4。 temp=0x01。j4。temp)) { key_vaul=i*4+j+1。temp))。 } temp=1。 //鍵標(biāo)志。 if(P1!=0x0f) { delay_1ms(1)。 //有鍵按下 } else key_flag=0。 }DHT11頭文件ifndef __DHT11_H__ define __DHT11_H__sbit DT0 = P2^0。sbit BEEP = P2^3。 // 存放五字節(jié)數(shù)據(jù)的數(shù)組static unsigned char value_array_0[SIZE]。int humi_value0,temp_value0,humi_value1,temp_value1。 for(j=0。j++) for(x=0。x++)。 while(x) { for (i = 0。 i++) {} }}void delay_1(unsigned char x) //x*{ unsigned char i。 i130。 BEEP=0。i6。 delay_1(5000)。 } }void delay_10us(){ unsigned char i。i。i。i。 unsigned char buf[5] = {0}。 DT0 = 0。 DT0 = 1。 delay_10us()。 delay_10us()。 if(DT0==0) //是否響應(yīng)信號(hào) { while(DT0==0)。 //跳過 80us DHT拉高信號(hào) //準(zhǔn)備接受溫濕度數(shù)據(jù) for(i=0。i++) { for(j=0。j++) { N = 0。//bit數(shù)據(jù)頭 while(DT0==1) { delay_10us()。 } buf[i] = 1。 } } DT0 = 1。 if(tem==buf[4]) { //buf[2] = buf[2]5。 LCD_prints( )。 LCD_prints(N1 )。 LCD_cursor(0x04)。 LCD_cursor(0x07)。 LCD_write_data(0x43)。 LCD_prints(HU: %)。 LCD_ints(buf[0])。 Uart_ss(N1: ,0)。 Uart_sc(buf[2]/10+48)。 Uart_ss(度 ,0)。 Uart_sc(buf[0]/10+48)。 Uart_sc(0xA3)。 Uart_sc(0x0D)。 //結(jié)尾發(fā)送回車換行 LCD_c
點(diǎn)擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1