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

正文內(nèi)容

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

2025-03-02 10:22本頁面
  

【正文】 //分離出個位 } /**********溫度轉(zhuǎn)換為 LCD 顯示數(shù)據(jù) **************** *功能 :將兩個字節(jié)的溫度值 ,分離出符號位 ,整數(shù)及小數(shù) 并將它們轉(zhuǎn)化為 ACSII 碼 ,送到液晶顯示緩沖區(qū) ************************************************/ void temper_LCD(void) { unsigned char x=0x00,y=0x00。 //百位數(shù)消隱 TempBuffer0[13]=(TL%100)/10+0x30。 //分離出個位 TempBuffer0[12]=TL/100+0x30。 //百位數(shù)消隱 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 37 頁 TempBuffer0[5]=(TH%100)/10+0x30。 //0x2B 為 +的 ASCII 碼 TempBuffer0[4]=TH/100+0x30。 //0x2d 為 的 ASCII 碼 TL=~TL+1。 } else TempBuffer0[3]=0x2b。 //0x2d 為 的 ASCII 碼 TH=~TH。 //分離出十位 TempBuffer1[14]=(temper%100)%10+0x30。 //分離出 temper 的百十個位 if( TempBuffer1[12]==0x30) TempBuffer1[12]=0xfe。 } else TempBuffer1[11]=0x2b。 //0x2d 為 的 ASCII 碼 temper=~temper。 //顯示溫度上下限 ,上電時顯示 TH:+ 00 TL:+ 00C unsigned char code dotcode[4]={0,25,50,75}。\039。}。 //用來存放溫度值 ,測溫程序就是通過 這個數(shù)組與主函數(shù)通信的 unsigned char TempBuffer1[17]={0x2b,0x20,0x30,0x30,0x2e,0x30,0x30,0x20, 0x53,0x45,0x54,0x2b,0x20,0x30,0x30,0x43,39。 //用戶標定溫度 unsigned char TH=110,TL=20,RS=0x3f。 //設(shè)置控制標志溫度標志 bit alarm_switch。 //加 1 和減 1 標志 bit alarm_up_flag,alarm_down_flag。 //定義 DQ 引腳為 unsigned char key_value。 } //include //用 AT89C51 時就用這個頭文件 include //用華邦 W78E58B 時必須用這個頭文件 //include //include //include //include //include include //測溫頭文件 include //液晶顯示頭文件 include //鍵盤掃描頭文件 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 35 頁 sbit alarm=P2^6。 //讀取溫度值低位 tt[1]=ReadOneChar()。 //讀取溫度寄存器等(共可讀 9 個寄存器) 前兩個就是溫度 //delay_18B20(70)。 WriteOneChar(0xCC)。 // 啟動溫度轉(zhuǎn)換 delay_18B20(70)。 WriteOneChar(0xCC)。 //寫配置寄存器 ,格式為 0 R1 R0 1,1 1 1 1 //R1R0=00 分辨率婁 9 位 ,R1R0=11 分辨率為 12 位 } /**************讀取 ds18b20 當前溫度 ************/ unsigned char *ReadTemperature(void) { unsigned char tt[2]。 //寫入想設(shè)定的溫度報警上限 WriteOneChar(TL)。 //跳過讀序號列號的操作 WriteOneChar(0x4E)。 } } /****************設(shè)置 DS18B20 工作狀態(tài) ******************* TH 和 TL 分別是上限報警和下限報警溫度 ,RS 是顯示分辨率的設(shè)置 *******************************************************/ void setds18b20(unsigned char TH,unsigned char TL,unsigned char RS) { Init_DS18B20()。 DQ = 1。0x01。 i) { DQ = 0。 for (i=8。 } return(dat)。 //給脈沖信號 if(DQ) dat|=0x80。 //給脈沖信號 dat=1。i0。 unsigned char dat = 0。 delay_18B20(20)。 //拉高總線 delay_18B20(14)。 //單片機將 DQ 拉低 delay_18B20(80)。 } /**********ds18b20 初始化函數(shù) **********************/ void Init_DS18B20(void) { unsigned char x=0。令我深有感觸,對于我今后的學習、工作和生活都將是受益非淺的! 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 31 頁 參考文獻 [1] 王靜霞 .《單片機應用技術(shù)》 .電子工業(yè) 出版社, 2021 [2] 何立民 .《單片機高等教程》 .北京 航空航天大學出版社, 2021 [3] 雄建云 .《 Protel99 se EDA 技術(shù)及應用》 .北京 機械 工業(yè)出版社, 2021 [4] 華永平,陳松編著 .《電子線路課程設(shè)計》 .東南大學出版社 [5] 林春方.《電子線路學習指導與實訓》 .北京電子工業(yè)出版社, 2021 [6] 楊寶清,宋文貴主編 .《 實用電路手冊 》 .機械工業(yè)出版社 2021 [7] 張存禮,韓愛娟主編 .《電子技術(shù)綜合實訓》 .北京師范大學出版社 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 32 頁 附錄 1 源程序 //include //用 AT89C51 時就用這個頭文件 include //用華邦 W78E58B 時必須用這個頭文件 sbit DQ = P3^7。編程的過程中,雖然不乏辛苦,但更多的是程序調(diào)試成功后的喜悅。 由于我以前對 51 單片機的 C 語言沒有認真鉆研過,所以感覺畢業(yè)設(shè)計的任務十分緊迫。但是,在實際的編程以及調(diào)試程序過程中,我發(fā)現(xiàn)自己應該學的太多太多。所以我選擇這樣的畢業(yè)設(shè)計課題,并且能通過此次設(shè)計來提高自己軟件編制和硬件電路設(shè)計的能力。當今科技發(fā)展迅速,單片機嵌入式開發(fā)有著光明的前景。 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 30 頁 結(jié) 論 在我的畢業(yè)設(shè)計中,主要是以 AT89C51 單片機為核心的,對溫度的檢測與顯示進行了簡單的設(shè)計與闡述。使用菜單或者單擊工具欄的新建文件按鈕,出現(xiàn)文本便捷窗口,在該窗口中輸入新編制的源程序并保存該文件。因此,需要建立一個工程文件,并為這個工程選擇 CPU,確定編譯,匯編,連接的參數(shù),指定調(diào)試的方式。 ( 2)建立工程文件。通過元件選擇按鈕 P (從庫中選擇元件命令 ) 命令,在彈出的 Pick Devices 窗口中選擇電路所需的元件,放置元件并調(diào)整其相對位置,對元件參數(shù)設(shè)置及元器件間連線,完成單片機系統(tǒng)的硬件原理 圖繪制。 } } 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 29 頁 第 5 章 仿真與調(diào)試 仿真與調(diào)試 此設(shè)計的電路在 Proteus 軟件中進行仿真, 運行 Proteus 的 ISIS 程序后,進入該仿真軟件的主界面。 x_scan=r_left(x_scan)。 y_scan=r_left(y_scan)。 return(key_value)。 if(temp==y) { while(key_ok!=0) //等待按鍵松開 { scan_full()。 y=y_scanamp。 temp=tempamp。j4。i++) { key_port=x_scan。 //再次粗判是否有鍵按下 if(key_ok==1) { for(i=0。 delay(200)。 while(1) { scan_full()。 unsigned char x_scan=0xfe,y_scan=0xef。 else key_ok=0。 temp=P1。 } 按鍵是否按下? 執(zhí)行語句 按鍵是否按下? 延時 返回 開始 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 27 頁 /*************粗判有無鍵按下 ********** ****有鍵按下則將 key_ok 置 1************/ void scan_full(void) { unsigned char temp。 x++。 //有鍵按下的標志 /*************延時子程序 ************* ****調(diào)用一次用時 18 微秒 ,t 每加 1,用時增加 6 微秒 */ void delay(unsigned char t) { while(t)。 NO YES NO YES 圖 45 矩陣鍵盤流程圖 鍵盤掃描函數(shù) sfr key_port=0x90。 } define LCD_AC_UP define LCD_AC_DOWN define LCD_MOVE // 畫面可平移 define LCD_NO_MOVE void LCD_SetInput(unsigned char InputMode) { LCD_Write(LCD_COMMAND, 0x04|InputMode)。 LCD_Wait()。 LcdEn=0。 LcdEn=1。 DBPort=input。 LcdRw=0。 } LCD 要能讀寫數(shù)據(jù),必須對 LCD 進行讀寫操作,讀操作時,先設(shè)置 RS 和 R/W 狀開始 當 RS=1時,選擇數(shù)據(jù)寄存器 把顯示數(shù)據(jù)送至 P0口 讀 /寫標志位 R/W=0時,進行寫操作 LCD使能信號 E至高 電平后再過兩個時鐘周期至低電平,產(chǎn)生一個下降沿信號,使 LCD寫入顯示數(shù)據(jù) 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 24 頁 態(tài),在設(shè)置 E 信號為高,這時從數(shù)據(jù)口讀取數(shù)據(jù),寫操作時,使能 E 信號下降沿有效 圖 45LCD 讀寫操作流程圖 LCD 寫指令函數(shù) define LCD_COMMAND define LCD_DATA define LCD_CLEAR_SCREEN // 清屏 define LCD_HOMING // 光標返回原點 void LCD_Write(bit style, unsigned char input) { LcdEn=0。 _nop_()。 _nop_() LcdEn=1。0x80) { LcdEn=0。 _nop_()。 _nop_()。 } } void LCD_Print(unsigned char x, unsigned char y, unsigned char *str) 四川信息職業(yè)技術(shù)學院畢業(yè)設(shè)計說明書 (論文 ) 第 23 頁 要
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1