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

正文內(nèi)容

畢業(yè)設(shè)計論文_基于單片機的數(shù)字溫度計設(shè)計-文庫吧在線文庫

2025-10-13 10:37上一頁面

下一頁面
  

【正文】 題所設(shè)計的數(shù)字溫度計包括 硬件組成和軟件的設(shè)計。如下圖 所示。溫度轉(zhuǎn)換命令子程序流程圖如圖 所示: 圖 溫度轉(zhuǎn)換命令子程序流程圖 計算溫度子程序 計算溫度子程序?qū)?RAM 中讀取值進行 BCD 碼的轉(zhuǎn)換運算,并進行溫度值正負的判定,其程序流程圖如圖 所示。按鍵模塊電路如圖 所示 圖 按鍵模塊電路圖 報警電路設(shè)計 三極管 8550 驅(qū)動蜂鳴器:報警電路如圖 所示三極管來驅(qū)動蜂鳴器 BUZ1。當(dāng)工作于寄生電源時,此引腳必須接地。另外,振蕩器的頻率只要由石英晶振的頻 率來決定本次設(shè)計選用 12MHz。上電自動復(fù)位是通過外部復(fù)位電路的電容充電來實現(xiàn)的,只要電源 VCC 的上升時間不超過 1ms,就可以實現(xiàn)自動上電復(fù)位,即接通電源就成了系統(tǒng)的復(fù)位初始化。畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 1.設(shè)計任務(wù)與要求 本課題的研究方法是利用單片機和數(shù)字溫度傳感器 DS18B20 設(shè)計一臺 數(shù)字溫度計。按鍵手動復(fù)位有電平方式和脈沖方式兩種。本系統(tǒng)的晶振電路如圖 所示: R11 0 kC31 0 u F圖 復(fù)位電路圖 C43 0 p fC53 0 p fX2CR Y S T A L畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 圖 晶振電路圖 DS18B20 芯片簡介 DS18B20 主要由 4部分組成: 64 位 ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器 TH 和 TL、配置寄存器。 測溫電路設(shè)計 數(shù)字溫度傳 感器 DS18B20 的測溫電路如圖所 示 : 圖 DS18B20 的測溫電路 按鍵模塊設(shè)計 利用單片機的 IO 口實現(xiàn)按鍵的中斷輸入。 圖 報警電路圖 顯示電路設(shè)計 采用四位共陰極 LED 數(shù)碼管來顯示溫度的大小,可以直接讀取。 圖 計算溫度子程序流程圖 發(fā) DS18B20 復(fù)位命令 發(fā)溫度轉(zhuǎn)換開始命令 結(jié)束 結(jié)束 開始 溫度零下 ? 溫度值去補碼置“ 1”標志 計算小數(shù)位溫度 BCD 值 計算整數(shù)位溫度 BCD 值 置“ 0”標志位 N Y 畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 顯示數(shù)據(jù)刷新子程序 顯示數(shù)據(jù)刷新子程序主要是對分離后的溫度顯示數(shù)據(jù)進行刷新操作,當(dāng)標志位位為 1 時將符號顯示位移入第一位。 圖 按鍵掃描處理子程序流程圖 5. Protues 仿真 Protues 測溫仿真 N K1 鍵按下 報警溫度加 1 調(diào)用顯示子程序 報警溫度減 1 K2 鍵是否按下? K3 鍵是否按下? 顯示切換標志位是否為 0 N Y N 畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 通過仿真軟件驗證該原理圖的可行性。該系統(tǒng)在硬件設(shè)計上主要是通過其核心控制器件 AT89C52將采集到的數(shù)字溫度值經(jīng)單片機處理得到相應(yīng)的溫度值,送到 4位數(shù)碼管進行顯示,以數(shù)字形式顯示測量的溫度。延時函數(shù)用 define dm P0 //段碼輸出口 define uchar unsigned char define uint unsigned int sbit DQ=P1^7。 //溫度加 sbit dec=P1^6。 uchar tt=0。t0。L4=1。L2=1。w3=1。 delay(6)。i) { DQ=1。 //5 us DQ=valamp。 for(i=8。 _nop_()。 //4 us if(DQ)value|=0x80。 //發(fā)轉(zhuǎn)換命令 畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 ow_reset()。 temp=temp|temp_data[0]。 // 取小數(shù)部分的值 display[0]=ditab[display[4]]。 //最高位為 0 時不顯示 if(!display[2]) { display[2]=0x0a。 display[2]=horl%100/10。//消抖 if(set==0) { temp1++。 } } if(temp1==2) { xianshi(low)。 } } } } void BEEP() { if(r=high||rlow) { beep=!beep。h4。 } while(1) { if (temp1==0) { work_temp(read_temp())。 scan()。 } ow_reset()。 } } void main() //主函數(shù) { 畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 dm=0x00。 low+=1。 } if(temp1==1) { xianshi(high)。 display[0]=0。} //負溫度時最高位顯示 } void xianshi(int horl) //設(shè)置溫度顯示轉(zhuǎn)換 { int n=0。 // 取中間八位 ,即整數(shù)部分的值 display[3]=display[4]/100。 return temp。 write_byte(0xcc)。 //延時 66 us } DQ=1。 _nop_()。i) { DQ=1。 //最低位移出 delay(6)。 _nop_()。 //presence=0 復(fù)位成功 ,繼續(xù)下一步 } delay(45)。 while(presence) { while(presence) 畢業(yè)設(shè)計論文 _基于單片機的數(shù)字溫度計設(shè)計 { DQ=1。L1=0。L3=0。 } void scan() { int j。 uchar code ditab[16]={0x00,0x01,0x01,0x02, //溫度小數(shù)部分用查表法 0x03,0x03,0x04,0x04, 0x05,0x06,0x06,0x07, 0x08,0x08,0x09,0x09}。 //顯示當(dāng)前溫度和設(shè)置溫度的標志位為 0 時顯示當(dāng)前溫度 uint h。 //數(shù)碼管 1 sbit L2=P2^1。 通過為期一周單片機的課程設(shè)計使我對單片機的編程及其仿真又加深了印象。數(shù)碼管仿真圖如圖 所示。 圖 顯示數(shù)據(jù)刷新子程序流程圖 報警子程序 設(shè)置報警標志位位 beep,當(dāng)溫度大于設(shè)置的高限報警值或低于設(shè)置的低限報警值是,beep=1 報警;當(dāng)溫度值在正常范圍內(nèi)時, beep= 所示: 圖 報警子程序流程圖 按鍵掃描處理子程序 按鍵采用掃描查詢方式,設(shè)置標志位,當(dāng)標志位為 1 時,顯示設(shè)置溫度,否則顯示當(dāng)前讀取測量溫度值 溫度值 120 或 20? Beep=1,報警
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1