51单片机系统震荡频率12MHz,用p1.4每隔1ms输出一个100us的负脉冲,汇编语言编程实现。
答案:3 悬赏:0
解决时间 2021-01-20 01:47
- 提问者网友:孤凫
- 2021-01-19 04:41
51单片机系统震荡频率12MHz,用p1.4每隔1ms输出一个100us的负脉冲,汇编语言编程实现。
最佳答案
- 二级知识专家网友:十年萤火照君眠
- 2021-01-19 05:12
;
ORG 0000H
MOV TMOD, #02H
MOV TH0, #156
MOV TL0, #156
SETB TR0
L1: MOV R2, #10
L2: JNB TF0, $
CLR TF0
SETB P1.4
DJNZ R2, L2
CLR P1.4
SJMP L1
END
ORG 0000H
MOV TMOD, #02H
MOV TH0, #156
MOV TL0, #156
SETB TR0
L1: MOV R2, #10
L2: JNB TF0, $
CLR TF0
SETB P1.4
DJNZ R2, L2
CLR P1.4
SJMP L1
END
全部回答
- 1楼网友:轻熟杀无赦
- 2021-01-19 07:25
ORG 0000H
LJMP MAIN
ORG 0300H
MAIN: MOV TMOD, #01H
MOV TH0,#0FFH
MOV TL0,#09CH
MOV IE,#00H
SETB TR0
CLR TF0
SETB P1.4
LOOP:JBC TF0,ZCZ
AJMP LOOP
ZCZ:CLR TR0
CLR TF0
MOV TH0,#OFFH
MOV TL0,#09CH
CPL P1.4
SETB TR0
AJMP LOOP
不足之处,敬请见谅!
LJMP MAIN
ORG 0300H
MAIN: MOV TMOD, #01H
MOV TH0,#0FFH
MOV TL0,#09CH
MOV IE,#00H
SETB TR0
CLR TF0
SETB P1.4
LOOP:JBC TF0,ZCZ
AJMP LOOP
ZCZ:CLR TR0
CLR TF0
MOV TH0,#OFFH
MOV TL0,#09CH
CPL P1.4
SETB TR0
AJMP LOOP
不足之处,敬请见谅!
- 2楼网友:渊鱼
- 2021-01-19 06:21
Output equ P1.4
Loop:
setb c
mov Output,c
lcall DELAY900US
setb c
mov Output,c
lcall DELAY100US
ljmp loop
DELAY900US: ;误差 0us
MOV R6,#45H
DL0:
MOV R5,#05H
DJNZ R5,$
DJNZ R6,DL0
RET
DELAY100US: ;误差 0us
MOV R6,#01H
DL0:
MOV R5,#2FH
DJNZ R5,$
DJNZ R6,DL0
RET追问我只是初学者,你这个太麻烦了吧。。。有没有能简单实现功能就好,然后带注释。麻烦您了
Loop:
setb c
mov Output,c
lcall DELAY900US
setb c
mov Output,c
lcall DELAY100US
ljmp loop
DELAY900US: ;误差 0us
MOV R6,#45H
DL0:
MOV R5,#05H
DJNZ R5,$
DJNZ R6,DL0
RET
DELAY100US: ;误差 0us
MOV R6,#01H
DL0:
MOV R5,#2FH
DJNZ R5,$
DJNZ R6,DL0
RET追问我只是初学者,你这个太麻烦了吧。。。有没有能简单实现功能就好,然后带注释。麻烦您了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息