作者easypro ()
看板ASM
标题Re: [请益] 问题点在哪???
时间Mon Sep 5 02:29:12 2011
※ 引述《jeff1481 (cool007)》之铭言:
: 我打算用计数器的方式
: 让8051的P1输出不同的信号
: 例如:
: 每按一次开关,P1就加1
: 00000000
: | 按
: 00000001
: | 按
: 00000011
: .
: .
: .
: --------------------------------------------------------------------------
: 後来我编译出一个档案
: 逻辑上似乎没有错误
: 但烧入8051後,就是一直无法想出和我想像的结果
: ORG 0000H
: ;
: JNB P3.4,CASE1
: JNB P3.3,CASE2
: JNB P3.2,CASE3
: MOV TMOD,#00000110B
: MOV TH0,#256-1
: MOV TL0,#256-1
: SETB TR0
: ;
: MOV P1,#11111111B
: CASE1:
: DEC P1
: ACALL COUNTER
: AJMP CASE1
: CASE2:
: INC P1
: ACALL COUNTER
: AJMP CASE2
: CASE3:
: MOV P1,#11111111B
: ACALL COUNTER
: AJMP CASE3
: ;
: COUNTER:JB TF0,OK
: AJMP COUNTER
: OK: CLR TF0
: RET
: ;
: END
: 请问是哪个地方我没有注意到???
看起来一整个有问题
ORG 00H
MOV P1,#00H
MOV P3,#FFH
CLR TF0
MOV TMOD,
#00000110B
MOV TH0,#256-1
MOV TL0,#256-1
MAIN:
JNB P3.4,CASE1
JNB P3.3,CASE2
JNB P3.2,CASE3
JMP MAIN
CASE1:
DEC P1
CALL COUNTER
JMP MAIN
CASE2:
INC P1
CALL COUNTER
JMP MAIN
CASE3:
MOV P1,#FFH
CALL COUNTER
JMP MAIN
COUNTER:
SETB TR0
JB TF0,$
CLR TF0
RET
END
很久没写8051组语了,所以以上不见得对,但逻辑差不多是这样。
※ 编辑: easypro 来自: 114.24.71.209 (09/05 02:32)
※ 编辑: easypro 来自: 114.24.71.209 (09/05 02:33)
1F:推 jeff1481:谢谢你 09/05 10:57