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

正文內(nèi)容

溫室大棚溫濕度控制系統(tǒng)-閱讀頁(yè)

2024-08-24 10:17本頁(yè)面
  

【正文】 完整的數(shù)據(jù)傳輸為40bit,高位先出。用戶MCU發(fā)送一次開(kāi)始信號(hào)后,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開(kāi)始信號(hào)結(jié)束后,DHT11發(fā)送響應(yīng)信號(hào),送出40bit的數(shù)據(jù),并觸發(fā)一次信號(hào)采集,DHT11接收到開(kāi)始信號(hào)觸發(fā)一次溫濕度采集,如果沒(méi)有接收到主機(jī)發(fā)送開(kāi)始信號(hào),。 (2)微處理器的I/O設(shè)置為輸出同時(shí)輸出低電平,且低電平保持時(shí)間不能小于18ms,然后微處理器的I/O設(shè)置位輸入狀態(tài),由于上拉電阻,微處理器的I/O即DHT11的DATA數(shù)據(jù)線也隨之變高,等待DHT11作出回答信號(hào), 圖7 主機(jī)發(fā)送起始信號(hào) (3)DHT11的DATA引腳檢測(cè)到外部信號(hào)有低電平時(shí),等待外部信號(hào)低電平結(jié)束,延遲后DHT11的DATA 引腳處于輸出狀態(tài),輸出80us的低電平作為應(yīng)答信號(hào),緊接著輸出80us的高電平通知外設(shè)準(zhǔn)備接受數(shù)據(jù),微處理器的I/O此時(shí)處于輸入狀態(tài),檢測(cè)到I/O有低電平(DHT11回應(yīng)信號(hào))后 ,等待80us 的高電平后的數(shù)據(jù)接收。 圖9 位數(shù)據(jù)“0”的格式 圖10 位數(shù)據(jù)“1”的格式 無(wú)線模塊的設(shè)計(jì) 進(jìn)入21世紀(jì)以來(lái),無(wú)線通訊技術(shù)有了突飛猛進(jìn)的發(fā)展,包括各種無(wú)線模塊的設(shè)計(jì)制作,目前應(yīng)用于無(wú)線數(shù)據(jù)傳輸?shù)募夹g(shù)非常多,如紅外技術(shù),藍(lán)牙技術(shù),RF技術(shù),GPRS,CDMA等。 APC22043模塊是高度集成微功率半雙工無(wú)線數(shù)據(jù)傳輸模塊,其嵌入了高速單片機(jī)及高性能射頻芯片,最大可以糾24bits連續(xù)突發(fā)錯(cuò)誤。 APC220的性能 工作頻率418455MHZ( 1KHZ步進(jìn)) 內(nèi)置看門狗,保證長(zhǎng)期可靠運(yùn)行 無(wú)線傳輸模塊APC220的接口說(shuō)明 APC22043模塊內(nèi)設(shè)256B的緩沖區(qū),在緩沖區(qū)為空的情況下,用戶可以不用考慮空中波特率與串口波特率的大小關(guān)系1次傳輸256B的數(shù)據(jù),當(dāng)空中波特率大于設(shè)置的串口波特率時(shí),可1次傳輸無(wú)限長(zhǎng)度的數(shù)據(jù)。最重要的是它采用透明的數(shù)據(jù)傳輸模式,寫發(fā)送模塊什么,接收模塊就可以讀到什么。 APC22043模塊共有9個(gè)接腳,具體定義如下表:APC220引腳定義引腳定義說(shuō)明1GND地0V2VCC3EN電源是能端,=,= 4RXDURAT輸入口,TTL電平5TXDUART輸出口,TTL電平6AUXUART口的收發(fā)指示輸出,低接收,高輸出7SET參數(shù)設(shè)置,低有效8NC空腳9NC空腳 表12 APC220無(wú)線模塊引腳定義 圖6 APC220與單片機(jī)的連接 APC220無(wú)線模塊的工作參數(shù)的設(shè)置 通過(guò)SET腳進(jìn)行在線修改。設(shè)置時(shí)首先將SET腳置低,此時(shí)無(wú)論UART口是何狀態(tài),模塊自動(dòng)將UART口轉(zhuǎn)變?yōu)?600bps,無(wú)校驗(yàn)?zāi)J?,約1ms后模塊進(jìn)入設(shè)置狀態(tài)(T2).用戶可以通過(guò)向RXD口發(fā)送設(shè)置命令,模塊校驗(yàn)后,在200ms內(nèi)TXD腳將開(kāi)始返回參數(shù)信息(T3),用戶在確定設(shè)置信息無(wú)誤后置高SET腳,模塊在10ms內(nèi)切換至用戶設(shè)置的參數(shù)模式運(yùn)行(T4)。 圖7 APC220在線設(shè)置工作參數(shù)時(shí)序圖 APC22043設(shè)置時(shí)采用的編碼為ASCII碼,采用的波特率為9600bps,無(wú)校驗(yàn)?zāi)J?,設(shè)置命令有讀寫各一個(gè),用大寫字母表示,參數(shù)之間用空格間隔開(kāi),回車表示換行結(jié)束,格式如下:1) 讀命令設(shè)置:RD PARA頻率空中速率發(fā)射功率串口速率串口校驗(yàn)2) 寫命令設(shè)置:WR PARA頻率空中速率發(fā)射功率串口速率串口校驗(yàn) 表13 APC220設(shè)置參數(shù)表示方法參數(shù)表示方法參數(shù)字節(jié)數(shù)說(shuō)明頻率6單位KHZ,如434MHZ表示為434000空中速率62400,4800,9600,19200bps用1,2,3,4表示發(fā)射功率10至9,設(shè)置0為1dBm,9為13dBm(20mW)串口速率11200,2400,4800,9600,19200,38400,57600bps用0,1,2,3,4,5,6表示串口校驗(yàn)1串口校驗(yàn)0為無(wú)效校驗(yàn),1為偶校驗(yàn),2為奇校驗(yàn) APC220無(wú)線模塊的技術(shù)指示 表14 APC220無(wú)線模塊的技術(shù)指示APC22043技術(shù)指示工作方式418MHZ to 455MHZ(1MHZ步進(jìn))調(diào)制方式GFSK頻率間隔200KHZ發(fā)射功率20mw(10級(jí)可調(diào))接收靈敏度118dBm1200bps空中傳輸速率24009600bps接口速率120057600bps接口校驗(yàn)方式8E1/8N1/801接口緩沖空間256bytes工作濕度10%90%工作溫度30 85電源 (50mv紋波)發(fā)射電流=35mV20mW接收電源=28mA休眠電源=5uA傳輸距離1200米傳輸距離(1200bps開(kāi)闊的可視距離)尺寸 考慮到整個(gè)應(yīng)用系統(tǒng)的工作環(huán)境特別是對(duì)亮度的要求等因素,我們選擇了LCD1602液晶顯示器進(jìn)行溫濕度數(shù)據(jù)的顯示。 圖8 顯示電路原理圖 鍵盤是數(shù)據(jù)輸入、參數(shù)設(shè)定和手動(dòng)控制的輸入設(shè)備,它的作用是進(jìn)行十六進(jìn)制字符的輸入。該按鍵需要兩組信號(hào)線,一組作為輸出信號(hào)線(稱為行線),另一組作為輸入信號(hào)線(稱為列線)。本系統(tǒng)采用行掃描法,CPU通過(guò)輸出鎖存器在某一行線上送出0,通過(guò)輸入緩沖器檢查列線是否有0,進(jìn)行按鍵識(shí)別。執(zhí)行模塊包括調(diào)節(jié)設(shè)備如噴水機(jī),吹風(fēng)機(jī),加熱器,降溫等,調(diào)節(jié)大棚內(nèi)的溫濕度狀態(tài),還有報(bào)警裝置。電路中,因?yàn)閱纹瑱C(jī)輸出口的電流很小,無(wú)法驅(qū)動(dòng)繼電器,所以在繼電器輸入端應(yīng)該接一個(gè)PNP三極管,用來(lái)放大電流,驅(qū)動(dòng)繼電器工作。在protuse仿真中找不到電磁閥,用電燈泡代替表示電磁閥。 報(bào)警模塊當(dāng)所測(cè)溫度或濕度超過(guò)設(shè)定值的上下限,就會(huì)報(bào)警。接通電源后,振蕩器產(chǎn)生的音頻信號(hào)電流通過(guò)電磁線圈,使電磁線圈產(chǎn)生磁場(chǎng),振動(dòng)膜片在電磁線圈和磁鐵的相互作用下,周期性地振動(dòng)發(fā)聲。S51增強(qiáng)型單片機(jī)實(shí)驗(yàn)板通過(guò)一個(gè)三極管來(lái)放大驅(qū)動(dòng)蜂鳴器,原理圖見(jiàn)下面圖12: 圖13 單片機(jī)驅(qū)動(dòng)蜂鳴器如圖所示,蜂鳴器的正極接到VCC(+5V)電源上面,蜂鳴器的負(fù)極接到三極管的發(fā)射極E,三極管的基級(jí)B經(jīng)過(guò)限流電阻R1后由單片機(jī)的I/O口控制,當(dāng)該I/O輸出高電平時(shí),三極管T1截止,沒(méi)有電流流過(guò)線圈,蜂鳴器不發(fā)聲;當(dāng)I/O口輸出低電平時(shí),三極管導(dǎo)通,這樣蜂鳴器的電流形成回路,發(fā)出聲音。程序中改變單片機(jī)I/O口輸出波形的頻率,就可以調(diào)整控制蜂鳴器音調(diào),產(chǎn)生各種不同音色、音調(diào)的聲音。 與硬件設(shè)計(jì)相對(duì)應(yīng),軟件設(shè)計(jì)也采用模塊化程序設(shè)計(jì)的方式,包括主程序模塊,初始化參數(shù)設(shè)置模塊,無(wú)線通訊發(fā)送模塊,無(wú)線通訊接收模塊,數(shù)據(jù)采集程序模塊,顯示模塊。/* 定時(shí)器0初始化*/void TIM0init(void)//定時(shí)器0初始化{ TMOD=0x02。 //重載值 TL0=0x00。 //開(kāi)中斷 TR0=1。 //指定外部中斷0下降沿觸發(fā),INT0 () EX0 = 1。 //開(kāi)總中斷} 數(shù)據(jù)采集模塊軟件流程準(zhǔn)備開(kāi)始標(biāo)志:當(dāng)?shù)碗娖降陀?8ms后,單片機(jī)將輸出端口改為輸入,開(kāi)始讀取DHT11的數(shù)據(jù)。讀取數(shù)據(jù)過(guò)程:DHT11先發(fā)送12—14us的低電平信號(hào),然后緊跟高電平,如果在116—118us左右,將自動(dòng)識(shí)別為1,如果在26—28us左右將識(shí)別為0。由于設(shè)計(jì)的需要,現(xiàn)只讀取八位濕度整數(shù)值,將讀取的濕度值傳給單片機(jī)。 void delay_us() // 延時(shí)子程序{ unsigned char i。 i。 i。 i。while((x)!=0){for(n=0。n++){。 unsigned char temp,respond。 for(i=0。i++) { respond=2。amp。 delay_us()。 delay_us()。 respond=2。amp。 } else temp=0。 _data|=temp。}//濕度讀取子程序 //溫度高8位== TL_data//溫度低8位== TH_data//濕度高8位== RH_data//濕度低8位== RH_data//校驗(yàn) 8位 == CK_data//調(diào)用的程序有 delay()。,RECEIVE()。 unsigned int RH_temp,RL_temp,TH_temp,TL_temp,CK_temp,untemp, RH_data,RL_data,TH_data,TL_data,CK_data。 delayms(18)。 //DATA總線由上拉電阻拉高 主機(jī)延時(shí)20us delay_us()。 delay_us()。 TRH=1。 //判斷DHT11發(fā)出 80us 的低電平響應(yīng)信號(hào)是否結(jié)束 while((!TRH)amp。respond++)。 //判斷從機(jī)是否發(fā)出 80us 的高電平,如發(fā)出則進(jìn)入數(shù)據(jù)接收狀態(tài) while((TRH)amp。respond++)。 RL_temp=receive()。 TL_temp=receive()。 TRH=1。 //數(shù)據(jù)校驗(yàn) if(CK_temp==untemp) { RH_data=RH_temp。 TH_data=TH_temp。 CK_data=CK_temp。 shidu=(unsigned char) (RH_data )。/* 主函數(shù)*/void main(void){ EX0init()。//初始化定時(shí)器 LCD_Init()。 //延時(shí)有助于穩(wěn)定 LCD_Clear()。 LCD_Write_Char(9,1,0xdf)。C39。// LCD_Write_Char(15,1,39。)。 irok=0。 //寫地址位 LCD_Write_Char(2,1,display[adres2])。 //寫數(shù)據(jù)1 LCD_Write_Char(8,1,display[dat2])。 //寫數(shù)據(jù)2 LCD_Write_Char(14,1,display[dat4])。 //處理完成標(biāo)志 delay500ms()。 } }}終端液晶顯示程序include include sbit RS = P2^4。sbit EN = P2^6。 RS_CLR。 EN_CLR。 EN_SET。 0x80)。 //忙則等待 RS_CLR。 EN_SET。 _nop_()。 }/* 寫入數(shù)據(jù)函數(shù)*/ void LCD_Write_Data(unsigned char Data) { while(LCD_Check_Busy())。 RW_CLR。 DataPort= Data。 EN_CLR。 delayms(5)。 //表示第一行 } else { LCD_Write_Com(0xC0 + x)。 s ++。 } else { LCD_Write_Com(0xC0 + x)。 }/* 初始化函數(shù)*/ void LCD_Init(void) { LCD_Write_Com(0x38)。 LCD_Write_Com(0x38)。 LCD_Write_Com
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1