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

正文內容

基于單片機多路溫度巡回檢測儀設計畢業(yè)設計(完整版)

2025-04-15 11:28上一頁面

下一頁面
  

【正文】 的高字節(jié) display[0]=temp_data[1]。_nop_()。 //延時 500 us presence=~DQ3。 //從高拉倒低 DQ3=0。 //66 us val=val/2。_nop_()。 //4 us DQ3=1。 return(value)。 write_byte3(0xcc)。 // 兩字節(jié)合成一個整型變量。 //550 us DQ4=1。j0。_nop_()。 uchar value=0。_nop_()。_nop_()。 //發(fā)命令 write_byte4(0x44)。 //讀溫度值的高字節(jié) display[0]=temp_data[1]。_nop_()。 //延時 500 us presence=~DQ5。 //550 us DQ5=1。 // 兩字節(jié)合成一個整型變量。 write_byte4(0xcc)。 return(value)。 //4 us DQ4=1。_nop_()。 //66 us val=val/2。 //從高拉倒低 DQ4=0。 //延時 500 us presence=~DQ4。_nop_()。 //讀溫度值的高字節(jié) display[0]=temp_data[1]。 //發(fā)命令 write_byte3(0x44)。_nop_()。_nop_()。 uchar value=0。_nop_()。j0。 //550 us DQ3=1。 // 兩字節(jié)合成一個整型變量。 write_byte2(0xcc)。 //66 us } DQ2=1。_nop_()。j) { DQ2=1。 //最低位移出 delay(6)。_nop_()。 //presence=0 復位成功 ,繼續(xù)下一步 } delay(45)。 while(presence) { while(presence) { DQ2=1。 //讀溫度值的第字節(jié) temp_data[1]=read_byte1()。 write_byte1(0xcc)。_nop_()。 DQ1=0。 } /****************DS18B20 01 讀 1字節(jié)函數 ************************/ //從總線上取 1 個字節(jié) uchar read_byte1() { uchar j。_nop_()。 for(j=8。 delay(50)。 temp=temp|temp_data[0]。 delay(1)。 //66 us } DQ=1。_nop_()。j) { 西南石油大學本科生畢業(yè)設計(論文) 28 DQ=1。 //最低位移出 delay(6)。_nop_()。 //presence=0 復位成功 ,繼續(xù)下一步 } delay(45)。 while(presence) { while(presence) { DQ=1。t)。low=7,D=0。 sbit DQ2=P1^2。 sbit LD=P2^1。在我遇到問題時,張老師認真幫助我分析解決。 西南石油大學本科生畢業(yè)設計(論文) 22 任何的儀器都需要不斷地改進。注意按鍵的消抖問題,可以采用硬件消抖,也可采用軟鍵消抖,我采用的是軟件延時消抖。改為 47K后正常工作。再查閱資料看連接的配件參數是否有問題。 } void main() { Q=0。若符合以上兩者之一,說明晶振電路正常能工作。 3 編輯 /修改程序; 4 編譯與連接;若有錯誤會顯示 Error( s), arning( s)。如圖: 圖 報警電路 最終將各個部分電路有機的連接在一起,完成整體電路設計,整體電路見附錄一。 ( 4) 7219電路設計 顯示單元利用 MAX7219驅動 7個共陰極 LED, MAX7219的三根串行線連接單片機的 \\, 并且三根連線上分別接有 20PF電容,起到濾波作用,使串行信號更加準確。當高電平時,選擇硬件譯碼模式 (BCD— B碼譯碼 ),當低電平時選擇軟件譯碼模式 (即送來數據為字型碼 )。 MAX7219能夠接受的數據和命令格式為 16位數據包(格式如下表), DIN 是串行數據輸人端,由 l6位數據包發(fā)送到 DIN端的串行數據在每個 CLK的上升沿被移入到內部 l6位移位寄存器中; LOAD用來裝載數據,在 LOAD的上升沿, l6位數據被鎖存到數據或控制寄 存器中, LOAD必須在第 l6個時鐘上升沿的同時或之后,在下一個時鐘上升沿之前變高,否則數據會丟失。靜態(tài) 驅動是指每個數碼管的每一個段碼都由一個高,缺點是占用 I/O端口多。如下圖: 圖 連接圖 單片機最小系統 ( 1) 51單片機簡介 本次設計選用 C51系列的單片機, 選擇目前市場上性價比較高的單片機 9 AT89C51作為該系統的控制核心 。 DS18B20 輸出的二進制的高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一個字節(jié),這個字節(jié)轉換位十進制為所測溫度值的百、十、個位,低字節(jié)的低半字節(jié)為小數部分。 C。 該溫度巡回檢測系統由控制模塊、顯示模塊、溫度采集模塊組成。并且還要進行軟件譯碼,使得程序復雜繁多。 從以上兩種方案,很容易看出,采用方案二,電路比較簡單,費用較低,可靠性高,軟件設計也比較簡單,故采用了方案二。在根據構思查閱相關資料文獻,從而選出符合要求的元件。其設計要求: 精度誤差小于 ℃; 用 LED數碼管顯示監(jiān)測數據; 用 LED數碼管顯示報警值及巡回時間; 具有可以任意設定溫度的上下限和巡回時間功能。糧倉內溫度范圍一般為: 0176。正由于這樣,單片機已成為科技領域的有力工具,人類生活的得力助手。 AT89C51。首先分析和制定了檢測系統的整體設計思想和方案,確保了該檢測系統具備真正的自動化檢測能力且結構簡單。溫度檢測系統在人們的生產生 活中的應用十分廣泛。 structure and connection of the detection device hardware。 而基于單片機的溫度檢測系統不斷被開發(fā)革新,為一些系統的溫度檢測提供良好的技術支持,更快速方便的為生產提供及時準確的溫度數據。176。本次設計的溫度巡回檢測儀可用于 糧庫和溫室大棚中,可對多個糧倉或溫室大棚進行多點監(jiān)測,從而節(jié)省人力物力,并且可在同一界面檢測溫度和設置參數。巡回時間能隨意設置,這樣可以根據季節(jié)的變化或環(huán)境溫度的變化率決定巡回時間。整個過程流程圖如下: 圖 設計流程 3 3 設計方案 方案對比 溫度傳感器選擇方案 方案一: 本設計為溫度測量電路,可以采用熱敏電阻之類的模擬傳感器,將隨被測溫度變化的電壓或電流采集,然后進行 A/D 轉換,再送入單片機進行數據的處理,單片機將輸出信號送入顯示電路,就可以顯示被測溫度,此設計需要用到 A/D 轉換電路,其中還涉及到 電阻與溫度的對應值的計算。故此要用到譯碼驅動器完成動態(tài) 顯示。首先,溫度采集模塊利用溫度傳感器采集現場溫度,然后送入控制處理模塊進行處理。 DS18B20 溫度傳感器是美國 DALLAS 半導體公司最新推出的一種改進型智能溫度傳感器,與傳統的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據實際要求通過 簡單的編程實現 9~ 12位的數字值讀數方式。計數器 1 和溫度寄存器被預置在-55℃ 所對應的一個基數值。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。 圖 AT89C51 引腳圖 ( 2) 單片機最小系統 AT89C51 的最小系統 中 ,復位電路采用按鍵復位, SB1 按下單片機復位 。只有一個外部寄存器用來設置各個 LED的段電流。用于多片 MAX7219級聯,在不改變顯示或不影響任意功能寄存器的條件下,它允許數據從 DIN傳送到 DOUT。當 DO=0時, MAX7219處于停機狀態(tài),所有顯示器消隱,寄存器數據保持不變;當 DO=l時,處于正常工作狀態(tài). 6)顯示測試寄存器 (地址 )。按下 SET鍵后,可以設置參數,設置方法如下:按下 TIADD鍵 增加循環(huán)時間, 按下 TIMDEC鍵 減小循環(huán)時間, 按下 LOW鍵 是顯示底限報警值, 按下 HIGH鍵 是顯示高限報警值 , 按下 BJADD鍵 是增加當前顯示報警值, 按下 BJDEC鍵 是減小當前顯示報警值。 圖 按鍵流程圖 19 本次設計的程序編寫利用 Keil軟件編寫, Keil是一套 Windows環(huán)境下, 8051單芯片整合性開發(fā) i接口軟件,它具備完善的項目管理系統,提供編輯器以寫程序及說明文 件,可以協助編寫、翻譯(包括 C語言的編譯器 C51 Complier 以及 A51 組譯器)、除錯和測試嵌入式系統程序( embedded programs)。 5 系統調試 最終硬件電路板焊接完畢,進行硬件調試,整個電路分為最小系統、顯示電西南石油大學本科生畢業(yè)設計(論文) 20 路、測量電路、按鍵電路、報警電路,對這些電路分步按以上順序調試進行調試。i++)for(j=0。如果出現問題,首先用萬用表檢測連接電路有沒有短路和斷路。 其原因在于的 MAX7219的各個數字驅動器的消耗功率太大,即選定的 Rest太小而使峰值段電流增大,從而引起單片機系統的供電電壓低于 MAX813L的監(jiān)控電壓而使系統長期復位。然后分析程序檢查電路。 ( 2) 使用了 Keil和 Proteus進行系統的仿真,使得實際制作的成功率大大提高 ( 3) 對電路的焊接更加熟練,只做了溫度巡回檢測儀電路板。在此對老師和同學表示我衷心的感謝! 本次畢業(yè)設計自始至終遇到很多問題,在老師和同學們的幫助下一一得到解決。 sbit BADD=P0^6。 sbit L=P0^3。 sbit DQ7=P1^7。 int data display[5]={0x00,0x00,0x00,0x00,0x00}。j110。 //550 us DQ=1。j0。_nop_()。 uchar value=0。_nop_()。_nop_()。 //發(fā)命令 write_byte(0x44)。 //讀溫度值的高字節(jié) display[0]=temp_data[1]。_nop_()。 //延時 500 us presence=~DQ1。 //從高拉倒低 DQ1=0。 //66 us val=val/2。_nop_()。 //4 us DQ1=1。 return(value)。 write_byte1(0xcc)。 // 兩字節(jié)合成一個整型變量。 //550 us DQ2=1。j0。_nop_()。 uchar value=0。_nop_()。_nop_()。 //發(fā)命令 write_byte2(0x44)。 temp=temp_data[1]。_nop_()。 } DQ3=1。_nop_()。 //右移 1 位 } DQ3=1。_nop_()。_nop_()。 } /*****************03 讀出溫度函數 ************************/ read_temp3() { ow_reset3()。 //發(fā)命令 write_byte3(0xbe)。 return temp。 delay(6)。j) { DQ4=1。 //5 us DQ4=valamp。 for(j=8。_nop_()。 //4 us if(DQ4)value|=0x80。 //發(fā)轉換命令 delayms(800)。 temp=temp_data[1]。_nop_()。 } DQ5=1。 delay(50)。 temp=temp|temp_data[0]。 delay(1)。 //66 us } DQ4=1。_nop_()。j) { DQ4=1。 //最低位移出 delay(6)。_nop_()。 //presence=0 復位成功 ,繼續(xù)下一步 西南石油大學本科生畢業(yè)設計(論文) 34 } delay(45)。 while(presence) { while(presence) { DQ4=1。 //讀溫度值的第字節(jié) temp_data[1]=read_byte3()。 write_byte3(0xcc)。_nop_()。 DQ3=0。 } /****************DS18B20 03 讀 1字節(jié)函數 ************************/ //從總線上取 1 個字節(jié) uchar read_byte3() { uchar j。_nop_()。 for(j=8。 delay(50)。 temp=temp|temp_data[0]。 delay(1)。 delay(6)。_nop_()。j0。0x01。_nop_()。 //66 us presence=DQ2。 //返回溫度值 } //***************DS18B20 02 復位函數 ************************/ ow_reset2() { char presence=1。 temp_data[0]=read_byte1()。 //總線復位 西南石油大學本科生畢業(yè)設計(論文)
點擊復制文檔內容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1