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

正文內(nèi)容

基于ds18b20的多點(diǎn)溫度采集系統(tǒng)設(shè)計(jì)(lcd(參考版)

2024-11-12 06:26本頁面
  

【正文】 ****************************** 延時(shí)子程序 ******************************* DELAY: MOV R6,50 DL1: MOV R7,100 DJNZ R7,$ DJNZ R6,DL1 DJNZ R5,DELAY RET DELAY1: MOV R6,25 。寫入數(shù)據(jù) RET 22 。寫入命令 POP ACC 。設(shè)置顯示地址 ADD A,80H 。寫入數(shù)據(jù) SETB LCD_RS CLR LCD_RW SETB LCD_EN LCALL DE CLR LCD_EN LCALL DE RET 。RS=L,RW=L,D0D7=指令碼, E=高脈沖 CLR LCD_RW SETB LCD_EN LCALL DELAY1 CLR LCD_EN RET 。**************************** LCD 間接控制方式命令寫入 ************************* WCOM: MOV P0,A 。 39。繼續(xù)填入字符 RET 。寫入數(shù)據(jù) INC DPTR 。由消息區(qū)取出字符 CJNE A,0,LC1 。設(shè)置 LCD 的第二行地址 LCALL WCOM FILL: CLR A 。寫入命令 LCALL CLR_LINE 。寫入命令 JMP FILL LINE2: MOV A,0C0H 。清除該行字符數(shù)據(jù) MOV A,80H 。設(shè)置 LCD 的第一行地址 LCALL WCOM 。************************* LCD 的第一行或第二行顯示字符 ********************** LCD_PRINT:CJNE A,1,LINE2 。輸出字符至 LCD DJNZ R0,C1 。 。設(shè)置計(jì)數(shù)值 21 C1: MOV A,39。***************************** 清除 LCD 的第一行字符 ************************** CLR_LINE1:MOV A,80H 。開顯示,顯示光標(biāo),光標(biāo)不閃爍 LCALL WCOM LCALL DELAY1 MOV A,01H 。****************************** LCD 初始化 *********************************** INIT_LCD: MOV A,38H 。初始化 LCD LCALL STORE_DATA 。寫入數(shù)據(jù) RET 。寫入命令 POP ACC 。設(shè)置顯示地址 ADD A,0C0H 。*************************** 第二行顯示數(shù)字子程序 ************************* SHOW_DIG2:ADD A,30H MOV B,LCD_X LCALL LCDP2 RET 。設(shè)置顯示位置 LCALL SHOW_DIG2 。 MOV B,LCD_X LCALL LCDP2 MOV A,70H 。個(gè)位 LCALL SHOW_DIG2 INC LCD_X MOV A,39。顯示數(shù)據(jù) CONV3: INC LCD_X MOV A,72H 。號(hào)顯示 JMP CONV111 20 CONV11: MOV A, 。加載百位數(shù)據(jù) MOV LCD_X,6 。百位 DISPBCD2: RET 。個(gè)位 MOV A,TEMPHC ANL A,0FH MOV 72H,A 。************************ 顯示區(qū) BCD 碼溫度值刷新子程序 ********************** DISPBCD: MOV A,TEMPLC ANL A,0FH MOV 70H,A 。指針指到顯示信息區(qū) MOV R1,0 MOV R0,2 BBJJ2: MOV A,R1 MOVC A,A+DPTR LCALL WDATA INC R1 DJNZ R0,BBJJ2 RET BJ2: DB 00H,C 。設(shè)置顯示位置 LCALL SHOW_DIG2L 。顯示數(shù)據(jù) MOV A,0CEH LCALL TEMP_BJ1 MOV A,TEMP_TL 。加載 TH 數(shù)據(jù) MOV LCD_X,3 。指針指到顯示信息區(qū) MOV A,2 。 小數(shù)部分碼表 DB 05H,05H,06H,06H,07H,08H,08H,09H 。TEMPHC HI = 百位數(shù) BCD ANL A,0FH ORL A,R4 MOV TEMPHC,A TEMPC12: RET 。TEMPHC LOW = 十位數(shù) BCD 18 MOV TEMPHC,A MOV A,TEMPL ANL A,0FH SWAP A 。取出低四位 ANL A,0FH SWAP A ORL A,TEMPL 。整數(shù)部分 ANL A,0F0H 。乘 MOV DPTR,TEMPDOTTAB MOVC A,A+DPTR MOV TEMPLC,A 。負(fù)溫度標(biāo)志 MOV TEMPFC,0BH SJMP TEMPC11 TEMPC1: MOV TEMPHC,0AH 。二進(jìn)制數(shù)求補(bǔ)(雙字節(jié)) CPL A 。判溫度是否零下 ANL A,08H JZ TEMPC1 。讀下一位 MOV R1,A INC R1 DJNZ R4,RE00 RET 。等待 100 微妙 RRC A 。延時(shí) 18 微妙 DJNZ R3,$ MOV C,DQ 。讀前總線保持為低 NOP NOP NOP SETB DQ 。將溫度低位、高位、 TH、 TL 從 DS18B20 中讀出 17 MOV R1,TEMPL 。寫入下一位 SETB DQ RET 。等待 100 微妙 SETB DQ 。把一個(gè)字節(jié) DATA 分成 8 個(gè) BIT 環(huán)移給 C MOV DQ,C 。開始寫入 DS18B20 總線要 處于復(fù)位(低)狀態(tài) MOV R3,07 DJNZ R3,$ 。*********************** DS18B20 數(shù)據(jù)寫入操作子程序 ************************ WRITE: MOV R2,8 。************************ 將自定義字符寫入 LCD 的 CGRAM 中 ********************* STORE_DATA: MOV A,40H LCALL WCOM MOV R2,08H MOV DPTR,D_DATA MOV R3,00H S_DATA: MOV A,R3 MOVC A,A+DPTR LCALL WDATA 。跳過 ROM 匹配 LCALL WRITE MOV A,0B8H 。把暫存器里的溫度報(bào)警值拷貝到 EEROM LCALL WRITE RET 。************************ 復(fù)制暫存器子程序 ******************************* WRITE_E2:LCALL RST MOV A,0CCH 。TL(報(bào)警下限) LCALL WRITE MOV A,7FH 。寫暫器 LCALL WRITE MOV A,TEMP_TH 。************************ DS18B20 暫存器操作子程序 *************************** RE_18B20:JB FLAG1,RE_18B20A RET 16 RE_18B20A: LCALL RST MOV A,0CCH 。 清 0 標(biāo)志位 ,表示 DS1820 不存在 JMP TSR7 TSR5: MOV R0,06BH TSR6: DJNZ R0,$ 。 延時(shí) TSR3: SETB FLAG1 。拉高數(shù)據(jù)線 NOP NOP NOP MOV R0,32H TSR2: JNB DQ,TSR3 。****************************DS18B20 復(fù)位子程序 ***************************** RST: SETB DQ NOP CLR DQ MOV R0,6BH 。指針指到顯示消息 1 MOV A,2 。指針指到顯示消息 MOV A,1
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1