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

正文內(nèi)容

基于無線網(wǎng)絡(luò)的溫度檢測器課程設(shè)計(完整版)

2024-10-15 17:36上一頁面

下一頁面
  

【正文】 N N 無線發(fā)送流程圖 、 無線接收流程圖 N N 開始 TRX_CE=1, TXEN=0 接收部分檢測載波, CD 置高 ADDR正確? AM 置高 移去字頭地 址 CRC? AM 為低 DR 和 AM 置低 從 SPI 接收數(shù)據(jù) 開始 TRX_CE, TXEN 全部置高 結(jié)束 射頻寄存器開啟,數(shù)據(jù)打包發(fā)送, DR=1 TRXCE=1? AUTORET=1 前導(dǎo)碼完成后置 DR=0 N 無線接收流程圖 源程序代碼 接收板 、 ifndef __DS18B20_H__ define __DS18B20_H__ include sbit DS18B20_DQ = P1^0。 (2)顯示開關(guān)控制 顯示開關(guān)控制的功能是設(shè)置顯示、光標(biāo)及閃爍的開、關(guān)等。 LCD1602 共有 16個引腳,各管腳的功能如表 。 蜂鳴器報警模塊如圖 所示 , LED 燈連接如圖 所示,蜂鳴器及 LED 燈引腳圖如圖 所示。復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式,本設(shè)計采用按鈕復(fù)位電路。外接晶體諧振器以及電容 C1和 C2 構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。電源模塊中加裝了 LED燈,指示電源通斷。 SCK():芯片控制的時鐘線( SPI 時鐘)。 如有必要,可通過對特殊功能寄存器( SFR)區(qū)中的 8EH 單元的 D0位置位,可禁止 ALE 操作。在 flash 編程和校驗(yàn)時, P3 口也接收一些控制信號。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器時, P2 口送出高 8 位地址。 P1 口: P1口是一個具有內(nèi)部上拉電阻的 8 位雙向 I/O口, P1 輸出緩沖器能驅(qū)動 4 個 TTL 邏輯電平。 時 鐘 電 路C P U中 斷 系 統(tǒng)串 行 接 口并 行 接 口定 時 / 計 數(shù) 器R A MR O MT 0T 1P 0P 1 P 2 P 3 T X DR X DI N T OI N T I 圖 STC89C52單片機(jī)的基本結(jié)構(gòu) 2. STC89C52 單片機(jī)的引腳及功能 STC89C52 單片機(jī)的管腳分布如圖 所示。 表 DS18B20存儲器映像表 溫度低位 溫度高位 TH TL 配置 保留 保留 保留 8位 CRC 4. 對 DSl8B20的設(shè)計,需要注意以下問題: ( 1)對硬件結(jié)構(gòu)簡單的單線數(shù)字溫度傳感器 DSl8B20進(jìn)行操作,需要用較為復(fù)雜的程序完成。配置寄存器為高速暫存存儲器中的第五個字節(jié)。溫度采集端硬件框圖如圖 所示。由于 DSl8B20具有獨(dú)特的單總線接口方式在測溫時有明顯的優(yōu)勢,占用單片機(jī)的 I/O引腳資源少,和單片機(jī)的通信協(xié)議比較簡單,成本較低,而且具有負(fù)壓特性(電源極性接反時,溫度計不會因發(fā)熱而燒毀,只是不能正常工作),和其他數(shù)字溫度傳感器相比,它更適合本系統(tǒng)。 ( 9)硬件看門狗 (WDT)。 STC89C52單片機(jī)主要性能: ( 1)高速 :1個時鐘 /機(jī)器周期,增強(qiáng)型 8051內(nèi)核,速度比普通 8051快 8到 12倍。 二 、【設(shè)計原理及方案】 采用單片集成電路 AT89C52 結(jié)合數(shù)字型溫度傳感器 DS18B20 設(shè)計實(shí)現(xiàn)。本設(shè)計利用軟件 Keil 進(jìn)行系統(tǒng)程序設(shè)計,利用單片機(jī)學(xué)習(xí)板進(jìn)行硬件仿真,待仿真成功后進(jìn)行了實(shí)物制作和調(diào)試,最終成功設(shè)計出 了無線溫度檢測器。文中詳細(xì)介紹了溫度采集模塊、無線傳輸模塊、顯示模塊、溫度限設(shè)置模塊和報警電路的設(shè)計方法和過程。無線數(shù)據(jù)傳輸部分通過無線收發(fā)模塊 NRF24L01 傳輸。 ( 2)寬電壓 :— , — 。 ( 10)全雙工異步串行口 (UART),兼容普通 8051,可當(dāng) 2個串口使用。所以,選用DSl8B20作為溫度測量的傳感器。 電 源 模 塊單 片 機(jī)S T C 8 9 C 5 2無 線 收 發(fā) 模 塊N R F 2 4 L 0 1復(fù) 位 電 路溫 度 傳 感 器D S 1 8 B 2 0時 鐘 電 路 圖 溫度采集端硬件框圖 、溫度采集模塊 1. DSl8B20內(nèi)部結(jié)構(gòu) DSl8B20芯片的內(nèi)部結(jié)構(gòu)如圖 。 DSl8B20在工作時按此寄存器中的分辨率將溫度轉(zhuǎn)換成相應(yīng)精度的數(shù)值,其各位定義如表。編制程序時必須嚴(yán)格按芯片數(shù)據(jù)手冊提供的有關(guān)操作順序進(jìn)行,讀、寫程序要嚴(yán)格按要求編寫。 P 1. 01P 1. 12P 1. 23P 1. 34P 1. 45P 1. 56P 1. 67P 1. 78R S T9P 3. 0 (R X D )10P 3. 1 (T X D )11P 3. 2 (IN T 0 )12P 3. 3 (IN T 1 )13P 3. 4 (T 0)14P 3. 5 (T 1)15P 3. 6 (W R )16P 3. 7 (R D )17X T A L 218X T A L 119GND20P 2. 0 (A 8)21P 2. 1 (A 9)22P 2. 2 (A 10 )23P 2. 3 (A 11 )24P 2. 4 (A 12 )25P 2. 5 (A 13 )26P 2. 6 (A 14 )27P 2. 7 (A 15 )28P S E N29A L E / P R O G30E A /V P P31P 0. 7 (A D 7)32P 0. 6 (A D 6)33P 0. 5 (A D 5)34P 0. 4 (A D 4)35P 0. 3 (A D 3)36P 0. 2 (A D 2)37P 0. 1 (A D 1)38P 0. 0 (A D 0)39V C C40 圖 STC89C52 單片機(jī) 的 管腳圖 STC89C52 的 I/O 端口: P0 口: P0口是一個 8 位漏極開路的雙向 I/O口。對 P1 端口寫“ 1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。在這種應(yīng)用中,P2口使用很強(qiáng)的內(nèi)部上拉發(fā)送 1。 引腳 第二功能 (串行輸入口 ) (串行輸出口 ) (外中斷 0) (外中斷 1) (定時 /計數(shù)器 0) (定時 /計數(shù)器 1) (外部數(shù)據(jù)存儲器寫選通 ) (外部數(shù)據(jù)存儲器讀選通 ) 此外, P3 口還接收一些用于 flash 閃存編程和程序校驗(yàn)的控制信號。該位置位后,只有一條 MOVX 和 MOVC 指令才能將 ALE 激活。 MISO():芯片控制數(shù)據(jù)線( Master input slave output)。電源模塊設(shè)計如圖 ,圖 。對外接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。復(fù)位電路圖如圖 所示。 圖 蜂鳴器報警模塊 圖 LED 燈報警模塊 圖 蜂鳴器及 LED 燈連接圖 、 鍵盤電路 本系統(tǒng)選擇使用獨(dú)立式按鍵。 表 LCD1602管腳功能介紹表 引腳 符號 狀態(tài) 功能 1 VSS 輸入 電源地 2 Vdd 輸入 電源 +5V 3 V0 輸入 對比度控制端 4 RS 輸入 寄存器選擇 5 R/W 輸入 讀、寫操作 6 E 輸入 使能信號 7 DB0 三態(tài) 數(shù)據(jù)總線( LSB) 8 DB1 三態(tài) 數(shù)據(jù)總線 9 DB2 三態(tài) 數(shù)據(jù)總線 10 DB3 三態(tài) 數(shù)據(jù)總線 11 DB4 三態(tài) 數(shù)據(jù)總線 12 DB5 三態(tài) 數(shù)據(jù)總線 13 DB6 三態(tài) 數(shù)據(jù)總線 14 DB7 三態(tài) 數(shù)據(jù)總線( MSB) 15 LEDA 輸入 背光 +5V 16 LEDK 輸入 背光地 說明: V0:液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,使用時可以通過一個 10k 的電位器調(diào)整對比度。其中: D 表示顯示: 1 為開, 0 為關(guān); C表示光標(biāo): 1為開, 0 為關(guān); B表示閃爍: 1為開, 0為關(guān)。 extern void DS18B20_Delay( unsigned int n )。 DR 置高 TRXCE=0? 進(jìn)入空閑狀態(tài) 結(jié)束 for(i = 0 。 _nop_()。 } } unsigned char DS18B20_Read_Byte( ) { unsigned char dat,i。 _nop_()。 DS18B20_DQ = 1。 DS18B20_Delay(10)。 // _delay_ms(750)。 if(temp0xfff) { flag_temper=1。 sbit NRF24L01_MOSI = P1^7。 //extern unsigned char NRF24L01_SPI_Read_Buf(unsigned char reg, unsigned char *pBuf, unsigned char uchars)。 endif 、 include include unsigned char NRF24L01_TX_Buffer[3]。 unsigned char NRF24L01_SPI_RW(unsigned char byte) { unsigned char i。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 } void NRF24L01_TxPacket(unsigned char *tx_buf) { unsigned char i = 0。 } void NRF24L01_Init() { unsigned int i = 45000。 NRF24L01_SPI_RW_Reg(NRF24L01_WRITE_REG + NRF24L01_EN_RXADDR, 0x01)。 void main() { Temp_Buffer = Get_temp()。0x00ff。in。 extern void LCD1602_write_(unsigned char )。j123。 } void LCD1602_write_data(unsigned char dat) { LCD1602_RS = 1。 } } void LCD1602_Init() { LCD1602_EN = 0。 sbit NRF24L01_MOSI = P1^7。 //extern unsigned char NRF24L01_SPI_Read_Buf(unsigned char reg, unsigned char *pBuf, unsigned char uchars)。 endif 、 include include unsigned char NRF24L01_TX_Buffer[32]。 unsigned char const NRF24L01_RX5_ADDRESS[1]= {0x39}。 i++ ) { NRF24L01_MOSI = (byte amp。 NRF24L01_SCK = 0。 NRF24L01_CSN = 1。 NRF24L01_CS
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1