ADR0 .EQU 05H ADR1 .EQU 06H ADR2 .EQU 07H ADR3 .EQU 08H CNTR0 .EQU 10H ORG 0000H VECTOR 00H, INT_9454 ORG 003CH DB 00H DB 00H DB 0E7H ;允許低電平復(fù)位LVR=2.3V DB 00H ;選用外部晶振4M ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ORG 0040H ;CODE_TABLE:DB 44H,46H,48H,4AH,4DH ;0-4度 ; DB 4FH,51H,54H,56H,58H ;5-9度 ; DB 5BH,5DH,60H,62H,64H ;10-14度 ; ; LD R4, #00H ; LD R5, #3FH ;AD_FIND: INC R5 ; LDC R10, @RR4 ; CP R10, A_DATA ; JR ULT, AD_FIND ; SUB R10, #40H ; LD LED_D,R10 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ORG 0044H CODE_TABLE:DB 0,0 ;44H-45H DB 1,1 ;46H-47H DB 2,2 ;48H-49H DB 3,3,3 ;4AH-4BH-4CH DB 4,4 ;4DH-4EH DB 5,5 ;4FH-50H DB 6,6,6 ;51H-52H-53H DB 7,7 ;54H-55H DB 8,8 ;56H-57H DB 9,9,9 ;58H-59H-5AH DB 10,10 ;5BH-5CH DB 11,11,11 ;5DH-5EH-5FH DB 12,12 ;60H-61H DB 13,13,13 ;62H-63H-64H DB 14,14 ;65H-66H DB 15,15,15 ;67H-68H-69H DB 16,16 ;6AH-6BH DB 17,17 ;6CH-6DH DB 18,18 ;6EH-6FH-70H DB 19,19 ;71H-72H ORG 0100H RESET: DI LD SP, #00C0H LD BTCON, #10100010B LD CLKCON,#00001000B ;允許外部晶振CPU分頻 FOSC/8 CLR P0 CLR P1 CLR P2 LD P0CONL,#10101011B ;P0.0 AD輸入轉(zhuǎn)換 LD P0CONH,#10100000B ;P0.6 P0.7 推拉式輸出,數(shù)碼管1選通、數(shù)碼管2選通 LD P1CON, #00001010B ;p0.0 p0.1輸出 LD P2CONL,#00001010B ;p2.0 p2.1 P2.2 P2.3 推拉式輸出 a b c d LD P2CONH,#01001010B ;P2.4 P2.5 P2.6 推拉式輸出 e f g CLR R10 CLR R11 CLR R12 LD ADR0, #10 ;10*400us=4ms LD T0DATA,#200 LD T0CON, #10001010B ;8/4*200=400us LD R0, #0A0H CLRRAM: CLR @R0 DEC R0 JR NZ, CLRRAM CLR @R0 LD ADCON, #00000101B AD_WAIT: TM ADCON, #00001000B JR Z, AD_WAIT LD A_DATA, ADDATAH MAIN: EI OR BTCON, #02H CP A_DATA, #44H ;超出范圍,報(bào)錯(cuò) JR ULT, LED_W CP A_DATA, #72H ;未定義 JR UGT, LED_W LD R4, #00H LD R5, A_DATA LDC R10, @RR4 ADR10: LD CNTR0, @R10 XOR CRTL_R0, #04H TM CRTL_R0, #04H JR NZ, AD_H ;屏蔽低4位 AD_L: AND CNTR0, #0FH LD ADR1, CNTR0 JR LED_ AD_H: AND CNTR0, #0F0H LD ADR2, CNTR0 RCF RL ADR2 RL ADR2 RL ADR2 RL ADR2 RCF JR ADR10 LED_W: LD ADR1, #10 LD ADR2, #10 LED_: AND P0, #80H ;P0.7高電平,個(gè)位數(shù)碼管停止 OR P0, 0BFH ;P0.6低電平,十位數(shù)碼管選通 LD LED_D, ADR2 LED_0: LD R2, #0AH LD R3, #LED_D LDC R12, @RR2 LD P2, R12 ;十位數(shù)送給p2口 CALL T0_WAIT XOR CRTL_R0, #02H TM CRTL_R0, #02H JR Z, LED_ AND P0, #7FH ; P0.7低電平,個(gè)位數(shù)碼管選通 OR P0, #40H ; P0.6高電平,十位數(shù)碼管停止 LD LED_D, ADR1 JR LED_0 T0_WAIT: TM CRTL_R0, #01H JR Z, T0_WAIT DEC ADR0 JR NZ, T0_WAIT RET ORG 0A00H CODE_LED: DB 40H,7CH,24H,30H,19H,12H,02H,78H,00H,10H,06H ;"0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "E" INT_9454: OR BTCON, #02H TM T0CON, #01H JR Z, INTRET OR CRTL_R0,#01H INTRET: IRET .END |