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

正文內(nèi)容

基于單片機多路溫度巡回檢測儀設(shè)計 畢業(yè)設(shè)計-預(yù)覽頁

2025-03-30 11:28 上一頁面

下一頁面
 

【正文】 ..........................................................................................23 參考文獻 .....................................................................................................24 附錄一:電路原理圖 ....................................................................................25 附錄二:總程序 ...........................................................................................26 1 1 緒論 隨著社會的不斷發(fā)展,各種電子產(chǎn)品的不斷更新?lián)Q代,使得電子產(chǎn)品智能化的要求越來越高 .單片機就是在一塊半導(dǎo)體硅片上集成了微處理器( CPU),存儲器( RAM, ROM, EPROM)和各種輸入,輸出接口,這樣一塊集成電路芯片具有一臺計算機的屬性,被稱為單片微型計算機。 通過本選題的研究,可以掌握單片機改造的基礎(chǔ)知識和步驟,對單片機的應(yīng)用也有了最基本的了解。溫室大棚中溫度變化范圍一般為 0176。 c。 c,精度為: 177。這樣可以提升工作效率,而且又能精確得知溫度變化,可以及時準確 地控制溫度達到預(yù)期要求,對作物生長和糧食儲藏非常有利,從而達到農(nóng)作物高生產(chǎn)糧食高質(zhì)量。測量上下限要能夠包含測量點的最高和最低溫度,并留有一定的裕值。使得檢測更加及時準確。并且細致分析選擇參數(shù)合理且精確度高的配件。而且在對采集的信號進行放大時容易受溫度及周圍電磁的影響,從而產(chǎn)生較大誤差。 方案二: 51系列單片機由于其具有的集成度高、處理功能強、可靠性高、系統(tǒng)結(jié)構(gòu)簡單、價格低廉等優(yōu)點,應(yīng)用資料眾多,在實際應(yīng)用中得到廣泛的采用,比較實用于民用產(chǎn)品的開發(fā)。 方案一: 西南石油大學(xué)本科生畢業(yè)設(shè)計(論文) 4 采用 138譯碼器完成動態(tài)顯示, 138譯碼器的輸入連接到單片機三個引腳 ,LED的位選引腳連接 138輸出 ,但 LED的端選引腳依然要連接單片機端口 ,占有單片機的一個端口。 7219本身可以進行 BCD譯碼,我們只需把測量數(shù)據(jù)直接送入即可,使得程序簡捷。控制處理模塊的單片機將得到的采集信號送進行處理,進行數(shù)據(jù)的轉(zhuǎn)換得到要輸出的信號。C~ 100176。其實物圖如下: 圖 DS18B20 DS18B20 的性能特點如下: 獨特的單線接口僅需要一個端口引腳進行通信; 多個 DS18B20 可以并聯(lián)在惟一的三線上,實現(xiàn)多點組 網(wǎng)功能 無須外部器件; 可通過數(shù)據(jù)線供電,電壓范圍為 ~ ; 零待機功耗; 溫度以 9或 12位數(shù)字; 用戶可定義報警設(shè)置; 報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件; 負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作; 精度 177。 DS18B20 測溫原理 如圖 所示。計數(shù)器 1 對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當(dāng)計數(shù)器 1 的預(yù)置值減到 0 時,溫度寄存器的值將加 1,計數(shù)器 1 的預(yù)置將西南石油大學(xué)本科生畢業(yè)設(shè)計(論文) 6 重新被裝入,計數(shù)器 1 重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到計數(shù)器 2 計數(shù)到 0 時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。另一種是寄生電源供電方式,單片機端口接單線總線,為保證在有效的 DS18B20 時鐘周期內(nèi)提供足夠的電流,可用一個 MOSFET 管來完成對總線的上拉。 ( 4) DS18B20 工作時序 7 圖 DS18B20 初始化 圖 DS18B20 寫時序 西南石油大學(xué)本科生畢業(yè)設(shè)計(論文) 8 圖 DS18B20 讀時序 ( 5) 測量電路設(shè)計 本次設(shè)計設(shè)計了八路溫度采集點,共有八個 DS18B20,選擇了單片機的 P1 口為采集量輸入端, ~ 分別為 1~ 8 號測量點。同時, AT89C51可降至 0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電 工作模式。其連接如下: 圖 復(fù)位電路 最小系統(tǒng)中晶振電路的晶振采用 12MHz,兩個電容均為 22PF。為了電路簡化,軟件設(shè)計方便,我們選用 LED驅(qū)動芯片 MAX7219驅(qū)動顯示,所以選擇共陰極 LED數(shù)碼 管。整個設(shè)備包含一個 150uA的低功耗關(guān)閉模式,模擬和數(shù)字亮度控制,一個掃描限制寄存器允許用戶顯示 1~ 8位數(shù)據(jù),還有一個讓所有 LED發(fā)光的檢測模式。編程時,程序先送控制命令字,后向數(shù)據(jù)寄存器送顯西南石油大學(xué)本科生畢業(yè)設(shè)計(論文) 12 示數(shù)據(jù)。 2)譯碼模式寄存器 (地址 x9H)。 4)掃描界限寄存器 (地址 xBH)。當(dāng) DO=0時,正常工作;當(dāng) DO=l時,處于測試狀態(tài),在該狀態(tài)下,不管 MAX7219處于什么模式,全部 LED將按最大亮度顯示。顯示內(nèi)容為測量溫度值、測量通道、循環(huán)時間、報警 限 值。 報警電路作用是當(dāng)測量溫度超出上限或低于下限時,發(fā)出報警信號。根據(jù)系統(tǒng)的工作原理,編寫其工作程序,其流程圖: 西南石油大學(xué)本科生畢業(yè)設(shè)計(論文) 16 圖 主程序流程圖 DS18B20測溫度子程序 根據(jù) DS18B20的工作原理,及其時序圖編寫 DS18B20的工作程序,程序功能為:對 DS18B20初始化、發(fā)送數(shù)據(jù)轉(zhuǎn)換命令、讀取溫度,其流程圖: 17 圖 DS18B20測溫度子程序 由于 DS18B20的測量數(shù)據(jù)為正數(shù)和小數(shù)的組合形式,所以要先將小數(shù)和正數(shù)拆開,中間八位為正數(shù)部分,后四位是小數(shù)部分,按后將得到的小數(shù)和正數(shù)進行十進制轉(zhuǎn)換,得到顯示的數(shù)據(jù),如果為負數(shù)還要進行求補。開發(fā)操作步驟: 1 新建項目;在 Project中選擇 New Project。 整個電路包括控制單 元、測量單元、顯示電源、 報警電路、 按鍵部分。調(diào)試過程中需要用到萬用表、直流電源、數(shù)字示波器等 先檢查最小系統(tǒng)的晶振是否起振,方法:用 萬用表測量晶振兩端的電壓是否為 (電源電壓位 5V),因為晶振起振后,其占空比為 50%,所以兩端電壓為 。 void delayms(unsigned int ms) {unsigned int i,j。j110。delayms(500) 。若沒有問題,用示波器檢測 MAX7219與單片機的三根連線的波形,有波形則單片機運行正常,在檢測 MAX7219的輸出,看是否為正確波形。原因: MAX7219通過 V+ 和 IEST 之間所接的外部電阻 21 (Rest)來控制亮度。換為 30K以上電阻后,顯示電路可正常工作。如能顯示環(huán)境溫度則正常否則存在問題。 我在該部分的問題是焊接電路時出現(xiàn)了短路連接,修改后正常。所以溫度的檢測至關(guān)重要,對于大多數(shù)生產(chǎn)和種植,都不止一處要用到溫度檢測,大都要有多個監(jiān)測點,那多路溫度檢測的重要性和簡捷性就體現(xiàn)出來了。 ( 4) 經(jīng)過多次故障排除及程序調(diào)試,最終基于單片機的多路溫度巡回檢測儀的設(shè)計制作完成,其測量范圍為 9— 99176。隨著技術(shù)的發(fā)展和各種設(shè)備的加強,我相信該設(shè)計會不斷地有改進。首先感謝我的指導(dǎo)老師 —— 張培志老師。同時,感謝實驗室的同學(xué)們,他們也為我提供了大量的幫助,他們不斷 地鼓勵我關(guān)心我,讓我堅持不懈的學(xué)習(xí)研究,最終完成畢業(yè)設(shè)計。 sbit BDEC=P0^4。 sbit DIN=P2^2。 sbit DQ=P1^0。 sbit DQ4=P1^4。 //*********定義全局變量 ***********// int temp,i=2,n=1。 uchar b。 /*****************延時函數(shù) *************************/ void delay(uint t) { for (。 for(i=0。j++)。_nop_()。 delay(6)。 } DQ=1。j) { DQ=1。_nop_()。 //5 us DQ=valamp。 //右移 1 位 } DQ=1。 for(j=8。_nop_()。_nop_()。_nop_()。 //4 us if(DQ)value|=0x80。 } /*****************00 讀出溫度函數(shù) ************************/ read_temp() { ow_reset()。 //發(fā)轉(zhuǎn)換命令 delayms(800)。 //發(fā)命令 write_byte(0xbe)。 temp=temp_data[1]。 return temp。_nop_()。 delay(6)。 } DQ1=1。j) { DQ1=1。_nop_()。 //5 us DQ1=valamp。 //右移 1 位 } DQ1=1。 for(j=8。_nop_()。_nop_()。_nop_()。 //4 us if(DQ1)value|=0x80。 } /*****************01 讀出溫度函數(shù) ************************/ read_temp1() { ow_reset1()。 //發(fā)轉(zhuǎn)換命令 delayms(800)。 //發(fā)命令 write_byte1(0xbe)。 temp=temp_data[1]。 return temp。_nop_()。 delay(6)。 } DQ2=1。j) { DQ2=1。_nop_()。 //5 us DQ2=valamp。 //右移 1 位 } DQ=1。 for(j=8。_nop_()。_nop_()。_nop_()。 //4 us if(DQ2)value|=0x80。 } /*****************02 讀出溫度函數(shù) ************************/ read_temp2() { ow_reset2()。 //發(fā)轉(zhuǎn)換命令 ow_reset2()。 temp_data[0]=read_byte2()。 temp=8。 //返回溫度值 西南石油大學(xué)本科生畢業(yè)設(shè)計(論文) 32 }//***************DS18B20 03 復(fù)位函數(shù) ************************/ ow_reset3() { char presence=1。//從高拉倒低 DQ3=0。 //66 us presence=DQ3。 //拉高電平 } /****************DS18B20 03 寫命令函數(shù) ************************/ //向 1WIRE 總線上寫 1 個字節(jié) void write_byte3(uchar val) { uchar j。_nop_()。_nop_()。0x01。 delay(1)。j0。 value=1。_nop_()。_nop_()。 delay(6)。 //總線復(fù)位 delay(200)。 ow_reset3()。 temp_data[0]=read_byte3()。 temp=8。 //返回溫度值 } //***************DS18B20 04 復(fù)位函數(shù) ************************/ ow_reset4() { char presence=1。//從高拉倒低 DQ4=0。 //66 us presence=DQ4。 //拉高電平 } /****************DS18B20 04 寫命令函數(shù) ************************/ //向 1WIRE 總線上寫 1 個字節(jié) void write_byte4(uchar val) { uchar j。_nop_()。_nop_()。0x01。 delay(1)。j0。 value=1。_nop_()。_nop_()。 delay(6)。 //總線復(fù)位 35 delay(200)。 ow_reset4()。 temp_data[0]=read_byte4()。 temp=8。 //返回溫度值 } //***************DS18B20 05 復(fù)位函數(shù) ************************/ ow_reset5() { char presence=1。//從高拉倒低 DQ5=0。 //66 us presence=DQ5。 //拉高電平 } /****************DS18B20 05 寫命令 函數(shù) ************************/ //向 1WIRE 總線上寫 1 個字節(jié) void write_byte5(uchar val) { uchar
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1