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

正文內(nèi)容

基于單片機的數(shù)字溫度計的設(shè)計(參考版)

2024-12-08 04:29本頁面
  

【正文】 //未松手時,不跳出循環(huán),避免誤檢測 } } if(Key_1 == 0) //如果檢測到有鍵按下 { delayms2(10)。 if(fbl_flag2) fbl_flag=0。 //延時 10ms if(Key_0 == 0) //再次判斷是否確實按下按鍵,進行消抖操作。 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 34 P1 |= 0x80。 } void key_scan(void) { char ge=0,shi=0,bai=0。 LCD_disp_char(9,2,(shi+48))。 ge = L_temp%10。 bai = L_temp/100。 39。 ge = temp%10。 bai = temp/100。 temp=~L_temp。39。 if(L_tempamp。 LCD_disp_char(9,1,(shi+48))。 ge = H_temp%10。 bai = H_temp/100。 39。 ge = temp%10。 bai = temp/100。 temp=~H_temp。39。 if(H_tempamp。 } LCD_disp_char(11,1,0xdf)。j++) { LCD_disp_char(j,1,dis_char1[j])。 for(j=0。 unsigned char ge=0,shi=0,bai=0。 BEEP_WARN =0。 BEEP_WARN =1。)。 LCD_disp_char(11,2,39。 LCD_disp_char(8,2,shifen+48)。 LCD_disp_char(6,2,(ge+48))。 LCD_disp_char(4,2,(bai+48))。 else shifen=5。 if(fbl_flag==0) shifen=wd/1000。 if(tempLamp。 if(tempLamp。 if(tempLamp。 if(tempLamp。 ge=(tempH%10)。 //不顯示任何數(shù)據(jù) } bai=tempH/100。 39。)。 LCD_disp_char(3,2,39。 //獲取低四位的小數(shù)溫度位 tempH=tempNum4。 //標(biāo)志為負(fù)數(shù) } tempL=tempNumamp。 tempNum+=1。 if(tempNumamp。j++) { LCD_disp_char(j,1,dis_char[j])。 for(j=0。 uint wd=0。 } void display_1(void) { uchar j=0。 y0 。 x0 。 //輸入數(shù)據(jù) } //毫秒延時函數(shù) void delayms2(unsigned int z) { unsigned int x,y。 //顯示在第二排的時候的 x 的地址 LCD_write_mand(address)。 if(y==1) address=0x80+x。 delay_n40us(1)。//寫入 LCD_E=1。 LCD_RS=1。 delay_n40us(1)。//寫入 LCD_E=1。 LCD_RS=0。//清除屏幕顯示 delay_n40us(100)。//整體顯示,關(guān)光標(biāo),不閃爍 LCD_write_mand(0x06)。//設(shè)置 8 位格式, 2 行, 5x7 LCD_write_mand(0x38)。 } //LCD1602 液晶初始化函數(shù) void LCD_init(void) { LCD_write_mand(0x38)。j2。i0。 unsigned char j。 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 30 void key_scan(void)。 void display_1(void)。 void LCD_disp_char(unsigned char x,unsigned char y,unsigned char dat) 。 void LCD_write_mand(unsigned char dat)。 void delay_n40us(unsigned int n)。 unsigned char code dis_char1[]={Htemp= C }。 char Actual_Temperature=0。 bit flag_h=0,flag_l=0。 char H_temp,L_temp。 //使能信號 define LCD_DB P0 //LCD1602 數(shù)據(jù)信號 define LocationX 0 //橫排的位置,即 X 得坐標(biāo)值 取值范圍 0~15 define LocationY 1 //豎排的位置,即 Y 得坐標(biāo)值 取值范圍為 2,1 uint tempNum=0,tempH,tempL。 //片選信號 sbit LCD_RW=P1^1。 //增加 鍵,可以對上限溫度或下限溫度進行增大調(diào)整 sbit Key_4 = P1^7。 //復(fù)位鍵 sbit Key_2 = P1^5。 sbit Key_0 = P1^3。 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 25 主要參考文獻(xiàn) [1] 陳汝全 .實用微機與單片機控制技術(shù) .電子科技大學(xué)出版社 ,. [2] 高光天 .儀表放大器應(yīng)用 .科學(xué)出版社 ,1995. [3] 胡漢才 .單片機原理及接口技術(shù) .清華大學(xué)出版社 ,2021. [4] 劉瑞新 .單片機原理及應(yīng)用教程 .機械 工業(yè)出版社 ,2021. [5] 李志全等 .智能儀表設(shè)計原理及應(yīng)用 .國防工業(yè)出版社 ,. [6] 潘立民 ,王燕芳 .微型計算機控制技術(shù) .人民郵電出版社 ,1990. [7] 潘其光 .常用測溫儀表技術(shù)問答 .國防工業(yè)出版社 ,1989. [8] 全國大學(xué)生電子設(shè)計競賽獲獎作品選編 .北京理工大學(xué)出版社 ,2021. [9] 邵敏權(quán) ,劉剛 .單片機原理實驗及應(yīng)用 .吉林科學(xué)技術(shù)出版社 ,. [10] 謝自美 .電子線路設(shè)計 .華中科技大學(xué)出版社 ,1999. [11] 席先覺 .MCS51單片機實用子程序集 . 高等教育出版社 . [12] 楊世成 .信號放大電路 .電子工業(yè)出版社 ,1995. [13] 張琳娜,劉武發(fā).傳感檢測技術(shù)及應(yīng)用.中國計量出版社, 1999. [14] 張毅剛、彭喜元、姜守達(dá)、喬立巖.新編 MCS51系列單片機應(yīng)用設(shè)計.爾濱工業(yè)大學(xué)出版社, . [15] . DiscreteTime ControlSystems. New Jersey:PrenticeHall . [16] Muhammad Electronics. Second Edition. New Jersey: Prentice Hall, 2021. 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 26 附 錄 附錄 1: 基于單片機的數(shù)字溫度計的設(shè)計原理圖 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 27 附錄 2: 系統(tǒng)程序流程圖 L C D 1 6 0 2 初 始 化讀 取 溫 度 并 顯 示 在 液 晶 屏 上溫 度 處 于設(shè) 置 范 圍 之 內(nèi)不 斷 讀 取 溫 度顯 示 在 液 晶 屏 上是否檢 測 按 鍵 狀 態(tài)設(shè) 置 處 理武昌工學(xué)院本科畢業(yè)論文(設(shè)計)專用稿紙 28 附錄 3: 溫 度轉(zhuǎn)換子程序流程圖 開 始 發(fā) DS18B20 復(fù)位命令 發(fā)跳過 ROM 命令 發(fā)讀取溫度命令 讀取操作, CRC 校驗 移入溫度暫存器 9 字節(jié)完? CRC 校驗正確? 返 回 Y Y Y N N 開 始 發(fā) DS18B20 復(fù)位命令 發(fā)跳過 ROM 命令 發(fā)溫度轉(zhuǎn)換開始命令 結(jié) 束 開 始 計算小數(shù)位溫度 BCD 值 計算溫度 BCD 值 結(jié) 束 溫度數(shù)據(jù)讀取程序 溫度轉(zhuǎn)換流程程序 BCD 碼轉(zhuǎn)換運算 武昌工學(xué)院本科畢業(yè)論文(設(shè)計)專用稿紙 29 附錄 4: 源程序 include include include define uint unsigned int define uchar unsigned char sbit LED_WARN=P3^6。所以在系統(tǒng)設(shè)計過程中存在很多不足之處,希望在以后的工作與學(xué)習(xí)中不斷地充實自己的知識結(jié)構(gòu),能夠更好的學(xué)習(xí) 單片機 控制方面的知識。 該畢業(yè)設(shè)計涉及了單片機、微機控制、 C語言 編程 、自動控制、 電路仿真 等多門學(xué)科。 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 24 總 結(jié) 本文首先介紹了溫度測量技術(shù)的發(fā)展現(xiàn)狀及存在的主要問題,結(jié)合任務(wù)書的具體要求提出了基于 DS18B20 溫度傳感器和 AT89S51 單片機為控制器的溫度計設(shè)計方案,在此基礎(chǔ)上給出了包括單片機最小系統(tǒng)、測溫電路、按鍵控制電路和聲光電路報警系統(tǒng)電路等在內(nèi)的詳細(xì)的系統(tǒng)硬件電路設(shè)計;接著介紹了軟件設(shè)計的基本原則,給出了軟件流程圖和源代碼,整個系統(tǒng)結(jié)構(gòu)簡單、體積小巧、功耗低、成本低廉,可以實現(xiàn)高精度溫度計控制。 BEEP_WARN =0。 BEEP_WARN =1。)。 LCD_disp_char(11,2,39。 LCD_disp_char(8,2,shifen+48)。 LCD_disp_char(6,2,(ge+48))。 LCD_disp_char(4,2,(bai+48))。 else shifen=5。 if(fbl_flag==0) shifen=wd/1000。 if(tempLamp。 if(tempLamp。 if(tempLamp。 if(tempLamp。 ge=(tempH%10)。 //不顯示任何數(shù)據(jù) } bai=tempH/100。 39。)。 LCD_disp_char(3,2,39。 //獲取低四位的小數(shù)溫度位 tempH=tempNum4。 //標(biāo)志為負(fù)數(shù) } tempL=tempNumamp。 tempNum+=1。 if(tempNumamp。j++) { LCD_disp_char(j,1,dis_char[j])。 for(j=0。 uint wd=0。具體的程序如下所示: void display_1(void) { uchar j=0。 } 溫度顯示子程序分析 本設(shè)計中,采用 LCD1602 液晶屏進行顯示。 dt=tempH+tempL。 //讀取低字節(jié)溫度數(shù)據(jù) tempH=Read_ds18b20()。 //跳過讀序號列號的操作 ? ?W r ite _ ds 18 b2 0 0 xb e 。 Init_ds18b20()。 // 由于為單總線,可以跳過讀序號列號的操作 Write_ds18b20(0x44)。 Init_ds18b20()。 BCD碼轉(zhuǎn)換流程圖見附錄 3。 溫度轉(zhuǎn)換命令子程序流程圖見附錄 3。在讀數(shù)據(jù)程序中,讀 DS18B20 中的 RAM 的 9bits,武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 20 需要注意的是,在讀完數(shù)據(jù)后,需要進行 CRC 校驗,如果校驗出錯,那么需要重新對數(shù)據(jù)進行讀寫。首先對 DS18B20 復(fù)位,然后發(fā)送 ROM 指令,接著發(fā)送 RAM 指令,完成DS18B20 的預(yù)定操作。 DS18B20 的 工作時序 主要分 為初 始化時序、寫時序和讀時序 三個部分 。 key_scan()。 L_temp = 10。 display_1()。 系統(tǒng)程序流程圖見附錄 2。 武昌工學(xué)院本科畢業(yè)論文(設(shè) 計)專用稿紙 19 ( 5)考慮周圍環(huán)境的外界干擾問題,在編程中加入抗干擾設(shè)計,提高系統(tǒng)的可靠性。 ( 3)本著節(jié)約內(nèi)存資源的目的,合理規(guī)劃程序存儲區(qū) 和數(shù)據(jù)存儲區(qū)。 系統(tǒng)軟件設(shè)計原則 數(shù)字溫度計的功能的實現(xiàn)都在軟件編程中完成,故在軟件編程過程中需要注意以下幾點: ( 1)編程條理清晰,編程簡單,流程合理。 C 語言因具有眾多優(yōu)點,而被廣大編程者使用。同時,增加了程序的可讀性并減少了程序調(diào)試和運行時間,大大提高了編程效率。編程簡單,且程序易于理解
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1