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

正文內(nèi)容

基于at89s52的無(wú)線溫度測(cè)量系統(tǒng)(畢業(yè)設(shè)計(jì))(已改無(wú)錯(cuò)字)

2023-07-19 15:30:27 本頁(yè)面
  

【正文】 其外圍電路組成。nRF24L 01 是一款新型單片射頻收發(fā)器件,工作于 GHz~ GHz 世界通用的 ISM 頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型 ShockBurst 技術(shù),其中輸出功率和通信頻道可通過(guò)程序進(jìn)行配置。nRF24L 01 功耗低 ,在以6dBm 的功率發(fā)射時(shí),工作電流也只有 9mA。接收時(shí),工作電流只有 ,多種低功率工作模式(掉電模式和空閑模式)使節(jié)能設(shè)計(jì)更方便。nRF24L01 主要特性如下: GFSK 調(diào)制,硬件集成 OSI 鏈路層; 具有自動(dòng)應(yīng)答和自動(dòng)再發(fā)射功能; 片內(nèi)自動(dòng)生成報(bào)頭和 CRC 校驗(yàn)碼; 數(shù)據(jù)傳輸率為 l Mb/s 或 2Mb/s;SPI 速率為 0 Mb/s~10 Mb/s;125 個(gè)頻道與其他 nRF24 系列射頻器件相兼容; QFN20 引腳 4 mm4 mm 封裝;供電電壓為 V~ V; 引腳功能及描述 無(wú)線模塊的引腳排列如圖所示。圖 nRF24L01 原理圖GND:電源地。VCC:電源輸入端,電壓范圍是 至 。CE:芯片模式控制線。在 CSN 為底的情況下,CE 協(xié)同 nRF24L01 的CONFIG 寄存器共同決定 nRF24L01 的狀態(tài)。CSN:芯片的片選線,CSN 為底電平芯片工作。SCK:SPI 時(shí)序的時(shí)鐘信號(hào)線。IRQ:中斷標(biāo)志位。有三種情況 IRQ 的引腳會(huì)輸出低電平。當(dāng) nRF24L01內(nèi)部寄存器中的 RX_RD 寄存器位被拉高,則表明 nRF24L01 接收到了數(shù)據(jù)。當(dāng) nRF24L01 內(nèi)部寄存器中的 TX_RD 寄存器位被拉高,則表明在有效應(yīng)答時(shí)間范圍內(nèi)模塊收到了應(yīng)答信號(hào)(在自動(dòng)應(yīng)答模式下) 。當(dāng) nRF24L01 內(nèi)部寄存器中的 MAX_RT 寄存器位被拉高,則表明自動(dòng)重發(fā)次數(shù)已達(dá)到設(shè)定的最大重發(fā)次數(shù),并且在此期間沒(méi)有接受到有效地應(yīng)答信號(hào)。以上三種情況都會(huì)使 IRQ 中斷輸出端輸出低電平。 工作模式 通過(guò)配置寄存器可將 nRF24L01 配置為發(fā)射、接收、空閑及掉電四種工作模式,如表 所示。 表 nRF24L01 工作模式模式 PWR_UP PRIM_RX CE FIFO 寄存器狀態(tài)接收模式 1 1 1 發(fā)射模式 1 0 1 數(shù)據(jù)在 TX FIFO 寄存器中發(fā)射模式 1 0 1→0 停留在發(fā)送模式,直至數(shù)據(jù)發(fā)送完待機(jī)模式 2 1 0 1 TX_FIFO 為空待機(jī)模式 1 1 0 無(wú)數(shù)據(jù)傳輸?shù)綦?0 待機(jī)模式 1 主要用于降低系統(tǒng)平均電流,在該模式下晶體振蕩器正常工作;待機(jī)模式 2 則是在當(dāng) FIFO 寄存器為空且 CE=1 時(shí)進(jìn)入此模式;待機(jī)模式下,所有配置字仍然保留。在掉電模式下電流損耗最小,同時(shí) nRF24L01 也不工作,但其所有配置寄存器的值仍然保留。 工作原理 發(fā)射數(shù)據(jù)時(shí),首先將 nRF24L01 配置為發(fā)射模式,配置發(fā)射模式包括按照時(shí)序由 SPI 口將接收節(jié)點(diǎn)地址 TX_ADDR 和有效數(shù)據(jù) TX_PLD 寫(xiě)入 nRF24L01緩存區(qū),配置自動(dòng)應(yīng)答,設(shè)置數(shù)據(jù)傳輸率,使能 CRC 校驗(yàn)等等。TX_PLD 必須在 CSN 為低時(shí)連續(xù)寫(xiě)入,而 TX_ADDR 在發(fā)射時(shí)寫(xiě)入一次即可,然后 CE 置為高電平并保持至少 10μs,延遲 130μs 后發(fā)射數(shù)據(jù)。若自動(dòng)應(yīng)答開(kāi)啟,那么nRF24L01 在發(fā)射數(shù)據(jù)后立即進(jìn)入接收模式,接收應(yīng)答信號(hào)(自動(dòng)應(yīng)答接收地址應(yīng)該與接收節(jié)點(diǎn)地址 TX_ADDR 一致) 。如果收到應(yīng)答,則認(rèn)為此次通信成功,TX_DS 置高,同時(shí) TX_PLD 從 TX FIFO 中清除。若未收到應(yīng)答,則自動(dòng)重新發(fā)射該數(shù)據(jù)(自動(dòng)重發(fā)已開(kāi)啟),若重發(fā)次數(shù)(ARC) 達(dá)到上限,MAX_RT 置高,TX FIFO 中數(shù)據(jù)保留以便在次重發(fā)。MAX_RT 或 TX_DS 置高時(shí),使 IRQ 變低,產(chǎn)生中斷,通知 MCU。最后發(fā)射成功時(shí),若 CE 為低則 nRF24L01 進(jìn)入空閑模式1。若發(fā)送堆棧中有數(shù)據(jù)且 CE 為高,則進(jìn)入下一次發(fā)射。若發(fā)送堆棧中無(wú)數(shù)據(jù)且CE 為高,則進(jìn)入空閑模式 2。 接收數(shù)據(jù)時(shí),首先將 nRF24L01 配置為接收模式,接著延遲 130μs 進(jìn)入接收狀態(tài)等待數(shù)據(jù)的到來(lái)。當(dāng)接收方檢測(cè)到有效的地址和 CRC 時(shí),就將數(shù)據(jù)包存儲(chǔ)在 RX FIFO 中,同時(shí)中斷標(biāo)志位 RX_DR 置高,IRQ 變低,產(chǎn)生中斷,通知MCU 去取數(shù)據(jù)。若此時(shí)自動(dòng)應(yīng)答開(kāi)啟,接收方則同時(shí)進(jìn)入發(fā)射狀態(tài)回傳應(yīng)答信號(hào)。最后接收成功時(shí),若 CE 變低,則 nRF24L01 進(jìn)入空閑模式 1。在寫(xiě)寄存器之前一定要進(jìn)入待機(jī)模式或掉電模式。表 常用配置寄存器地址(H) 寄存器名稱 功能00 CONFIG 設(shè)置 24L01 工作模式01 EN_AA 設(shè)置接收通道及自動(dòng)應(yīng)答02 EN_RXADDR 使能接收通道地址03 SETUP_AW 設(shè)置地址寬度04 SETUP_RETR 設(shè)置自動(dòng)重發(fā)數(shù)據(jù)時(shí)間和次數(shù)07 STATUS 狀態(tài)寄存器,用來(lái)判定工作狀態(tài)0A~0F RX_ADDR_P0~P5 設(shè)置接收通道地址10 TX_ADDR 設(shè)置接收接點(diǎn)地址11~16 RX_PW_P0~P5 設(shè)置接收通道的有效數(shù)據(jù)寬度 液晶顯示模塊圖 液晶顯示模塊電路圖液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點(diǎn),在微型儀表和低功耗應(yīng)用系統(tǒng)中得到越來(lái)越廣泛的應(yīng)用。在發(fā)射端和接收端同時(shí)采用 LCD1602,方便比較發(fā)射和接受到的溫度值。 LCD1602 管腳介紹1602 采 用 標(biāo) 準(zhǔn) 的 16 腳 接 口 , 其 中 :1 腳 : VSS 為 電 源 地 。2 腳 : VDD 接 5V 電 源 正 極 。3 腳 : V0 為 液 晶 顯 示 器 對(duì) 比 度 調(diào) 整 端 , 接 正 電 源 時(shí) 對(duì) 比 度 最 弱 , 接 地 電源 時(shí) 對(duì) 比 度 最 高 , 當(dāng) 對(duì) 比 度 過(guò) 高 時(shí) 會(huì) 產(chǎn) 生 “鬼 影 ”, 使 用 時(shí) 可 以 通 過(guò) 一 個(gè) 10K 的 電 位 器 調(diào) 整 對(duì) 比 度 。4 腳 : RS 為 寄 存 器 選 擇 , 高 電 平 1 時(shí) 選 擇 數(shù) 據(jù) 寄 存 器 、 低 電 平 0 時(shí)選 擇 指 令 寄 存 器 。5 腳 : RW 為 讀 寫(xiě) 信 號(hào) 線 , 高 電 平 (1)時(shí) 進(jìn) 行 讀 操 作 , 低 電 平 (0)時(shí) 進(jìn) 行寫(xiě) 操 作 。6 腳 : E(或 EN)端 為 使 能 (enable)端 。7~ 14 腳 : D0~ D7 為 8 位 雙 向 數(shù) 據(jù) 端 。15~ 16 腳 : 空 腳 或 背 燈 電 源 。 15 腳 背 光 正 極 , 16 腳 背 光 負(fù) 極 。 LCD1602 的指令說(shuō)明及時(shí)序1602 液晶模塊內(nèi)部的控制器共有 11 條控制指令,如表 所示:表 :控制命令表序號(hào) 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D01 清顯示 0 0 0 0 0 0 0 0 0 12 光標(biāo)返回 0 0 0 0 0 0 0 0 1 *3 置輸入模式 0 0 0 0 0 0 0 1 I/D S4 顯示開(kāi)/關(guān)控制 0 0 0 0 0 0 1 D C B5 光標(biāo)或字符移位 0 0 0 0 0 1 s/r r/l * *6 置功能 0 0 0 0 1 DL N F * *7 置字符發(fā)生存貯器地址 0 0 0 1 字符發(fā)生存貯器地址8 置數(shù)據(jù)存貯器地址 0 0 1 顯示數(shù)據(jù)存貯器地址9 讀忙標(biāo)志或地址 0 1 BF 計(jì)數(shù)器地址10寫(xiě)數(shù)到 CGRAM 或DDRAM)1 0要寫(xiě)的數(shù)據(jù)內(nèi)容11從 CGRAM 或DDRAM 讀數(shù)1 1讀出的數(shù)據(jù)內(nèi)容LCD1602 工作狀態(tài)有讀狀態(tài),寫(xiě)指令和讀數(shù)據(jù)命令,控制信號(hào)具體設(shè)置如下表 :表 LCD1602 工作狀態(tài)命令讀狀態(tài) 輸入 RS=L,R/W=H,E=H 輸出 D0—D7=狀態(tài)字寫(xiě)指令 輸入 RS=L,R/W=L,D0—D7=指令碼,E= 高脈沖輸出 無(wú)讀數(shù)據(jù) 輸入 RS=H,R/W=H,E=H 輸出 D0—D7=數(shù)據(jù)圖 液晶讀操作操作時(shí)序圖 寫(xiě)操作時(shí)序 電源模塊圖 電源模塊原理圖整個(gè)系統(tǒng)我采用了+9V 的單電源供電,像 AD590、AD623 電壓供電范圍大的器件采用+9V 供電,單片機(jī)、液晶、 OP0AD7896 都是采用+5V 供電,而無(wú)線發(fā)射接收模塊電壓范圍小,采用+ 供電。為了方便系統(tǒng)電源管理整個(gè)系統(tǒng)只入+9V 的電壓,而 +5V 和+ 的電壓直接采用三端集成穩(wěn)壓器件來(lái)實(shí)現(xiàn),這樣可以大大是電路的設(shè)計(jì)簡(jiǎn)便化。另外在系統(tǒng)設(shè)計(jì)中還添加了很多濾波電容,盡量減小系統(tǒng)電源給整個(gè)系統(tǒng)帶來(lái)干擾。 本章小結(jié)本章主要是講述了對(duì)于各個(gè)模塊的電路設(shè)計(jì),其中主要是單片機(jī)模塊、溫度采集與放大模塊、信號(hào)電壓調(diào)整電路、模數(shù)轉(zhuǎn)換模塊、無(wú)線發(fā)射模塊、液晶顯示模塊、電源模塊。比較詳細(xì)介紹了主要芯片的工作原理、特點(diǎn)和性能,著重分析了硬件電路的設(shè)計(jì)以及工作原理。通過(guò)這一章的介紹,可以了解本系統(tǒng)詳細(xì)的硬件設(shè)計(jì)方案。第三章 軟件系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 軟件的總體設(shè)計(jì) 發(fā)送端軟件總體設(shè)計(jì)發(fā)送部分軟件的一個(gè)循環(huán)程序。首先是初始化 LCD1602,顯示第一行的“temperature:” ,程序的主體是 AD7896 采樣電壓值并把它轉(zhuǎn)換成數(shù)字信號(hào)送給單片機(jī),單片機(jī)進(jìn)行數(shù)據(jù)處理后,控制 LCD1602 顯示。定時(shí)器主要是做500ms 的定時(shí),當(dāng)定時(shí)器溢出后,也就是定時(shí)達(dá)到 500ms 發(fā)送一次數(shù)據(jù)。下圖 為發(fā)送端總體軟件設(shè)計(jì)流程圖。開(kāi)始初始化 L C D初始化定時(shí)器L C D 在第二行顯示溫度A D 7 8 9 6 采樣數(shù)據(jù)處理 定時(shí)器溢出 ?無(wú)線發(fā)送數(shù)據(jù)YN圖 發(fā)送端軟件總體設(shè)計(jì) 接收端軟件總體設(shè)計(jì)接收部分的總體思路是先初始化 LCD1602 和單片機(jī) I/O 口,再將nRF24L01 配置成接收模式,然后就是一個(gè)無(wú)線循環(huán),單片機(jī)不斷地讀nRF24L01 的工作狀態(tài)寄存器 STATUS 來(lái)監(jiān)測(cè)接收模塊的工作狀態(tài)。當(dāng)發(fā)現(xiàn)nRF24L01 接收到了數(shù)據(jù)后單片機(jī)負(fù)責(zé)存儲(chǔ)數(shù)據(jù),發(fā)送發(fā)送應(yīng)答信號(hào),并且控制LCD1602 顯示。下圖為圖 接收端軟件設(shè)計(jì)流程圖。開(kāi)始初始化 L C D初始化 I O 口接收模式讀寄存器 S T A T U S 收到數(shù)據(jù) ? 清標(biāo)志位L C D 顯示溫度YN數(shù)據(jù)處理Y圖 接收端軟件總體設(shè)計(jì) 各模塊軟件設(shè)計(jì) 模數(shù)轉(zhuǎn)換AD7896 是 12 位高速 AD 轉(zhuǎn)換芯片。采用串行輸出的方式,并且 AD7896有兩種工作模式,一種是高速轉(zhuǎn)換模式,一種是自動(dòng)休眠模式。我采用高速轉(zhuǎn)換模式,其操作流程圖如圖 所示。開(kāi) 始初始化A D 轉(zhuǎn)換數(shù)值計(jì)算A S C 碼轉(zhuǎn)換結(jié)束圖 AD7896 工作流程圖流程圖中的初始化是對(duì) AD7896 的輸入端口付初始值,主要是保證 AD 轉(zhuǎn)換開(kāi)始轉(zhuǎn)換時(shí)的有效性。AD 轉(zhuǎn)換主要完成拉低 AD_CONVST,啟動(dòng)轉(zhuǎn)換,隨后拉高確保模數(shù)轉(zhuǎn)換器一直處于高速轉(zhuǎn)換模式。8us 后通過(guò) SCLK 來(lái)輸入一個(gè)讀取的模擬時(shí)鐘,AD7896 內(nèi)部寄存器在 SCLK 下降沿輸出數(shù)據(jù),單片機(jī)在SCLK 上升是讀取數(shù)據(jù),經(jīng)過(guò) 16 個(gè)時(shí)鐘周期后數(shù)據(jù)被全部讀出,完成 AD 轉(zhuǎn)換。數(shù)值計(jì)算主要完成將 AD 采樣得到的二進(jìn)制信息轉(zhuǎn)換成對(duì)應(yīng)的模擬信號(hào)的十進(jìn)制數(shù)值,并把十進(jìn)制的數(shù)按位拆分存入數(shù)組 temperature 中。設(shè)通過(guò) AD7896 得到的二進(jìn)制數(shù)值為 GETDATA,AD7896 的基準(zhǔn)電壓是 AD7896VCC,最終得到的模擬信號(hào)對(duì)應(yīng)的數(shù)值為 ADDATA,則 (31)??12 GETDA7896VCA50m???流程圖中的 ASC 碼轉(zhuǎn)換模塊主要完成將數(shù)值計(jì)算得到的數(shù)組中存入的每一位的值轉(zhuǎn)換成 ASC 碼,主要是為了 LCD1602 顯示更便利。在數(shù)值計(jì)算中還對(duì)系統(tǒng)誤差的校準(zhǔn),系統(tǒng)誤差的校準(zhǔn)的主要目的是為了減小由于溫度傳感器 AD590 帶來(lái)的誤差。AD590 的非線性誤差如下圖 所示:圖 AD590 非線性誤差通過(guò)觀察 AD590 的非線性誤差的曲線特性可發(fā)現(xiàn),當(dāng)溫度范圍從 0 到100℃AD590 的線性誤差具有一定的線性性,我們可以利用這個(gè)特性來(lái)校準(zhǔn)AD590 的誤差。我們可以看到在溫度范圍為 0℃至 100℃AD5902 測(cè)量的溫度偏高,我們可以通過(guò)軟件將測(cè)量的溫度減去由于誤差產(chǎn)生的一部分溫度,從而來(lái)提高測(cè)量溫度的精度。下面我們來(lái)計(jì)算軟件校準(zhǔn)所需的一次函數(shù),如下圖,做F 點(diǎn)關(guān)于 C 點(diǎn)對(duì)稱點(diǎn) E,連接 BE,則直線 BE 是我們所求的函數(shù),設(shè)函數(shù)的方程為 。ykxb??由直線 BE 經(jīng)過(guò)點(diǎn) B(0,0) ,則 (32)b0?由直線 BE 經(jīng)過(guò)點(diǎn) E(100,) ,則 (33)?解得 (34)?由于單片機(jī)計(jì)算的管理在設(shè)計(jì)時(shí)將采樣到的數(shù)據(jù)擴(kuò)大了 100 倍,則曲線誤差也擴(kuò)大了 100 倍,但是誤差曲線任然是: (35).8?圖 AD590 非線性誤差軟件校準(zhǔn)算法示意圖 LCD1602 液晶顯示部分開(kāi) 始初始化設(shè)置顯示第一行寫(xiě)數(shù)據(jù)結(jié)束設(shè)置顯示第二行寫(xiě)數(shù)據(jù)圖 LCD1602 顯示流程圖流程圖中的初始化主要是對(duì) LCD1602
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1