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

正文內(nèi)容

基于單片機溫度控制系統(tǒng)的設(shè)計畢業(yè)論文(參考版)

2025-03-02 11:55本頁面
  

【正文】 出錯。十位減一 MOV A,KEY_BUF_S CJNE A,0FFH,DOWNNEXT。個位減一 MOV A,KEY_BUF_G CJNE A,0FFH,DOWNNEXT 。出口參數(shù) :DIS_BUF_G,DIS_BUF_S,DIS_BUF_B PRO_DOWN: CALL K_DELAY JB K_DOWN,K_LOOP 。功能 :數(shù)值下調(diào)處理 。退回 99 第 44 頁 共 48 頁 MOV KEY_BUF_G,09H UPNEXT: MOV DIS_BUF_G,KEY_BUF_G MOV DIS_BUF_S,KEY_BUF_S MOV DIS_BUF_B,KEY_BUF_B CALL K_DELAY RET 。十位超過 99,溢出了 MOV R0,200 ERROR1: LCALL ERR 。個位增加到 10,回 0 MOV KEY_BUF_G,00H INC KEY_BUF_S 。按鈕抖動處理 INC KEY_BUF_G 。入口參數(shù) :KEY_BUF_G,KEY_BUF_S,KEY_BUF_B 。程序名稱 :PRO_UP 。出口參數(shù) :ENTER_FLAG PRO_ENTER: CALL K_DELAY JB K_ENTER,K_LOOP 。功能 :確認鍵盤輸入和退出鍵盤輸入 。序 JB K_ENTER,KUP CALL PRO_ENTER KUP: JB K_UP,KDOWN CALL PRO_UP KDOWN: JB K_DOWN,LOOPA CALL PRO_DOWN LOOPA: LCALL DISPLAY SJMP K_LOOP QUIT: RET 。將當前的溫度賦值給 KEY_BUF MOV KEY_BUF_S,DIS_BUF_S MOV KEY_BUF_B,DIS_BUF_B K_LOOP: JB ENTER_FLAG,QUIT 。如果又 Enter 鍵入,則開始鍵盤輸入 LCALL K_DELAY JB K_ENTER,QUIT 第 43 頁 共 48 頁 CLR ENTER_FLAG 。入口參數(shù) :DIS_BUF_G,DIS_BUF_S,DIS_BUF_B 。程序名稱 :SCAN_KEY 。將溫度高位和低位從 DS18B20 中讀出 MOV R1,TEMPERATURE_L RE00: MOV R2,8 。入口參數(shù) :TEMPRATURE_L 。程序名稱 :READ_18B20 。A里面一共是 8 位,所以要送 8 次 SETB P_DS18B20 。循環(huán)右移 MOV P_DS18B20,C MOV R3,3CH DJNZ R3,$ 。出口參數(shù) :無 WRITE_18B20: MOV R2,8 。功能 :將 A保存的數(shù)值寫入 DS1820 中, 。發(fā)出讀溫度命令 LCALL WRITE_18B20 LCALL READ_18B20 。準備讀溫度前先復位 MOV A,0CCH 。發(fā)出溫度轉(zhuǎn)換命令 LCALL WRITE_18B20 LCALL DISPLAY 。判斷 DS1820 是否存在 ?若 DS18B20 不存在則返回 TSS2: MOV A,0CCH 。出口參數(shù) :無 READ_TEMP: SETB P_DS18B20 LCALL INIT_TEMP 。功能 :讀取 DS18B20 的數(shù)據(jù) 。時序要求 延時一段時間 TSR7: SETB P_DS18B20 RET 。置標志位 ,表示 DS1820 存在 LJMP TSR5 TSR4: CLR FLAG 。等待 DS18B20 回應(yīng) DJNZ R0,TSR2 LJMP TSR4 。主機發(fā)出延時 537 微秒的復位低脈沖 MOV R0,6BH MOV R1,04H TSR1: DJNZ R0,$ MOV 40,6BH DJNZ R1,TSR1 SETB P_DS18B20 。入口參數(shù) :無 。程序名稱 :INIT_TEMP 。a/100 MOV R7,A 。出口參數(shù) :R7 HtoB: MOV B,064H 。功能 :十六進制轉(zhuǎn) BCD 。以此類推 .......... 。*4 = 02H 。*2 = 01H 。小數(shù)部分碼表 TEMPDOTTAB: DB 00H,01H,01H,02H,03H,03H,04H,04H,05H,06H,06H,07H,08H,08H,09H,09H 。TEMPERATURE_HC LOW 位 = 十位數(shù) MOV TEMPERATURE_HC,A MOV A,TEMPERATURE_L 第 40 頁 共 48 頁 ANL A,0FH SWAP A MOV R7,A MOV A,TEMPERATURE_HC 。組合后的值存入 TEMPERATURE_ZH LCALL HtoB 。得到個位 ‘單個數(shù)值 SWAP A 。小數(shù)位的 BCD 碼 送入顯示 buffer 中 MOV A,TEMPERATURE_L 。查表 MOV TEMPERATURE_LC,A 。取反加 1 ADD A,01H MOV TEMPERATURE_L,A MOV A,TEMPERATURE_H CPL A ADDC A,00H MOV TEMPERATURE_H,A 。對低 8 為進行補碼處理 CLR C MOV A,TEMPERATURE_L 。判溫度是否零下 ANL A,80H JZ TEMPC1 。入口參數(shù) :TEMPERATURE_L 。程序名稱 :DATA_DEAL 。如果沒有找到 DS18B20,那么就顯示錯誤,錯誤 。入口參數(shù) :無 。程序名稱 :ERR 。掃 描鍵盤 LCALL SWITCH 。賦值給 DIS_BUF_X,G,S,B LCALL DISPLAY 。不存在時顯示錯誤信息 AJMP NEXT NORMAL: LCALL DATA_DEA 。調(diào)用讀溫度子程序 JB FLAG,NORMAL 。初始化 MOV KEY_BUF_G,00H 。標志位 ,確定是否存在 DS18B20 ENTER_FLAG EQU 。讀取 DS18B20 的輸入端口 P_SWITCH EQU 。下調(diào)按鈕 K_ENTER EQU 。鍵盤輸入后,的百位值 K_UP EQU 。鍵盤輸入后,的個位值 KEY_BUF_S DATA 49H 。數(shù)碼管十位 Buffer DIS_BUF_B DATA 38H 。數(shù) 碼管小數(shù)位 Buffer DIS_BUF_G DATA 36H 。計算后的個位和小數(shù)位的 BCD 碼存放 第 38 頁 共 48 頁 TEMPERATURE_ZH DATA 34H 。計算后的百位和十位的 BCD 碼存放 。DS18B20 低 8 位 Buffer TEMPERATURE_H DATA 30H 。 EA=ea。 stop()。 wrby(x)。 waddr()。 EA=0 。 } //24c256 寫入一字節(jié) void epr_write(unsigned int f,unsigned char x) { bit ea。 EA=ea。 w16addr(x)。 d5ms()。 EA=0。} } } //24c256 讀出一字節(jié) unsigned char epr_read(unsigned int x) { bit ea。b0x7f。a=15。 } /////////////////延時 void d5ms() { unsigned char a, b。 wrby(n )。 wrby(m )。 //將 x的高位賦給 m,低位賦給 n m=[0]。 unsigned m,n。 unsigned char char_type[1]。 return(temp1)。 noack()。 ask()。} ///////////////24c256 raddr unsigned char raddr() { start()。 wrby(0xa0)。 } return(temp1)。 epr_sc=0。 temp1_0=epr_sd。 epr_sc=1。i8。 epr_sd=1。 epr_sd=1。 epr_sc=0。 epr_sc=1。 //左移一位 epr_sc=1。i++) //從高位開始傳送數(shù)據(jù) { epr_sd=temp1_7。 for(i=0。 epr_sc=0。 epr_sc=0。 第 34 頁 共 48 頁 epr_sd=0。 epr_sd=1。 epr_sd=1。 epr_sd=1。 epr_sc=1。 epr_sc=1。 epr_sd=0。 epr_sd=1。 epr_sd=1。 i=0。 do{ 第 33 頁 共 48 頁 i。 epr_sc=1。 epr_sd=1。 epr_sc=0。 epr_sc=1。 //存儲器驅(qū)動程序開始 void noack(void) { epr_sd=1。 sbit temp1_0 = temp1^0。 sbit epr_sc=P3^2。 /* 控制命令 ,WP=1,寫保護 */ 第 32 頁 共 48 頁 EA=ea。 write1302(0x90,0)。 write1302(0x8e,0x00)。 tempamp。 EA=0。 bit ea。 } write1302(0x8e,0x80)。i++) { write1302(addr,*(ptr+i))。 //寫保護置低(關(guān)閉) for(i=0。 addr=addr*2+0x0c0。 第 31 頁 共 48 頁 addr+=2。i6。 addr=addr*2+0x0c1。 yea=time_bcd_temp[6]。 day=time_bcd_temp[3]。 min=time_bcd_temp[1]。/*格式為 : 秒 分 時 日 月 星期 年 */ ucAddr += 2。i7。 unsigned char ucAddr = 0x81。 write1302(0x8e,0x80)。 write1302(i,time_tempyea)。 write1302(i,0x02)。 write1302(i,time_tempmon)。 write1302(i,time_tempday)。 write1302(i,time_temphou)。 write1302(i,time_tempmin)。 /* 控制命令 ,WP=0,寫操作 */ write1302(i,time_tempsec)。 } //功能 : 設(shè)置初始時間 void Set1302(pTime_S time_temp) { unsigned char i= 0x80。 EA = ea。 rtc_rs_portamp。 /* 地址 ,命令 */ ucDa = uc_R
點擊復制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1