各位大哥,小弟初学单片机设计。我想不用子程序库,直接用汇编语言编写。 不过测试不正确,请问这样写测试程序对吗? org 00h ajmp start org 30h start: ;D0---D7 接P0口,其它如下。 a0 equ p2.4 cs equ p2.6 wr equ p3.6 rd equ p3.7 int# equ p2.7
acall delay1s
begin: clr cs setb a0 ;写测试命令 mov a,#06h mov p0,a clr p3.6 nop nop nop nop setb p3.6
clr a0 ;写测试数据 mov a,#88h mov p0,a clr p3.6 nop nop nop nop setb p3.6
clr a0 ;读出测试结果 clr p3.7 nop nop mov a,p0 cjne a,#77h,wrong ajmp right wrong: setb a0 ;写硬件复位命令 mov a,#05h mov p0,a clr p3.6 setb p3.7 acall delay40ms setb p3.6 ajmp begin right: ajmp $
程序运行后,CH375A的D0---D7口,输出的一直是88H,没有取反。不知道是程序问题还是硬件连接有问题,硬件的复位电路应该正常,不过没有示波器,不知道晶振是否起振,晶振引脚一个为3V左右,一个为1.5V左右,这样正常吗?