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

正文內(nèi)容

基于單片機(jī)的無線遠(yuǎn)程溫度監(jiān)控系統(tǒng)設(shè)計(參考版)

2024-11-14 02:47本頁面
  

【正文】 } void rece_init(void) { EA=1。 w_cmd(0x0c)。 w_cmd(0x06)。 w_cmd(0x01)。 w_cmd(0x08)。 附錄 32 w_cmd(0x38)。)。 w_dat(dat%10 + 39。039。 } } /* 發(fā)送數(shù)字到 LCD(00~99)*/ void w_data(uint8 addr_start, uint8 dat) { w_cmd(addr_start | 0x80)。\039。 } /* 發(fā)送字符串到 LCD*/ void w_string(uint8 addr_start, uint8 *p) { w_cmd(addr_start | 0x80)。 delay1ms(1)。 delay1ms(1)。 EN=0。 RS=0。 EN=0。 EN=1。 P0=dat。 RW=0。 } /* 寫數(shù)據(jù) */ void w_dat(uint8 dat) { delay1ms(1)。 附錄 31 }while (BUSY == 1)。 EN = 0。 do{ RS = 0。j++)。i++) for(j=0。 for(i=0。 sbit LED2 = P1^1。 sbit BUZZ = P1^2。 sbit Key3 = P3^6。 // KEYS sbit Key1 = P3^4。 sbit EN = P1^5。 // LCD1602 sbit RS = P1^3。 typedef int int16。 typedef unsigned long uint32。 } } 附錄 30 主系統(tǒng)仿真程序 include include typedef unsigned char uint8。 //讀溫度 LED = ~LED。 // 初始化 18B20 delay_ms(1000)。 // 上電 LED 亮 tran_init()。 } main() { int8 dataout[16]。 n0。 m0。 } void delay_ms(uint16 m) { uint16 n。 TI = 0。 } void send(int8 tem) { SBUF = tem。 /*SMOD=0*/ SCON=0x50。 /*向 T1 置初值 */ TL1=0xfd。 /*允許串行口中斷 */ TMOD=0x20。 } /* 串口傳輸 */ void tran_init(void) { EA=1。 temp = 4。 temp = 8。 //溫度低 8位 temp_data[1]=read_byte()。 // 發(fā) Skip ROM 命令 write_byte(0xBE)。 DS18b20_reset()。 // 發(fā)轉(zhuǎn)換命令 } /*讀出溫度 */ int8 read_temp(void) { uint8 temp_data[2]。 write_byte(0xCC)。 return(value)。 delay(6)。 nops()。 nops()。 value = 1。 i++) { DQ=1。 for (i=0。 delay(1)。 //66us val = 1。 0x01。 nops()。 _nop_()。 i8。 } /* 18B20 寫 1個字節(jié)函數(shù)向 1WIRE 總線上寫一個字節(jié) */ void write_byte(uint8 val) { uint8 i。 //延時 500us flag = ~DQ。 // 66us flag = DQ。 // 550us DQ = 1。 DQ = 0。 while (flag) { while (flag) { DQ = 1。 void delay(uint16 t)。 void tran_init(void)。} //定義空指令 int8 read_temp(void)。 _nop_()。 {_nop_()。 //DS18B20 sbit LED=P1^1。 typedef long int32。 typedef char int8。 typedef unsigned int uint16。 經(jīng)過,部分模擬仿真調(diào)試,各項(xiàng)性能指標(biāo)基本達(dá)到預(yù)期要求,也遇到一些問題,給系統(tǒng)上電后,液晶屏初始化失敗,經(jīng)檢查發(fā)現(xiàn),設(shè)計電路中液晶屏的 8個數(shù)據(jù)端口少接了上拉電阻,并且主芯片的 31( )管腳沒有接電源 ,導(dǎo)致無法訪問片內(nèi)存儲器,經(jīng)過修改后,再次上電后,初始化成功。該系統(tǒng)具有操控簡單方便、顯示直觀、功能多樣、精確度高、電路簡潔、成本低廉等諸多優(yōu)點(diǎn)。“一線”數(shù)字溫度傳感器 DS18B20 與軟件處理相結(jié)合,進(jìn)一步提高了系統(tǒng)的測溫精度。 89S51 單片機(jī)的采用,不僅便于數(shù)據(jù)采集,而且擴(kuò)展了各種功能,比如顯示、外部中斷等。 圖 61 仿真原理圖 仿真與調(diào)試 21 圖 62 低于最低門限仿真圖 圖 63 正常范圍內(nèi)仿真圖 仿真與調(diào)試 22 圖 64 超出最大門限仿真圖 結(jié)論 23 6 結(jié)論 本設(shè)計以單片機(jī) AT89S51 為開發(fā)平臺, NRF24L01 無線收發(fā)模塊, DS18B20 溫度傳感器及 LCD1602 的特性及工作原理進(jìn)行了深入研究。當(dāng)溫度低于最低門限值時,紅燈亮,報警器報警, LCD 顯示當(dāng)前溫度;當(dāng)溫度在設(shè)置范圍類時, LCD 顯示當(dāng)前溫度;當(dāng)溫度超過最高門限時,黃燈亮,報警器報警。)。 w_dat(dat%10 + 39。039。} } /*發(fā)送數(shù)字到 LCD(00~99)*/ void w_data(uint8 addr_start, uint8 dat) { w_cmd(addr_start | 0x80)。\039。 } /*發(fā)送字符串到 LCD*/ void w_string(uint8 addr_start, uint8 *p) { w_cmd(addr_start | 0x80)。 EN = 1。 RS = 0。 EN = 0。 EN = 0。 RW = 0。 P0 = dat。 } /*寫數(shù)據(jù) */ void w_dat(uint8 dat) { wait()。 }while (BUSY == 1)。 EN = 0。 do { RS = 0。 // 文字不動,光標(biāo)自動右移 w_cmd(0x01)。 // 16*2 顯示, 5*7 點(diǎn)陣, 8 位數(shù)據(jù)接口 w_cmd(0x0C)。 } 顯示程序的設(shè)計 LCD1602 顯示程序,首先進(jìn)行 1602 的初始化,然后就是執(zhí)行寫命令和寫數(shù)據(jù)這兩個子函數(shù),實(shí)現(xiàn)溫度數(shù)據(jù)的實(shí)時顯示和按鍵操作的動態(tài)顯示。 //66us } DQ=1。 //4us if (DQ) value|=0x80。 //4us DQ = 1。 DQ = 0。 _nop_()。 i8。 } /*18B20 讀 1 個字節(jié)函數(shù) 從 1WIRE 總線上讀取一個字節(jié) */ uint8 read_byte(void) { uint8 i, value=0。 //右移一位 } DQ = 1。 //最低位移出 delay(6)。 //4us DQ = val amp。 DQ = 0。 i++) { DQ = 1。 for (i=0。 } } 溫度采集程序的設(shè)計 溫度采集 程序主要是對溫度傳感器 DS18B20 編程,向 1線總線上寫字節(jié),傳送字節(jié)和讀字節(jié),然后將采集的數(shù)據(jù)交給單片機(jī)進(jìn)行處理。 // 發(fā)時鐘 CLR_SCK()。} else { CLR_MOSI()。i++) { if (dd amp。 for (i=0。 Write_more_byte(tra1,1)。 Write_more_byte(tra1,2)。 tra1[0] = 0x27。 CLR_CE()。i60。 系統(tǒng)程序的設(shè)計 17 SET_CE()。i++) { Write_one_byte(*p++)。 for (i=0。 CLR_SCN()。 // 發(fā)送數(shù)據(jù) } } 傳輸 程序的設(shè)計 傳輸程序包括發(fā)送數(shù)據(jù)和接收數(shù)據(jù),即無線收發(fā)模塊之間進(jìn)行數(shù)據(jù)通信,設(shè)定好對應(yīng)的通信地址和通信協(xié)議,即可實(shí)現(xiàn)數(shù)據(jù)的正確傳送。 //反轉(zhuǎn)數(shù)據(jù) 作為校驗(yàn) LED = ~LED。 // 延時 1 秒 dataout[0] = read_temp()。 //初始化無線模塊 while (1) { start_temp_sensor()。 LED = 0。} } } } } 系統(tǒng)程序的設(shè)計 16 發(fā)射系統(tǒng)程序的設(shè)計 發(fā)射程序首先點(diǎn)亮信號燈并且初始化無線發(fā)射模塊,接著讀取溫度數(shù)據(jù)并校驗(yàn)數(shù)據(jù),然后發(fā)射溫度數(shù)據(jù)并重置信號燈,數(shù)據(jù)正常發(fā)送,則信號燈穩(wěn)定閃爍。} else // 正溫度顯示 { w_string(0x0C, +)。 w_string(0x0C, )。 //清零計數(shù)器 w_string(0x00, Real Wen du: C)。 read_more_bytes(Rev_dat,16)。 tra[1] = 0x70。 //按鍵操作內(nèi)容 if (IRQ == 0) //是否接收到數(shù)據(jù) { read_chip_state()。 //顯示無信號 k_val = scan_key()。 while (1) { Count++。 // 上電延時 LCD1602_init()。 圖 43 溫度報警子程序流程圖 設(shè)定值與實(shí)際值比較 溫度小 于報警下限 ? 溫 度 大于報警上限 ? 報警上限處理 N Y Y N 報警下限處理 報警子程序 返回 溫度采集 數(shù)據(jù)處理 實(shí)際值發(fā)送 主程序 返回 系統(tǒng)程序的設(shè)計 15 主程序首先對 LCD 進(jìn)行初始化,然后進(jìn)行按鍵掃描,設(shè)定溫度上下限值,接著初始化無線接收模塊,然后溫度數(shù)據(jù),并判斷是否超出設(shè)定范圍,超過即啟動報警程序,不超過則繼續(xù)判斷,如此循環(huán)。 鍵盤設(shè)定值檢測 設(shè)定值顯示 實(shí)際值顯示 接收副系統(tǒng)數(shù)據(jù) 返回 主程序 溫度超出范圍否? 報警 Y N 系統(tǒng)程序的設(shè)計 14 圖 42 子系統(tǒng)程序流程圖 報警程序通過對接收到的實(shí)際值與設(shè)定值進(jìn)行比較,當(dāng)溫度小于報警下限 值時,進(jìn)行報警下限處理,當(dāng)溫度大于報警上限值時,進(jìn)行報警上限處理。 圖 41 主系統(tǒng)程序流程圖 子系統(tǒng)負(fù)責(zé)對溫度的數(shù)據(jù)采集,經(jīng)過處理后通過無線模塊發(fā)送出去 。 主系統(tǒng)程序 負(fù)責(zé)鍵盤設(shè)定 值的檢測,上下門限設(shè)定值的顯示,通過無線模塊接收子系統(tǒng)發(fā)送來的數(shù)據(jù)并顯示在 LCD 上,并且判斷接收的溫度是否超出門限值,如果超出就進(jìn)行報警操作。 VCC403938373635343332EA/VPP31ALE30PSEN292827262524232221VSS20XLAT219XLAT118RES9RXD/1043215678TXD/11INT0/12INT1/13T0/14T1/15WR/16RD/17AT89S511KR11KR2LED1LED2VCCVCCVCCQ19012SpeakerGND 圖 39 報警電路 電路原理及說明 將以上各個電路模塊連接起來,即構(gòu)成無線遠(yuǎn)程監(jiān)控系統(tǒng),總系統(tǒng)工作原理如下:溫度傳感器對實(shí)驗(yàn)現(xiàn)場的溫度進(jìn)行采集,副控芯片 AT89S51 對采集溫度數(shù)據(jù)進(jìn)行處理,將有用數(shù)據(jù)送給發(fā)射模塊 NRF24L01,主系統(tǒng)的接受模塊 NRF24L01 接受數(shù)據(jù)送給主控芯片 AT89S51, AT89S51 對數(shù)據(jù)進(jìn)行分析處理,對現(xiàn)場實(shí)際溫度進(jìn)行顯示;另外,可以人工通過獨(dú)立鍵盤對所測溫度進(jìn)行監(jiān)控,先設(shè)定好規(guī)定的溫度范圍,當(dāng)采集的溫度超過此范圍時,蜂鳴器響,同時點(diǎn)亮發(fā)光二極管,通過按鍵選擇,可以獨(dú)立實(shí)現(xiàn)聲音報警、發(fā)光報警及聲光同時報警;當(dāng)檢
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1