這是keshe.ASM(259): error A9: SYNTAX ERROR錯誤
這是我在網上找的程序,實在不太會,拜托大家了
基于單片機的秒表設計
- HAOMIAO EQU 34H
- MIAO EQU 35H
- SHIMIAO EQU 36H
- ORG 0000H
- AJMP START
- ORG 0030H
- START: CLR C
- SETB P1.6
- SETB P1.5
- SETB P1.4
- MOV HAOMIAO,#0
- MOV MIAO,#0
- MOV SHIMIAO,#0
- MOV DPTR,#TABLE
- MOV A,#00H
- MOVC A,@A+DPTR
- CLR P1.6
- MOV P2,A
- MOV A,#00H
- MOVC A,@A+DPTR
- CLR P1.4
- MOV P2,A
- MOV DPTR,#TABLE1
- MOV A,#00H
- MOVC A,@A+DPTR
- CLR P1.5
- MOV P2,A
- LCALL KAISHI
- LCALL MAIN
- SHIWEI : SETB P1.5
- MOV DPTR,#TABLE ;十秒位顯示
- MOV MIAO,#0 ;使秒位從零位重新循環
- INC SHIMIAO
- MOV A,SHIMIAO
- CLR C
- SUBB A,#6
- JZ START
- AJMP MAIN
- RET
- TINGZHI: MOV A,#00H ;判斷是否有清零指
- MOV A,P3
- ANL A,#04H
- JZ START
- MOV A,#00H ;判斷是否有停止指令
- MOV A,P3
- CLR C
- ANL A,#02H
- LCALL YANSHI
- JZ MAIN
- LJMP TINGZHI
- START1 : LJMP START
- SHIWEI1: LJMP SHIWEI
- MAIN : SETB P1.5
- SETB P1.4
- SETB P1.6
- MOV A,#00H ; 判斷是否有清零指令
- MOV A,P3
- ANL A,#04H
- JZ START1
- MOV A,#00H ; 判斷是否有停止指令
- MOV A,P3
- CLR C
- ANL A,#02H
- JZ TINGZHI
- MOV DPTR,#TABLE ; 0.1位秒顯示
- I NC HAOMIAO ;加一,可查下一位數據
- MOV A, HAOMIAO ; 判斷是否進位
- CLR C
- SUBB A,#10
- JZ MIAOZHEN
- LCALL YANSHI ;延時0.1秒
- AJMP MAIN
- RET ;繼續計時
- MIAOZHEN:
- SETB P1.4
- MOV DPTR,#TABLE1 ;秒位顯示
- MOV HAOMIAO,#0 ;使0.1秒從零重新循環
- INC MIAO ;加一,可查下一位數據
- MOV A,MIAO ;判斷是否進位
- CLR C
- SUBB A,#10
- JZ SHIWEI1
- LCALL SND
- AJMP MAIN ;返回0.1秒計
- YANSHI: MOV R6,#30
- DL2: MOV A,#00H ;判斷是否有清零指令
- MOV A,P3
- ANL A,#04H
- JZ START1
- MOV DPTR,#TABLE
- MOV A,SHIMIAO
- MOVC A,@A+DPTR
- CLR P1.6
- MOV P2,A
- ACALL YIHAOMIAO
- SETB P1.6
- MOV A,HAOMIAO
- MOVC A,@A+DPTR
- CLR P1.4
- MOV P2,A
- ACALL YIHAOMIAO
- SETB P1.4
- MOV DPTR,#TABLE1
- MOV A,MIAO
- MOVC A,@A+DPTR
- CLR P1.5
- MOV P2,A
- ACALL YIHAOMIAO
- SETB P1.5
- DJNZ R6,DL2
- RET
- YIHAOMIAO:
- MOV R7,#250
- CV:NOP
- NOP
- DJNZ R7,CV
- RET
- KAISHI: MOV A,#0
- MOV A,P3
- ANL A,#01H
- JNZ KAISHI
- RET
- SND: SETB P1.0
- MOV R1,#1EH
- DL: MOV R0,#0F9H
- DL1: DJNZ R0,DL1
- DJNZ R1,DL
- CLR P1.0
- RET
- TABLE:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH, 6FH;0,1,2,3,4,5,6,7,8,9
- TABLE1:DB0BFH,086H,0DBH,0CFH,0E6H,0EDH,0FDH, 087H,0FFH,0EFH
- END
復制代碼
|