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

正文內(nèi)容

基于單片機的數(shù)字溫度計設(shè)計與仿真畢業(yè)論文(存儲版)

2025-08-19 19:02上一頁面

下一頁面
  

【正文】 圖 報警 模塊 的電路 基于單片機的數(shù)字溫度計設(shè)計與仿真 系統(tǒng)詳細設(shè)計 20 報警模塊 模塊程序設(shè)計 報警部分用到的外部硬件是兩個二極管模擬的。其電路圖如下: 圖 串行輸出模塊的電 串行輸出模塊程序設(shè)計 串行輸出程序的思路是,當溫度的值發(fā) 生變化時進行一次串行輸出操作。 此時的 下限 溫度是 上 面設(shè)寫的 5℃ , 18B20 設(shè) ℃ . 圖 低于下限溫度值時報警 5.高于上限溫度值時報警。 本系統(tǒng)在軟件上采用了結(jié)構(gòu)化程序設(shè)計,使得設(shè)計的程序易讀易改。 在這個系統(tǒng)中,出于條件的原因,只做出了相關(guān)仿真,沒有去做硬件。同時還要感謝 我的同學(xué)們,是他們在我的學(xué)習(xí)生活中支持我,鼓勵我 。 //溫度輸入口 sbit beer = P3^2。 extern void main_scanf_deal()。 extern uchar usart_temp。 B20_delay(44)。 for (i=8。 //右移一位 if(tmpData) //寫 1 的 { B20_IO=0。 _nop_()。 B20_IO=1。_nop_()。_nop_()。 float tmp_tmp。//跳過 ROM B20_write_byte(0xBE)。 if(flag1){temperature|=0x8000。 en=0。 _nop_()。 //清屏 lcd_write(lcd_,0x02)。) { lcd_write(lcd_data,*strint++)。 delay(30)。break。//去掉符號位 temperature1=(~(temperature11))/100。 基于單片機的數(shù)字溫度計設(shè)計與仿真 。0x8000)==0x8000)//如果溫度是負值 { temperature1=temperatureamp。break。y)。 while(*strint!=39。 //開顯示 lcd_write(lcd_,0x06)。 _nop_()。 en =1。 } else tmp_tmp=(tem2*256+tem1)*。//等待轉(zhuǎn)換 B20_init()。 return ReadData。_nop_()。_nop_()。i8。 B20_delay(5)。0x01。 } B20_IO=1。 B20_delay(1)。 //unite// extern int high_temp,low_temp。 /*(整合所有程序 )函數(shù)聲明 */ extern void dis_temperature(int temp_temperature)。 sbit busy_f = P0^7。在此,我向向老師表示我最衷心的感謝。更進一步加強了 51 單片機的運用能力,包括 51 單片機的程序編寫,調(diào)試,仿真等。具有實時顯示當前溫度,設(shè)定上下限溫度值以及可以對當前溫度超出限定的溫度值時進行報警提示。 圖 修改上限溫度值 3.修改下限溫度值。 串行輸出模塊 串行輸出模塊電路設(shè)計 串行輸出 模塊 是將得到的溫度值通過串行的方式傳送出去。 黃色的是當測得的溫度超過下限溫度時 通過 發(fā)光來提示 用戶 ,而綠色的是在測得的溫度超過上限溫度時 通過 發(fā)光來提示用戶 。break。 delay(30)。因此這樣就有個按鍵判斷過程。 鍵盤輸入模塊 鍵盤輸入模塊電路設(shè)計 鍵盤輸入部分是給用戶設(shè)定上下限溫度值 。 18B20 程序模塊程序全部放在 文件中。 } B20_IO=1。 B20_delay(1)。 datasheet 分析及程序?qū)崿F(xiàn) : DS18B20 是一顆數(shù)字型芯片,對其操作要按照芯片資料介紹進行。以下是本系統(tǒng)在寫計算過程中的部分程序: if((tem2amp。由于在釋放 DQ 時要保證在高電平,因此采用 一個上拉電阻接在 VCC 上。此時電容相當一條導(dǎo)線, reset 保持高電平;當 C3 沖完成后,reset 變?yōu)榈碗娖健?其數(shù)據(jù)以八位并行方式傳輸。//按鍵處理 pare_temperature()。 它的調(diào)用程序都在 文件中。 以上列出的各外部函數(shù)與外部變量是各個 .C 文件相互聯(lián)接的基礎(chǔ) ,其關(guān)系如圖 所示 .其中這些外部函數(shù)與 IO 定義都放在 文件中 .IO 定義列出如下 : /*IO 口的定義 */ //****************************************************** //****************************************************** sbit rs = P2^0。 extern uchar key1,key2,key3。各部分的聯(lián)系都通過組合程序模塊部分進行組合,而組合程序只給主程序調(diào)用。 (3) 1602 液晶顯示屏:用來顯示單片機控制器處理的相應(yīng)結(jié)顯。 ℃ ; (2)可以 通過 鍵盤輸入相應(yīng)的上下限溫度 ; (3)數(shù)字溫度計 測得 的溫度值和我們設(shè)定的上下限溫度 都可以在 LCD 上顯示出來 。 目 前,我國單片機的開發(fā)應(yīng)用正在興起,單片機 在機電一體化、智能儀表、工業(yè)控制、家用電器等方面的應(yīng)用成果尤為顯著 ?!?。系統(tǒng)可以 設(shè)置上下限報警溫度值,當測得結(jié)果超過設(shè)定值時進行相應(yīng)的報警, 提供一個接口 可以將溫度 值 傳送給其它控制器或計算機, 測量準確 且 誤差小 ,其 誤差 在 177。 冰箱、空調(diào)、烘干機中均用了溫度控制系統(tǒng)。 具體的功能如下所述: (1)能夠?qū)崟r的測得 溫 度并進行顯示 , 顯示的誤差在 177。 基于單片機的數(shù)字溫度計設(shè)計與仿真 緒論 2 (2) 18B20 溫度傳感器:用來采集溫度。根據(jù)此思路,程序分為主程序模塊部分、 1602 液晶顯示驅(qū)動模塊部分、按鍵模塊部分、 DS18B20 驅(qū)動模塊部分、報警模塊部分、串行輸出程序模塊和組合程序模塊部分。 按鍵模塊程序部分: extern void key_scanf()。 extern void main_scanf_deal()。 //報警 IO 口 2 //****************************************************** //****************************************************** 基于單片機的數(shù)字溫度計設(shè)計與仿真 系統(tǒng)總體設(shè)計 6 主程序的流程設(shè)計與實現(xiàn)程序 主程序的流程設(shè)計 由于各個程序都是模塊化的設(shè)計,因此主程序的工作量就很少且思路也很清析。//掃描按鍵 main_scanf_deal()。 1602 液晶顯示器 1602 液晶 顯示器具有功耗低,壽命長的特點。其電路設(shè)計如下: 圖 復(fù)位電路 的電路圖 基于單片機的數(shù)字溫度計設(shè)計與仿真 系統(tǒng)詳細設(shè)計 11 復(fù)位原理:當按鍵按下時 reset 從低電平變?yōu)楦唠娖?,?C3 電容完全放電;當按鍵釋放,電容開始沖電。 DQ 是單線數(shù)據(jù)端口。但是在單片機中小數(shù)的處理特別麻煩,要怎樣才能讓程序?qū)懙煤喒?jié)點呢?由于有效位為小數(shù)點后兩位,因此如果把溫度值擴大 100倍那樣就更簡單了,只要在輸出顯示時小數(shù)點的位置處理下就行了。在之后的顯示中做了相應(yīng)的顯示處理。 while(flag) { B20_IO=1。 基于單片機的數(shù)字溫度計設(shè)計與仿真 系統(tǒng)詳細設(shè)計 15 } B20_delay(50)。這就是 18B20 程序模塊的最終目的。 1602 液晶顯示程序部分在 ,它包括: void check_busy ()//檢查忙標志 void lcd_write(bit d_c,uchar input_data)//寫程序 void lcd_initial(void)//初始化程序 void lcd_printc(uchar i,uchar x,uchar y)//寫一個字符 void lcd_prints(uchar *strint,uchar x,uchar y)//寫字符串 此 5 個程序中作為外部函數(shù)的是 void lcd_prints(uchar *strint,uchar x,uchar y),用時只要把我們的數(shù)據(jù)轉(zhuǎn)換成一段字符串拿來顯示即可。再就是按鍵有個釋放過程,考慮到點,程序中如果沒有釋放按鍵則進行其它操作,即不處理按鍵功能。 } /********************************************************** 函數(shù)名稱: void key_scanf() 功能說明:鍵盤掃描子程序 入口參數(shù): void ***********************************************************/ void key_scanf() { key=0xff。 基于單片機的數(shù)字溫度計設(shè)計與仿真 系統(tǒng)詳細設(shè)計 19 case 0xdf:key3=1。 報警模塊使用了兩個發(fā)光二極管,一 個黃色的,一個綠色。 具體程序見附錄。 圖 實時顯示當前溫度值 基于單片機的數(shù)字溫度計設(shè)計與仿真 軟件仿真與測試 22 2. 修改上限溫度值。整個系統(tǒng)功能完善。學(xué)會了如何去看 datasheet,如何做一個系統(tǒng)的分析。在此次論文中,他 耐心 的指導(dǎo) ,不辭辛勞的付出 、 他寬厚待人,和藹可親 、 他 具有豐富的實踐經(jīng)驗在學(xué)習(xí)過程中和這次畢業(yè)論文設(shè)計中給我細心的指導(dǎo),讓我受益終生。 sbit en = P2^2。 extern void delay(uint z)。 //18B20// extern int temperature。 while(flag) { B20_IO=1。 } B20_delay(50)。 tmpData= DATAamp。 } else //寫 0 的 基于單片機的數(shù)字溫度計設(shè)計與仿真 附錄 2 33 { B20_IO=0。 for(i=0。_nop_()。_nop_()。_nop_()。//溫度轉(zhuǎn)換 B20_delay(10000)。//+20 是實驗中負數(shù)計算出現(xiàn)在誤差 ! flag1=1。 rw =1。 en=1。 lcd_write(lcd_,0x0c)。 //設(shè)置 DDRAM 地址 if(y==1) lcd_write(lcd_,0x80|(x0x40))。y0。 case 0xbf:key2=1。//用來轉(zhuǎn)換成正常值 /////因 temperature 是大小乘 100 的并有正負標示的 ,要比較得先轉(zhuǎn)換正常溫度值 // if((temperatureamp。 if(high_temptemperature1) { high_flag=1。 } else temperature1=temperature/100。 } delay(70)。 key=keyamp。 //寫入數(shù)據(jù) } } 基于單片機的數(shù)字溫度計設(shè)計與仿真 附錄 2 38 4. 文件程序: /********************************************************** 鍵盤掃描部分 所用資源 :void delay(uint z) void saomiao() 用于鍵盤的掃描,掃描值有 key1,key2,key3 中 ***************************
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1