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

正文內(nèi)容

基于單片機(jī)的智能溫室溫濕度控制系統(tǒng)的設(shè)計(jì)畢業(yè)設(shè)計(jì)-在線(xiàn)瀏覽

2025-08-06 12:55本頁(yè)面
  

【正文】 RETR設(shè)置自動(dòng)重發(fā)數(shù)據(jù)時(shí)間和次數(shù)07STATUS狀態(tài)寄存器,用來(lái)判定工作狀態(tài)0A~0FRX_ADDR_P0~P5設(shè)置接收通道地址10TX_ADDR設(shè)置接收接點(diǎn)地址11~16RX_PW_P0~P5設(shè)置接收通道的有效數(shù)據(jù)寬度 液晶顯示裝置設(shè)計(jì)液晶簡(jiǎn)介1602液晶也叫1602字符型液晶 它是一種專(zhuān)門(mén)用來(lái)顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊,它有若干個(gè)5x7或者5x11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。1602LCD主要技術(shù)參數(shù):顯示容量:162個(gè)字符芯片工作電壓:工作電流:()模塊最佳工作電壓:字符尺寸:(WH)mm 1602LCD引腳圖引腳功能說(shuō)明:1602LCD采用標(biāo)準(zhǔn)的14腳(無(wú)背光)或16腳(帶背光)接口,各引腳接口說(shuō)明如下:第1腳:VSS為地電源。第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度。第5腳:R/W為讀寫(xiě)信號(hào)線(xiàn),高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第15腳:背光源正極。液晶顯示原理: 讀操作時(shí)序 寫(xiě)操作時(shí)序 報(bào)警系統(tǒng)設(shè)計(jì)本系統(tǒng)采用紅LED燈作為光報(bào)警提示,當(dāng)系統(tǒng)檢測(cè)到的數(shù)據(jù)不符合給定的要求時(shí),現(xiàn)場(chǎng)為紅燈報(bào)警提示;本系統(tǒng)采用蜂鳴器作為聲報(bào)警提示,當(dāng)系統(tǒng)檢測(cè)到的數(shù)據(jù)符合給定的要求時(shí),現(xiàn)場(chǎng)沒(méi)有蜂鳴器報(bào)警提示;當(dāng)系統(tǒng)檢測(cè)到的數(shù)據(jù)不符合給定的要求時(shí),現(xiàn)場(chǎng)蜂鳴器報(bào)警提示。: 系統(tǒng)流程圖 系統(tǒng)初始化模塊系統(tǒng)初始化模塊的主要功能是完成系統(tǒng)的初始化以及設(shè)定系統(tǒng)的工作狀態(tài),初始化部分包括以下方面的內(nèi)容: 數(shù)據(jù)采集模塊溫濕度檢測(cè)模塊是本系統(tǒng)中的核心模塊之一,它負(fù)責(zé)完成溫度和濕度的測(cè)量及模擬量轉(zhuǎn)換為數(shù)字量的全過(guò)程,這也是它為什么重要的原因。溫濕度傳感器的精確度值直接影響到整個(gè)系統(tǒng)的檢測(cè)與控制,所以本系統(tǒng)采用數(shù)字式溫濕度傳感器DHT11采集溫室內(nèi)的溫濕度[25]。如溫度和濕度高于上限時(shí)或低于下限時(shí)需要進(jìn)行啟動(dòng)警報(bào),并且將溫濕度結(jié)果以無(wú)線(xiàn)進(jìn)行通信等。通過(guò)SPI總線(xiàn)配置射頻芯片使其進(jìn)入正確的工作模式。接著把發(fā)送端待發(fā)射數(shù)據(jù)的目標(biāo)地址TXADDR和數(shù)據(jù)TXPLD寫(xiě)入nRF24L01緩沖區(qū),延時(shí)后發(fā)射數(shù)據(jù),: 無(wú)線(xiàn)發(fā)射軟件流程圖無(wú)線(xiàn)接收模塊部分接收數(shù)據(jù)時(shí),首先將nRF24L01配置為接收模式。當(dāng)接收方檢測(cè)到有效地址和CRC時(shí),就將數(shù)據(jù)包儲(chǔ)存在接收堆棧中,同時(shí)狀態(tài)寄存器中的中斷標(biāo)志位RXDR置高,產(chǎn)生中斷使IRQ引腳變?yōu)榈碗娖剑员阃ㄖ狹CU去取數(shù)據(jù),: 無(wú)線(xiàn)接收軟件流程圖 顯示模塊本系統(tǒng)采用1602液晶顯示溫濕度值,當(dāng)系統(tǒng)剛開(kāi)始上電時(shí)1602液晶不顯示任何數(shù)據(jù),等待AM2301的監(jiān)測(cè)數(shù)據(jù),雙行顯示在1602液晶上。C。報(bào)警燈模塊是完成LED有規(guī)律的轉(zhuǎn)換,以便從視覺(jué)上提醒用戶(hù)。,紅色LED亮。警報(bào)燈由1個(gè)LED燈組成,一共需要1根數(shù)據(jù)線(xiàn),使用單片機(jī)AT89S52控制。反之,如果當(dāng)前溫濕度高于用戶(hù)設(shè)定的上限溫濕度值,則說(shuō)明當(dāng)前溫濕度過(guò)高,系統(tǒng)也會(huì)自動(dòng)啟動(dòng)警報(bào)燈,直至溫濕度值降到適當(dāng)范圍時(shí)警報(bào)燈熄滅。在單片機(jī)開(kāi)發(fā)板上連接好電路進(jìn)行調(diào)試: 正常室溫中溫濕度檢測(cè)結(jié)果(濕度:22%,溫度:31。首先,通過(guò)這次應(yīng)用系統(tǒng)設(shè)計(jì),在很大程度上提高了自己的獨(dú)立思考能力和單片機(jī)的專(zhuān)業(yè)知識(shí),其次,我也深刻了解寫(xiě)一篇應(yīng)用系統(tǒng)的步驟和格式,有過(guò)這樣的一次訓(xùn)練,相信在接下來(lái)的日子我們都會(huì)了,而且會(huì)做得更好。 系統(tǒng)以單片機(jī)AT89S52為核心部件,單片機(jī)系統(tǒng)完成對(duì)溫濕度信號(hào)的采集、處理、顯示等功能。附錄發(fā)送部分程序include include typedef unsigned char uchar;typedef unsigned char uint;//****************NRF24L01端口定義*********************sbit MISO=P1^5;sbit MOSI=P1^1;sbit SCK=P1^4;sbit CE=P1^3;sbit CSN=P1^0;sbit IRQ=P1^2;//*************************按鍵*************************sbit TRH = P2^1;//溫濕度傳感器DHT11數(shù)據(jù)接入//**********************發(fā)送緩沖區(qū)**********************uchar TxBuf[32]={0};unsigned char receive_buf[32]={0};unsigned char receive_data,receive_s,flag;unsigned char receive_beg;//**********************NRF24L01************************define TX_ADR_WIDTH 5 // 5 uints TX address widthdefine RX_ADR_WIDTH 5 // 5 uints RX address widthdefine TX_PLOAD_WIDTH 32 // 20 uints TX payloaddefine RX_PLOAD_WIDTH 32 // 20 uints TX payloaduint const TX_ADDRESS[TX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01};//本地地址uint const RX_ADDRESS[RX_ADR_WIDTH]= {0x34,0x43,0x10,0x10,0x01};//接收地址//******************NRF24L01寄存************************define READ_REG 0x00 // 讀寄存器指令define WRITE_REG 0x20 // 寫(xiě)寄存器指令define RD_RX_PLOAD 0x61 // 讀取接收數(shù)據(jù)指令define WR_TX_PLOAD 0xA0 // 寫(xiě)待發(fā)數(shù)據(jù)指令define FLUSH_TX 0xE1 // 沖洗發(fā)送 FIFO指令define FLUSH_RX 0xE2 // 沖洗接收 FIFO指令define REUSE_TX_PL 0xE3 // 定義重復(fù)裝載數(shù)據(jù)指令define NOP 0xFF // 保留//*****************SPI(nRF24L01)寄存器地址****************define CONFIG 0x00 // 配置收發(fā)狀態(tài),CRC校驗(yàn)?zāi)J揭约笆瞻l(fā)狀態(tài)響應(yīng)方式define EN_AA 0x01 // 自動(dòng)應(yīng)答功能設(shè)置define EN_RXADDR 0x02 // 可用信道設(shè)置define SETUP_AW 0x03 // 收發(fā)地址寬度設(shè)置define SETUP_RETR 0x04 // 自動(dòng)重發(fā)功能設(shè)置define RF_CH 0x05 // 工作頻率設(shè)置define RF_SETUP 0x06 // 發(fā)射速率、功耗功能設(shè)置define STATUS 0x07 // 狀態(tài)寄存器define OBSERVE_TX 0x08 // 發(fā)送監(jiān)測(cè)功能define CD 0x09 // 地址檢測(cè) define RX_ADDR_P0 0x0A // 頻道0接收數(shù)據(jù)地址define RX_ADDR_P1 0x0B // 頻道1接收數(shù)據(jù)地址define RX_ADDR_P2 0x0C // 頻道2接收數(shù)據(jù)地址define RX_ADDR_P3 0x0D // 頻道3接收數(shù)據(jù)地址define RX_ADDR_P4 0x0E // 頻道4接收數(shù)據(jù)地址define RX_ADDR_P5 0x0F // 頻道5接收數(shù)據(jù)地址define TX_ADDR 0x10 // 發(fā)送地址寄存器define RX_PW_P0 0x11 // 接收頻道0接收數(shù)據(jù)長(zhǎng)度define RX_PW_P1 0x12 // 接收頻道0接收數(shù)據(jù)長(zhǎng)度define RX_PW_P2 0x13 // 接收頻道0接收數(shù)據(jù)長(zhǎng)度define RX_PW_P3 0x14 // 接收頻道0接收數(shù)據(jù)長(zhǎng)度define RX_PW_P4 0x15 // 接收頻道0接收數(shù)據(jù)長(zhǎng)度define RX_PW_P5 0x16 // 接收頻道0接收數(shù)據(jù)長(zhǎng)度define FIFO_STATUS 0x17 // FIFO棧入棧出狀態(tài)寄存器設(shè)置//********************************************************unsigned char TH_data,TL_data,RH_data,RL_data,CK_data;unsigned char TH_temp,TL_temp,RH_temp,RL_temp,CK_temp;unsigned char _data,untemp,temp;unsigned char respond;void Delay(unsigned int s);void inerDelay_us(unsigned char n);void StartUART( void );void init_NRF24L01(void);uint SPI_RW(uint uchar);uchar SPI_Read(uchar reg);void SetRX_Mode(void);uint SPI_RW_Reg(uchar reg, uchar value);uint SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars);uint SPI_Write_Buf(uchar reg, uchar *pBuf, uchar uchars);unsigned char nRF24L01_RxPacket(unsigned char* rx_buf);void nRF24L01_TxPacket(unsigned char * tx_buf);void read_TRH();char receive();//**********************長(zhǎng)延時(shí)***************************void Delay(unsigned int s){ unsigned int i;for(i=0;is;i++);for(i=0;is;i++);}void delay_ms(unsigned char ms){ unsigned char i;while(ms) { for(i = 0。 i++) { _nop_();_nop_();_nop_();_nop_(); } }}/*********************************************************//*********************************************************///5us級(jí)延時(shí)程序/*********************************************************/void delay_us(){ unsigned char i;i;i;i;i;i;i;} //********************************************************uint bdata sta; //狀態(tài)標(biāo)志sbit RX_DR=sta^6;sbit TX_DS=sta^5;sbit MAX_RT=sta^4;/**********************************************************/*延時(shí)函數(shù)/**********************************************************/void inerDelay_us(unsigned char n){ for(;n0;n) _nop_();}//**********************************************************/*NRF24L01初始化//**********************************************************/void init_NRF24L01(void){ inerDelay_us(100); CE=0; // chip enable
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1