實(shí)驗(yàn)要求:
(1)、定時采集:用定時器定時中斷,每秒對一路模擬信號(0--5v)采樣16次。
(2)、顯示:通過七段LED顯示器,顯示十六進(jìn)制采樣的平均值。
(3)、報(bào)警:若模擬信號大于4v,使一個LED指示燈亮。
CODE:
C#語言: Codee#11156
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP PTF0
ORG 0040H
MAIN: MOV SP,#0EFH ;中斷初始化
MOV TL0,#00H
MOV TH0,#4CH
MOV TMOD ,#1
MOV IE,#82H
SETB TR0
MOV 30H,#14H
MOV DPTR,#0BFFFH ;8255控制字
MOV A,#81H
MOVX @DPTR,A
MOV 70H,#10H
MOV 71H,#10H
HERE: ACALL DIS
SJMP HERE
PTF0: push ACC
PUSH DPH
PUSH DPL
PUSH R0
PUSH R3
PUSH R6
PUSH R7
MOV TL0,#00H ;中斷程序
MOV TH0,#4CH
DJNZ 30H,PTF0R
MOV 30H,#14H
MOV DPTR,#7FF8H ;選中ADC0809通道0
MOVX @DPTR,A
MOV 40H,#0
MOV 41H,#0
MOV R7,#16
SAMPLE: MOVX @DPTR,A ;采樣
FINISH: JB P3.2,FINISH
MOVX A,@DPTR
ADD A,41H ;累加
MOV 41H,A
MOV A,#0
ADDC A,40H
MOV 40H,A
DJNZ R7,SAMPLE
AVERAGE:MOV A,41H
ANL A,#0F0H
SWAP A
MOV 41H,A
MOV 70H,A
MOV A,40H
;XCHD A,@R1
ANL A,#0FH
MOV 71H,A
SWAP A
ADD A,41H
ALERT: SUBB A,#205
JC PTF0R1
CLR P3.3
PTF0R:
POP R7
POP R6
POP R3
POP R0
POP DPL
POP DPH
POP ACC
RETI
PTF0R1: SETB P3.3
SJMP PTF0R
DIS: MOV R3,#0FEH
MOV A,R3
MOV R0,#70H
AGAIN: MOV DPTR,#0BFFCH
MOVX @DPTR,A
MOV A,@R0
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#0BFFDH
MOVX @DPTR,A
ACALL DELAY
INC R0
MOV A,R3
JNB ACC.1,RE
RL A
MOV R3,A
AJMP AGAIN
RE: RET
DELAY: MOV R7,#02H
DL1: MOV R6,#0FFH
DL0: DJNZ R6,DL0
DJNZ R7,DL1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H,0
END
;接口電路:
;A15---CS0809
;A14---CS8255
;PB0--PB7----LEDA--LED-DP
;PA0---LCS1 PA1--LCS2
;IN0---5VE
;EOC---P3.3
;P3.3--LED
閱讀全文
LJMP MAIN
ORG 000BH
LJMP PTF0
ORG 0040H
MAIN: MOV SP,#0EFH ;中斷初始化
MOV TL0,#00H
MOV TH0,#4CH
MOV TMOD ,#1
MOV IE,#82H
SETB TR0
MOV 30H,#14H
MOV DPTR,#0BFFFH ;8255控制字
MOV A,#81H
MOVX @DPTR,A
MOV 70H,#10H
MOV 71H,#10H
HERE: ACALL DIS
SJMP HERE
PTF0: push ACC
PUSH DPH
PUSH DPL
PUSH R0
PUSH R3
PUSH R6
PUSH R7
MOV TL0,#00H ;中斷程序
MOV TH0,#4CH
DJNZ 30H,PTF0R
MOV 30H,#14H
MOV DPTR,#7FF8H ;選中ADC0809通道0
MOVX @DPTR,A
MOV 40H,#0
MOV 41H,#0
MOV R7,#16
SAMPLE: MOVX @DPTR,A ;采樣
FINISH: JB P3.2,FINISH
MOVX A,@DPTR
ADD A,41H ;累加
MOV 41H,A
MOV A,#0
ADDC A,40H
MOV 40H,A
DJNZ R7,SAMPLE
AVERAGE:MOV A,41H
ANL A,#0F0H
SWAP A
MOV 41H,A
MOV 70H,A
MOV A,40H
;XCHD A,@R1
ANL A,#0FH
MOV 71H,A
SWAP A
ADD A,41H
ALERT: SUBB A,#205
JC PTF0R1
CLR P3.3
PTF0R:
POP R7
POP R6
POP R3
POP R0
POP DPL
POP DPH
POP ACC
RETI
PTF0R1: SETB P3.3
SJMP PTF0R
DIS: MOV R3,#0FEH
MOV A,R3
MOV R0,#70H
AGAIN: MOV DPTR,#0BFFCH
MOVX @DPTR,A
MOV A,@R0
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV DPTR,#0BFFDH
MOVX @DPTR,A
ACALL DELAY
INC R0
MOV A,R3
JNB ACC.1,RE
RL A
MOV R3,A
AJMP AGAIN
RE: RET
DELAY: MOV R7,#02H
DL1: MOV R6,#0FFH
DL0: DJNZ R6,DL0
DJNZ R7,DL1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H,0
END
;接口電路:
;A15---CS0809
;A14---CS8255
;PB0--PB7----LEDA--LED-DP
;PA0---LCS1 PA1--LCS2
;IN0---5VE
;EOC---P3.3
;P3.3--LED
類別:默認(rèn)分類 查看評論
文章來源:http://hi.baidu.com/%D2%EC%B6%C8%BF%D5%BC%E4%5F%B5%DA%CB%C4%CE%AC/blog/item/bf08e3b353c68b58082302d8.html