数字温度传感器DS18B20汇编程序例子.docxVIP

  • 1
  • 0
  • 约2.62千字
  • 约 5页
  • 2021-02-16 发布于山东
  • 举报
;DS18B20 温度传感器和 7个 LED 数码显示程序(原创程序,请支持) ORG 0000H ;LED 数码管采用动态, P0口接八个数据口, TX BIT P2.3 ;DS18B20 数据口接 P2.3 FLAG BIT 10H TEMH EQU 50H ; 整数部分 TEML EQU 51H ; 小数部分 MOV SP,#60H CLR EA AJMP MAIN ORG 0200H MAIN: ;MOV R0,#10 LCALL TMP; 温度传感器设置 LCALL CHANG; 温度转换为十进制 STR:LCALL DISPLAY; 温度显示 ;DJNZ R0,STR AJMP MAIN  P2.0-P2.2采用  3-8译码器控制七个  LED ;////////////////////////// TMP:; 温度传感器 DS18B20 LCALL RESERT MOV A,#0CCH LCALL WRITE MOV A,#44H LCALL WRITE ;LCALL DELAY750; 延时 750Ms LCALL RESERT MOV A,#0CCH LCALL WRITE MOV A,#0BEH LCALL WRITE LCALL READ MOV 30H,A LCALL READ MOV 31H,A RET DELAY750:;750USDELAY SETB RS0 MOV R0,#20 MS2:MOV R1,#20 MS1:MOV R2,#20 DJNZ R2,$ DJNZ R1,MS1 DJNZ R0,MS2 CLR RS0 RET ;//////////////////////////// CHANG:; 温度转换为十进制 PUSH A PUSH B MOV A,31H ANL A,#07H SWAP A MOV B,A MOV A,30H ANL A,#0F0H SWAP A ADD A,B MOV TEMH,A MOV A,30H ANL A,#0FH MOV TEML,A MOV A,31H JNB ACC.3,POSI; 区分正负温度 ;////////////// 负温度转化 MOV A,TEML SWAP A CPL A ANL A,#0F0H ADD A,#10H SWAP A MOV 1FH,C MOV TEML,A MOV A,TEMH CPL A SUBB A,#80H MOV C,1FH ADDC A,#0 MOV 70H,#20 AJMP NEG POSI: MOV A,TEMH MOV B,#100 DIV AB MOV 70H,A MOV A,B NEG: MOV B,#10 DIV AB MOV 71H,A MOV A,B ADD A,#10 MOV 72H,A ;整数部分分离 MOV A,TEML MOV B,#5 MUL AB MOV B,#10 DIV AB MOV 76H,B MOV 75H,A MOV A,TEML MOV B,#2 MUL AB ADD A,75H MOV B,#10 DIV AB MOV 75H,B MOV 74H,A MOV A,TEML MOV B,#6 MUL AB ADDC A,74H MOV B,#10 DIV AB MOV 74H,B MOV 73H,A ;小数部分分离 POP B POP A RET ;////////////////////// DISPLAY: ;温度显示 70H---76H XXX.XXXX ;采用默认的 12位,精度 0.0625, -55~~+125 SETB RS0 MOV R0,#70H MOV R1,#7 MOV R2,#0 MOV DPTR,#TABLE DIS: MOV A,@R0 MOVC A,@A+DPTR MOV P2,R2 MOV P0,A INC R2 INC R0 LCALL DELAY1MS DJNZ R1,DIS CLR RS0 RET ;///////////////////////// DELAY1MS: SETB RS1 MOV R0,#100 MS:MOV R1,#20 DJNZ R1,$ DJNZ R0,MS CLR RS1 RET ;//////////////////// RESERT:;DS18B20 初始化 ;SETB RS0 SETB TX NOP CLR TX MOV R0,#240 ;RST:CLR TX DJNZ R0,$;DELAY480US SETB TX MOV R1,#30;DELAY 60US DJNZ R1,$ JNB TX,RE1 CLR FLAG SETB TX RET RE1:SETB FLAG MOV R2,#20

文档评论(0)

1亿VIP精品文档

相关文档