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

正文內(nèi)容

基于51單片機的溫度控制系統(tǒng)的設(shè)計-文庫吧

2025-06-13 00:27 本頁面


【正文】 RT1602C的內(nèi)部結(jié)構(gòu)可以分為3個部分:LCD控制器、LCD驅(qū)動器、LCD顯示器,其中LCD控制器采用的是HD44780。RT1602C與單片機的連線如圖8所示。圖8 RT1602C與單片機連線LCM的數(shù)據(jù)總線與單片機的P0口通過一個上拉電阻排相連,LCM的三條控制線RS、RW、EN分別與單片機的I/、第2引腳分別與地、電源相連,第3引腳使用一個10kΩ的可調(diào)電阻對顯示屏的明亮進行調(diào)整。圖9 報警與指示模塊在本次設(shè)計中,采用LED發(fā)光二極管作為系統(tǒng)指示燈,采用蜂鳴器作為報警鳴笛。當溫度高于上限警戒值時,點亮紅色發(fā)光二極管,蜂鳴器發(fā)出響聲;當溫度低于下限警戒值時,點亮黃色發(fā)光二極管,蜂鳴器發(fā)出響聲;溫度在正常范圍內(nèi)時,點亮黃色發(fā)光二極管。整個報警與指示電路如圖9所示,其中綠、紅、電平拉低時點亮LED,電平拉高時蜂鳴器響。至此便完成了整個硬件電路的設(shè)計工作,整個系統(tǒng)的原理圖見附錄二,系統(tǒng)I/O分配表如下:I/O口功能說明I/O口功能說明~LCM數(shù)據(jù)口LCM讀/寫控制~鍵盤輸入LCM使能DS18B20溫度采集~LED信號輸出LCM數(shù)據(jù)/命令控制報警信號輸出單片機應(yīng)用系統(tǒng)的設(shè)計中,軟件設(shè)計占有重要的位置。在本次設(shè)計中,根據(jù)功能要求,可以把系統(tǒng)程序劃分為5個模塊,即主程序模塊、顯示模塊、溫度測量模塊、鍵盤掃描模塊、其它子程序模塊,如圖10所示。主程序模塊顯 示 模 塊溫 度 測 量 模 塊鍵 盤 掃 描 模 塊其 它 子 程 序圖10 軟件設(shè)計框圖開始初始化溫度傳感器初始化單片機初始化顯示模塊鍵盤掃描讀取溫度顯示字形轉(zhuǎn)換顯示主程序的內(nèi)容包括單片機初始化、相關(guān)部件初始化和一些其它子程序的調(diào)用等。主程序清單如下,程序流程圖如圖11所示。/************主程序************/void main(void){ P1=0xff。 //初始化P1口以便讀入 P2|=0x70。 P2amp。=0x7f。 Temp_set1=90。 //上限報警溫度初值90 Temp_set2=10。 //下限報警溫度初值10 Delay(500)。 //延時500ms啟動 init_LCD()。 //LCD初始化 init_18B20()。 //DS18B20初始化 Display_str(0,0,str2)。 //開機界面 Display_str(0,1,str2)。 //開機界面圖11 主程序流程圖 Delay(2000)。 Display_str(0,0,str0)。 Display_str(0,1,str1)。 while(1) { Key_scan()。 //掃描鍵盤 Read_temp()。 //讀取溫度 Change()。 Display()。 //顯示 Alarm()。 //指示燈與報警程序 Delay(1000)。 }}顯示程序主要完成的功能是模式、上下限警戒值和測量溫度值的顯示,模塊中包含LCD初始化、顯示單個字符子函數(shù)、顯示一個字符串子函數(shù)。程序流程圖如圖12所示,LCD初始化程序如下,其它子函數(shù)程序詳見附錄一。開始寫顯示命令定位顯示位置寫顯示字符結(jié)束顯示/************LCD初始化************/void init_LCD(void){ P0=0。 Delay(15)。 LCD_Command(0x38,0)。 Delay(5)。 LCD_Command(0x38,0)。圖12 顯示程序流程圖 Delay(5)。 LCD_Command(0x38,0)。 Delay(5)。 LCD_Command(0x38,1)。 //8位數(shù)據(jù)傳送,2行顯示,5*7字形 LCD_Command(0x08,1)。 //關(guān)閉顯示 LCD_Command(0x01,1)。 //清屏 LCD_Command(0x06,1)。 //顯示光標右移設(shè)置 LCD_Command(0x0c,1)。 //顯示屏打開,光標不顯示不閃爍} 溫度測量程序主要功能是讀出數(shù)字溫度傳感器的溫度值。要正確地讀出溫度值必須嚴格遵守單總線器件的命令序列,否則單總線器件不會響應(yīng)主機。單總線器件的命令序列如圖13所示。溫度測量模塊程序流程圖如圖14所示,DS18B20初始化程序如下,其它子程序詳見附錄一。/************DS18B20初始化************/void init_18B20(void){ uchar x=0。YN開始讀DS18B20序列號初始化DS18B20DS18B20存在?溫度轉(zhuǎn)換發(fā)跳過ROM指令讀取溫度返回 DQ=1。 //DQ復位 Delay_us(4)。 //延時 DQ=0。 //將DQ拉低 Delay_us(250)。 //精確延時大于480us DQ=1。 //拉高總線 Delay_us(40)。 x=DQ。開始發(fā)ROM指令初始化發(fā)功能指令結(jié)束 Delay_us(20)。}圖14 溫度測量程序流程圖圖13 單總線命令序列本次設(shè)計中使用了4個按鍵,除了1個復位鍵還有3個功能鍵,具體功能前面已介紹。鍵盤掃描程序如下,其它子程序詳見附錄一,相關(guān)流程圖如圖15所示。/************鍵盤掃描************/void Key_scan(void){uchar temp。P1=0xff。if(P1!=0xff){延時去抖動開始初始化DS18B20有鍵按下?讀取鍵值Y執(zhí)行鍵功能程序返回有鍵按下?NNY Delay(20)。 //延時消抖 if(P1!=0xff) { temp=P1。 switch(temp) { case 0xfe:Key_set()。break。 //,功能選擇 case 0xfd:Key_inc()。break
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1