MOV TL1 ,#06H
MOV TH1 ,#0F8H
SETB TR1
LP1:
JBC TF1 ,LP2
SJMP LP1L
P2:
MOV TL1 ,#06H
MOV TH1 ,#0F8H
CPL P2
SJMP LP1
这是一个设置P2口输出周期为1ms的程序,晶振频率为6MHz,我没有示波器没法演示,于是想用它做延时程序来控制二极管灯的亮灭,于是直接用DELAY函数把它移植到了原来写好的一段程序里,下载后完全没有反应,灯一直亮着,根本没按预期的出现周期性闪灭,求大神帮忙分析一下原因,我的程序时这样的
ORG 0000H
LJMP MAIN ;跳转到 MAIN 程序处
ORG 030H ;MAIN 从030H处开始
MAIN:
MOV P2 ,#00H ;P2为低电平 LED 灯亮
ACALL DELAY ;调用延时子程序
MOV P2 ,#0FFH
ACALL DELAY
AJMP MAIN
DELAY:
MOV TL1 ,#06H
MOV TH1 ,#0F8H
SETB TR1
LP1: JBC TF1 ,LP2
SJMP LP1
LP2: MOV TL1 ,#06H
MOV TH1 ,#0F8H
CPL P2
SJMP LP1
求原因,我刚刚接触汇编,
单片机也是新手,还请
论坛的大神多多指教,对上面的问题给点点拨
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>