照葫芦画瓢的汇编(三线控制方案),问题是在仿真机上单步运行到发送参考频率数据行时,锁定指示灯就熄灭。
不知错在哪里?谢谢解答。
;********************************
;mc145162
;********************************
clk bit p1.0
dn bit p1.1
enb bit p1.2
cpu 8031
ajmp ss
org 0030h
ss: clr enb
clr clk ;时钟置0
clr dn ;数据口清零
;********************************
setb enb
nop
nop
nop
mov a, #10000000b
acall up8data ;发送定义功能数据
nop
nop
clr enb
;********************************
nop
nop
nop
setb enb
mov a, #01100011b
acall up8data ;发送参考频率数据(运行到此,锁定灯就熄灭)
mov a,#11101000b
acall up8data ;
mov a,#01100111b
acall up8data ;
mov a,#00010000b
acall up8data ;
nop
nop
nop
clr enb
;*******************************
nop
nop
nop
mov a, #00000000b
acall up8data ;发送分频数据
mov a, #11011100b
acall up8data ;发送分频数据
mov a, #00000011b
acall up8data ;发送分频数据
mov a, #11101000b
acall up8data ;发送分频数据
setb enb
nop
nop
nop
clr enb
ajmp $
;*******************************
up8data: mov r2,#08h ;数据发
;送8次子程序
clr c
updata1: rlc a ;左移一位
mov dn,c
nop
nop
nop
nop
setb clk
nop
nop
nop
nop
nop
clr clk
nop
nop
nop
nop
djnz r2,updata1 ;8次减1循环发
;送,未发完转updata1再发
ret
end