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

正文內(nèi)容

基于ds18b20的單片機無線溫度采集系統(tǒng)本科畢業(yè)論文(存儲版)

2025-07-27 17:29上一頁面

下一頁面
  

【正文】 of 0 to 125 degrees Celsius, the precision of 1 c.Keywords: MCS51。無線傳感器節(jié)點采用無線網(wǎng)狀網(wǎng)設(shè)備,可以組成龐大的網(wǎng)絡(luò)結(jié)構(gòu),支持多達(dá)上千個測點同時進(jìn)行大型結(jié)構(gòu)試驗。處理器選用最常用的MCS51單片機。正是基于此,本設(shè)計才采用AT89C52作為核心控制器件。P3口,P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。/EA/VPP,在AT89C52訪問外部程序存儲器期間,不管是否有內(nèi)部程序存儲器,/EA都要保持低電平。89C52單片機設(shè)計了兩個8位的特殊功能寄存器來控制定時器/計數(shù)器的工作狀態(tài),即TMOD和TCON,它倆都在特殊功能寄存器區(qū)。(1)、復(fù)位電路。圖4 ASM1117穩(wěn)壓芯片DS18B20是美國DALLAS公司生產(chǎn)的單總線數(shù)字溫度傳感器,從DS18B20讀出或?qū)懭诵畔H需要一根口線,這是它的最大特點和優(yōu)勢。DS18B20雖然只與微處理器鏈接一條口線,但仍然可實現(xiàn)與微處理器的雙向通訊。此外,其突出特點是功耗非常低,輸出發(fā)射模式時電流只有11mA,內(nèi)建空閑模式與關(guān)機模式,便于節(jié)能。NRF24L01P+PA+LNA無線模塊集成度極高,*,方便嵌入于任何空間緊張的產(chǎn)品中,而在本系統(tǒng)中通過SPI口控制NRF24L01P+PA+LNA無線模塊即可完成超遠(yuǎn)距離無線數(shù)據(jù)傳送系統(tǒng)的設(shè)計。若數(shù)碼管的位數(shù)不大于8位時,只需兩個8位I/O口。 DS18B20溫度采集模塊 DS18B20簡介前面已經(jīng)介紹,該模塊采用美國DALLAS公司推出的數(shù)字測溫芯片DS18B20,它體積小,有多種封裝,具有獨特的單線接口。DS18B20中的溫度傳感器剛好能自動完成對外界環(huán)境溫度的測量,本系統(tǒng)是以12位轉(zhuǎn)化為例介紹它的測溫方法。 tempwritebyte(0xcc)。 //溫度在寄存器中為12位, temp=f_temp*10+。雖然8個LED是依次顯示,但是受視覺分辨率的影響,看到的現(xiàn)象是4個LED同時工作。j0。在下位機部分時,其被置為發(fā)送模式。MOSI,芯片控制數(shù)據(jù)線(Master output slave input)。 CE=0。 SPI_RW_Reg(WRITE_REG + RX_PW_P1, RX_PLOAD_WIDTH)。 // IRQ收發(fā)完成中斷響應(yīng),16位CRC CE = 1。MCU與數(shù)碼管、DS18BNrf24l01模塊和上位機都有通信的實現(xiàn),都涉及數(shù)據(jù)的讀取或?qū)懭搿纹瑱C控制并檢測溫度,實時地通過RS232串口將溫度數(shù)據(jù)傳送給PC機。USART(Universal Synchronous/Asynchronous Receiver/Transmitter)是指:同步/異步串行接收/發(fā)送器,USART是一個全雙工通用同步/異步串行收發(fā)模塊,該接口是一個高度靈活的串行通信設(shè)備。 InputLen=2SPI接口的英文名全稱是Serial Peripheral Interface,意思是串行外圍接口,是摩托羅拉公司首先在自己的MC68HCXX系列微型處理器上開始定義的。在多個從器件,即多個無線發(fā)送點向一個上位機傳輸數(shù)據(jù)的系統(tǒng)中,每個從器件需要獨立的使能信號,硬件上比單個從系統(tǒng)要復(fù)雜一些。DS18B20的數(shù)據(jù)讀寫由單片機來完成,包括初始化、讀數(shù)據(jù)和寫數(shù)據(jù)。因這些延時均為15us的整數(shù)倍,因此也可編寫一個Delayl5(n)函數(shù),并使它成為隨時能夠調(diào)用的延時子函數(shù),該函數(shù)就可以實現(xiàn)約15us*n的延時。按硬件電路圖,DS18B20主要C程序如下:void display(uchar num,uchar dat) //數(shù)據(jù)顯示程序{ uchar i。 case 2:i=0x0b。j0。 //100取余再用10取余,為溫度的小數(shù)位 display(0,i)。我在別人那里找到了相關(guān)DS18B20的軟硬件資料,然后自己組合了DS18B20模塊的子程序,自己設(shè)計了LED顯示的子程序,就直接用主程序調(diào)用了這些子程序,結(jié)果總是不很理想,如數(shù)碼管的顯示閃爍很厲害、數(shù)碼管只是瞬間顯示,數(shù)碼管顯示亂碼等,但是很慶幸的是這些問題卻表明我的硬件沒有問題,我隨后都通過資料和同學(xué)老師的幫助解決了軟件上的問題。該方案簡單易行,數(shù)據(jù)傳輸可靠性高。sbit CE =P1^0。x) for(y=10。 case 1:i=0x0d。}void dis_temp(uint t) //顯示溫度數(shù)值函數(shù)t傳遞的是整型的溫度{ uchar i,j。 //在第2個數(shù)碼管上顯示,有小數(shù)點 delay(4)。uchar SPI_Read(uchar reg)。 //狀態(tài)標(biāo)志sbit RX_DR =sta^6。 // chip enable CSN=1。 SPI_RW_Reg(WRITE_REG + RF_SETUP, 0x07)。 SCK = 1。 CSN = 1。 }/*函數(shù):uint SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars)/*功能: 用于讀數(shù)據(jù),reg:為寄存器地址,pBuf:為待讀出數(shù)據(jù)地址,uchars:讀出數(shù)據(jù)的個數(shù)uchar SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars){ uchar status,uchar_ctr。 }/*函數(shù):uint SPI_Write_Buf(uchar reg, uchar *pBuf, uchar uchars)/*功能: 用于寫數(shù)據(jù):為寄存器地址,pBuf:為待寫入數(shù)據(jù)地址,uchars:寫入數(shù)據(jù)的個數(shù)uchar SPI_Write_Buf(uchar reg, uchar *pBuf, uchar uchars){ uchar status,uchar_ctr。 // }/*函數(shù):void SetRX_Mode(void)/*功能:數(shù)據(jù)接收配置 void SetRX_Mode(void){ CE=0。 CE = 1。 return revale。 }//串口初始化void StartUART( void ){ SCON = 0x50。 //查詢法 TI = 0。 RxBuf[2] = 0x00。在此尤其要感謝寢室的兄弟,感謝他們不厭其煩的指導(dǎo)我學(xué)的最差的C語言。 第48頁 。還有在考研中的一些經(jīng)歷也鼓勵我提高自己的綜合素質(zhì),并要求自己給自己創(chuàng)造了更多鍛煉的機會,讓我在實際鍛煉中不斷進(jìn)步。 init_led4()。}//串口顯示void R_S_Byte(uchar R_Byte){ SBUF = R_Byte。 CE=1。 //讀取數(shù)據(jù)完成標(biāo)志 wendu=rx_buf[1]*256+rx_buf[2]。 CE=0。 CSN = 1。 CSN = 1。 CSN = 1。 SPI_RW(reg)。 0x80)。 // 允許接收地址頻道0 5 SPI_RW_Reg(WRITE_REG + RF_CH, 0)。}//*******************************************/*NRF24L01初始化void init_NRF24L01(void){ inerDelay_us(100)。void nRF24L01_TxPacket(uchar * tx_buf)。void init_NRF24L01(void)。 i=t%100/10。 default:break。P2=i。 for(x=z。sbit MOSI =P1^3。本文主要闡述了無線溫度采集設(shè)計方案。單片機引腳和單片機中斷控制,C語言,通信技術(shù)(一線總線,SPI總線,RS232總線),CAD制圖,模擬電路基礎(chǔ)等等,在整個過程中遇到了困難,也獲得了更多的知識。 //在第2個數(shù)碼管上顯示,有小數(shù)點 delay(4)。}void dis_temp(uint t) //顯示溫度數(shù)值函數(shù)t傳遞的是整型的溫度{ uchar i,j。P2=i。下面是對本系統(tǒng)的部分調(diào)試過程及結(jié)果。因C51編譯器能夠為DS18B20提供若干內(nèi)部調(diào)用函數(shù),其編譯結(jié)果就是在對應(yīng)位置實時嵌入一個NOP匯編指令,所以短時間延時就可以利用_nop_()函數(shù)實現(xiàn)。ROM操作命令均為8位,這些8位的命令代碼已經(jīng)被廣泛應(yīng)用,它們分別為:讀ROM(代碼0x33H)、匹配ROM(代碼0x55H)、跳過ROM(代碼0xCCH)、搜索ROM(代碼0xFOH) 和告警搜索(代碼0xECH)命令;DS18B20內(nèi)部的存儲器操作命令為:寫暫存存儲器(代碼0X4EH)、讀暫存存儲器 (代碼0xBEH)、復(fù)制暫存存儲器(代碼0x48H)、溫度變換(代碼0x44H)、重新調(diào)出EERAM(代碼0xB8H)以及讀電源供電方式(代碼0xB4H)命令。(4)NSS–從器件使能信號,由主器件控制,有的IC會標(biāo)注為CS(Chip select)。 nRF24L01與單片機的通信如前面所述,Nrf24l01模塊是采用SPI總線技術(shù),實現(xiàn)數(shù)據(jù)在模塊和AT89C52間的傳輸,也是微處理器控制該模塊的關(guān)鍵。最后要關(guān)閉通信端口,在完成串行通信操作后,將串行通信端口的資源歸還給操作系統(tǒng)。電纜線為9針的RS232電纜。圖15 上位機顯示流程圖 4 模塊間的通信通信,是指主控單元與其他能實現(xiàn)控制功能的單元的數(shù)據(jù)交換和控制。/*函數(shù):void SetRX_Mode(void)/*功能:數(shù)據(jù)接收配置 void SetRX_Mode(void){ CE=0。 SPI_RW_Reg(WRITE_REG + EN_RXADDR, 0x03)。圖13 發(fā)送模式流程圖相關(guān)發(fā)送模塊子程序如下。SCK,芯片控制的時鐘線(SPI時鐘)。 //100取余再用10取余,為溫度的小數(shù)位 display(0,i)。void dis_temp(uint t) //顯示溫度數(shù)值函數(shù)t傳遞的是整型的溫度{ uchar i,j。位碼也就是LED的顯示使能端,對于共陰級的LED而言,低電平使能。 //兩個字節(jié)組合為1個字 temp=temp|a。 dsreset()。所以,本設(shè)計中DS18B20與單片機接口電路圖8。nRF24L01無線傳輸模塊是為了讓檢測的數(shù)據(jù)實時發(fā)送給遠(yuǎn)處的PC上位機系統(tǒng),實現(xiàn)遠(yuǎn)程監(jiān)控等。這樣當(dāng)一個光源反復(fù)通斷,在通斷頻率較低時,人眼可以發(fā)現(xiàn)亮度的變化;而通斷頻率增高時,眼睛就逐漸不能發(fā)現(xiàn)相應(yīng)的亮度變化了。NRF24L01P+PA+LNA無線模塊的核心為挪威NORDIC公司最新的高性能無線數(shù)傳芯片NRF24L01,經(jīng)過國內(nèi)的專業(yè)設(shè)計和改造,增加大功率PA和LNA芯片,射頻開關(guān),帶通濾波器等組成了專業(yè)的全雙向的射頻功放,即現(xiàn)在的Nrf24l01模塊,使得有效通信距離得到極大拓展。圖5 DS18B20電路圖  該系統(tǒng)的無線傳輸模塊采用的是挪威VLSI公司推出的單片射頻收發(fā)一體器件nRF24L01 芯片,而本文采購的是基于nRF24L01開發(fā)的由頻率合成器、接收解調(diào)器、功率、晶體振蕩器和調(diào)制器組成的無線收發(fā)模塊,也因此有了相應(yīng)的固定的豐富的軟件資料,硬件上也不需外加,該模塊會自動處理字頭和CRC(循環(huán)冗
點擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1