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

正文內(nèi)容

基于單片機的無線遠程溫度監(jiān)控系統(tǒng)設計-閱讀頁

2024-11-30 02:47本頁面
  

【正文】 向 1WIRE 總線上寫一個字節(jié) */ 系統(tǒng)程序的設計 18 void write_byte(uint8 val) { uint8 i。 i8。 _nop_()。 nops()。 0x01。 //66us val = 1。 delay(1)。 for (i=0。 i++) { DQ=1。 value = 1。 nops()。 nops()。 delay(6)。 return(value)。 /* 初始化 1602*/ 系統(tǒng)程序的設計 19 void LCD1602_init(void) { w_cmd(0x38)。 // 顯示器開 w_cmd(0x06)。 // 清屏 } /*等待繁忙標志 */ void wait(void) { P0 = 0xFF。 RW = 1。 EN = 1。 EN = 0。 EN = 0。 RS = 1。 EN = 1。 } /* 寫命令 */ void w_cmd(uint8 cmd) { wait()。 P0 = cmd。 RW = 0。 EN = 0。 while (*p != 39。) { w_dat(*p++)。 w_dat(dat%100/10 + 39。)。039。} 仿真與調(diào)試 20 5 仿真與調(diào)試 由于無線模塊 NRF24L01 在模擬仿真中無法實現(xiàn),所以采用的是雙機通信原理實現(xiàn)部分仿真。 仿真原理圖如圖 61 所示, 仿真結(jié)果如圖 6 6 64 所示。通過軟件硬件相結(jié)合而設計了遠程溫度顯示,遠程溫度報警系統(tǒng)。 NRF24L01 無線收發(fā)模塊集成度高,集合了編碼解碼,發(fā)射接收功能,使用方便,使得系統(tǒng)的硬件和 軟件簡單了許多。在電路的設計中充分考慮了系統(tǒng)的可靠性和安全性。對于單片機愛好者來說,也可以在系統(tǒng)的基礎上進行其它功能的開發(fā) 。 參考文獻 24 參考文獻 [1]于海生 ,潘松峰 ,于培仁 .微型計算機控制技術 [M].北京 :清華大學出版社 ,2020. [2]徐煒 ,姜暉 ,崔琛 .通信電子技術 [M].西安 :西安電子科技大學出版社 ,2020. [3]朱定華 .微機原理與接口技術 [M].北京 :清華大學出版社 ,2020. [4]李斯偉 ,雷新生 .數(shù)據(jù)通信技術 [M].北京 :人民郵電出版社 ,2020. [5]謝自美 .電子線路設計實驗測試 [M].武漢 :華中科技大學出版社 ,2020. [6]梁廷貴 .遙控電路可控 硅觸發(fā)電路語音電路分冊 [M].北京 :科學技術文獻出版社 ,2020. [7]黃賢武 ,鄭筱霞 .傳感器原理及其應用 [M].成都 :電子科技大學出版社 , 2020. [8]俞國亮 .MCS51 單片機原理與應用 [M].北京 :清華大學出版社 ,2020. [9]夏路易 ,石宗義 .Protell99SE 設計教程 [M].北京 :北京希望電子出版社 ,2020. [10]王用倫 .微機控制技術 [M].重慶 :重慶大學出版社 ,2020. [11]李大寨 .傳感器電子制作 DIY[J].北京 :科學出版社 ,2020. [12]張毅剛 .單片機原理 及應用 [M].北京 :高等教育出版社 ,2020. [13]譚浩強 .C 語言程序設計教程 [M].北京 :高等教育出版社 ,2020. [14]彭偉 .單片機 C 語言程序設計實訓 100 例 [M].北京 :北京航空航天大學出版社 ,2020. [15]候殿有 .單片機 C 語言設計 [M].北京 :人民郵電出版社 ,2020. [16]姜志海 ,趙艷雷 .單片機的 C 語言 [M].北京 :電子工業(yè)出版社 ,2020. [17]鄭鋒 ,王巧芝 ,程麗平 .51 單片機典型應用開發(fā)實例大全 [M].北京 :中國鐵道工業(yè)出版社 ,2020. [18]杜洋 .愛上單片機 [M].北京 :人民郵電出版社 ,2020. [19]喻金錢 ,喻斌 .短距離無線通信詳解 :基于單片機控制 [M].北京 :北京航空航天大學出版社 ,2020. [20]譚暉 .nRF 無線 SOC 單片機原理與高級應用 [M].北京 :北京航空航天大學出版社 ,2020. 致謝 25 致 謝 附錄 26 附錄 附錄Ⅰ 系統(tǒng)總原理圖 VCC403938373635343332EA/VPP31ALE30PSEN292827262524232221VSS20XLAT219XLAT118RES9RXD/1043215678TXD/11INT0/12INT1/13T0/14T1/15WR/16RD/17AT89S5112Y1XTAL30pFC1130pFC12GNDGND22UFC91KR5S110KR6VCCGNDVCC1KR11KR2LED1LED2VCC VCCKEY1KEY2KEY3KEY4S3S4S6S51KR91KR101KR111KR12GNDVCCKEY1KEY2KEY3KEY4VCCQ19012SpeakerGND1000pF/25VC2470pF/25VC3104C1C4Vin VoutGND7805 VCCGND12AC1TRAN1220V/9V/5WD1D3D2D410uFC510uFC6+RSWREVSS1VDD2GND3RS4RW5E6D07D18D29D310D411D512D613D714LCD1VCCGNDRSEWR1 2 3 4 5 6 7 8 9RP112345678CONS1GNDMISOSCKCECSNMISIIRQ+CECSNSCKMISOMISIIRQVCC403938373635343332EA/VPP31ALE30PSEN292827262524232221VSS20XLAT219XLAT118RES9RXD/1043215678TXD/11INT0/12INT1/13T0/14T1/15WR/16RD/17AT89S5112Y2XTAL30pFC1330pFC14GNDGND22UFC101KR7S210KR8VCCGNDVCC1KR3LED3VCCKEY1KEY2KEY3KEY412345678CONS2GNDMISOSCKCECSNMISIIRQ+CECSNSCKMISOMISIIRQVCCGND10uFC710uFC8Cap Pol1+DQ123DA1VCC4K7R4GNDDQVin VoutGNDLM317R13200R14600Vin VoutGNDLM317R15200R16600 附錄 27 附錄Ⅱ 仿真程序 副系統(tǒng)仿真程序 include include typedef unsigned char uint8。 typedef unsigned long uint32。 typedef int int16。 sbit DQ=P1^0。 //LED define nops()。 _nop_()。 _nop_()。 void start_temp_sensor(void)。 void send(int8 tem)。 /*18B20 復位函數(shù) */ void DS18b20_reset(void) { bit flag=1。 delay(1)。 delay(50)。 // delay(6)。 // presence=0 繼續(xù)下一步 } delay(45)。 } DQ=1。 for (i=0。 i++) { DQ = 1。 附錄 28 DQ = 0。 //4us DQ = val amp。 //最低位移出 delay(6)。 //右移一位 } DQ = 1。 } /* * 18B20 讀 1個字節(jié)函數(shù)從 1WIRE 總線上讀取一個字節(jié) */ uint8 read_byte(void) { uint8 i, value=0。 i8。 _nop_()。 DQ = 0。 //4us DQ = 1。 //4us if (DQ) value|=0x80。 //66us } DQ=1。 } void start_temp_sensor(void) { DS18b20_reset()。 // 發(fā) Skip ROM 命令 write_byte(0x44)。 // 讀出溫度暫放 int16 temp。 // 總線復位 write_byte(0xCC)。 // 發(fā)讀命令 temp_data[0]=read_byte()。 //溫度高 8位 附錄 29 temp = temp_data[1]。 temp |= temp_data[0]。 return (int8)temp。 /*CPU 開放所有中斷 */ ES=1。 /*定時器 /計時器 T1 為定時器模式,工作于方式 2*/ TH1=0xfd。 PCON=0x00。 /*數(shù)據(jù)串行傳輸工作于方式 1,波特率 9600bit/s,允許接收 */ TR1=1。 while(!TI)。 } void delay(uint16 i) { while (i)。 for (。 m) for (n=125。 n)。 LED = 0。 while (1) { start_temp_sensor()。 // 延時 1 秒 dataout[0] = read_temp()。 // 重置 LED 指示燈 send(dataout[0])。 typedef unsigned int uint16。 typedef char int8。 typedef long int32。 sbit RW = P1^4。 sbit BUSY = P0^7。 sbit Key2 = P3^5。 sbit Key4 = P3^7。 //BUZZER //LED sbit LED1 = P1^0。 define KEY_DELAY 5 // 按鍵掃描延時 //鍵值 define K_ALARM 1 define K_TL 2 define K_ADD 3 define K_SUB 4 /* LCD1602 顯示 */ void delay1ms(unsigned int ms)//延時 1 毫秒(不夠精確的) {unsigned int i,j。ims。j100。 } /* 等待繁忙標志 */ void wait(void) { P0 = 0xFF。 RW = 1。 EN = 1。 EN = 0。 RS=1。 EN=0。 delay1ms(1)。 delay1ms(1)。 } /* 寫命令 */ void w_cmd(uint8 cmd) { delay1ms(1)。 RW=0。 P0=cmd。 EN=1。 EN=0。 while (*p != 39。) { w_dat(*p++)。 w_dat(dat%100/10 + 39。)。039。 } /* 初始化 1602*/ void LCD1602_init(void) { delay1ms(15)。delay1ms(5)。delay1ms(5)。delay1ms(5)。delay1ms(5)。delay1ms(5)。 /
點擊復制文檔內(nèi)容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1