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

正文內(nèi)容

單片機課程設(shè)計報告-基于stc89c52的溫度測控系統(tǒng)設(shè)計-文庫吧資料

2024-10-30 15:58本頁面
  

【正文】 delay(50)。 P1=table[2]。 if(temp22==10) temp22=0。 if(k2==0) { while(!k2)。 if(num1==2) num1=0。 if(k1==0) { while(!k1)。//小數(shù)位不顯示 while(1) { display(temp2/10,temp2%10,temp22)。 P0=0xff。 delay(10)。 P1=table[1]。 if(k1==0) { while(!k1)。 //小數(shù)位 rd=0。 temp2=temp。 delay(3)。 P0=table2[11]amp。 delay(3)。 P1=table[2]。0x7f。 16 P1=table[1]。//選中第一個數(shù)碼管 P0=table1[one]。 } void beepoff(void) { beep=1。 temp1=(a%16)*10/16。 //讀取溫度值低位 b=Read_18b20byte()。 //讀取溫度寄存器等(共可讀 9 個寄存器) 前兩個就是溫度 delay_18B20(100)。 Write_18b20byte(0xCC)。 // 啟動溫度轉(zhuǎn)換 delay_18B20(100)。//18b20 初始化 Write_18b20byte(0xCC)。 } void ReadTemp(void) //讀取 ds18b20 當前溫度 { uchar a,b。 delay_18B20(4)。//可以起延時作用 DQ = 1。i)//判斷 8 次移位 7 次 { DQ = 0。 for (i=8。//出口函數(shù), dat 為入口函數(shù) } } uchar Read_18b20byte(void) { uchar i。//18b20 采樣 DQ = 1。0x01。 i) //一字節(jié) 8 位 { DQ = 0。 for (i=8。 //稍做延時后 如果 x=0 則初始化成功 x=1 則初始化失敗 ,采樣 delay_18B20(20)。 //拉高總線 delay_18B20(14)。 //單片機將 DQ 拉低 delay_18B20(100)。 //DQ 復位 delay_18B20(8)。 14 } void Init_DS18B20(void) //Ds18b20 初 始化函數(shù) u { uchar x=0。y)。x) for(y=110。 for(x=z。 uint qq。 uchar temp,temp3,temp1,tempH,tempL,temp5,flag,flag1。 //后兩位數(shù)碼管碼表 uchar code table3[2]=00。 //設(shè)置位選 uchar table1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x7f}。 uchar buffer0,buffer1,zhi,zhi1。 sbit rd1=P2^5。 sbit DQ=P2^2。 sbit k3=P3^4。 如下: 圖 16 按鍵掃描處理 子程序 四、程序 /*功能說明 按 K1 設(shè)定溫度上限,然后按 K2 調(diào)整小數(shù)位增加,按 K4 小數(shù)位減小 按 rd1 確認,按 rd復位 按 rd1 設(shè)定溫度下限,然后按 K2 調(diào)整整數(shù)位增加,按 K4 整數(shù)位減小 按 K1 確認,按 rd 復位 如果實際溫度超過上下限,則報警 */ 13 include include define uchar unsigned char define uint unsigned int sbit k1=P2^0。 圖 14 計算溫度子程序 顯示數(shù)據(jù)刷新子程序 顯示數(shù)據(jù)刷新子程序主要是對分離后的溫度顯示數(shù)據(jù)進行刷新操作,當標志位位為 1時將符號顯示位移入第一位。其程序流程圖如下: 圖 12 讀出溫度 子程序 11 溫度轉(zhuǎn)換命令子程序 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當采用 12 位分辨率時轉(zhuǎn)換時間約為 750ms,在本程序設(shè)計中采用 1s 顯示程序延時法等待轉(zhuǎn)換的完成。 主程序流程圖 主程序的主要功能是負責溫度的實時顯示、讀出并處理 DS18B20 的測 量的當前溫度值, 溫度測量每 1s 進行一次。如圖 9 圖 9 報警電路圖 總體原理圖 圖 10 為電路的總體原理圖。 報警電路 該模塊只是用 蜂鳴器表示。 K2 是調(diào)節(jié)溫 圖 8 按鍵電路圖 9 度下限的。按第 K2次后就能調(diào)節(jié)溫度的上限,通過 K3 和 K4 來調(diào)節(jié)。 所選按鍵是輕觸開關(guān)。圖 7 為數(shù)碼管的連接圖。 溫度顯示模塊 由于此文重在說明 DS18B20 的功能及使用,所以顯示部分就采用簡單的數(shù)碼管顯示。另外,在單總線上可以掛任意多片 DS18B20,而且如果它們都使用外部電源的話,就可以先發(fā)一個 Skip ROM命令,再接一個 Convert T 命令,讓它們同時進行溫度轉(zhuǎn)換。這樣做的好處是 I/O 線上不需要加強上拉,而且總線控制器用在溫度轉(zhuǎn)換期間總保持高電平。 表 2: DS18B20 的命令 和時序圖 命 令 說 明 協(xié) 議 單線總線發(fā)出協(xié)議后 溫度轉(zhuǎn)換命令 Convert T 開始溫度轉(zhuǎn)換 44H 讀溫度忙狀態(tài) 存儲器命令 Read Scratchpad 讀取暫存器和 CRC 字節(jié) BEH 讀數(shù)據(jù)直到 9 字節(jié) Write Schratchpad 把字節(jié)寫入暫存器的地址 2 和 3( TH和 TL 溫度報警促發(fā)) 4EH 寫兩個字節(jié)到地址 2 和 3 Copy Scratchpad 把暫存器內(nèi)容拷貝到非易失性存儲器中(僅指地址 2 和 3) 48H 讀拷貝狀態(tài) Recall E2 把非易失性存 儲器中的值召回暫存器(溫度報警觸發(fā)) B8H 讀溫度忙狀態(tài) Read Power Supply 標識 DS18B20 的供電模式 B4H 讀供電狀態(tài) 圖 6 為 DS18B20 的電路
點擊復制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1