CH375初始化通不过

因受CPU的RAM使用限制,参照实例试图自行编写基本不占用00H-7FHRAM而使用80H-FFH的USB读写程序。可调试之初就发现以下这段初始化程序就通不过,返回的测试码仍然是送出码而没取反。

;USB初始化子程序 CH375_INIT: MOV R5,#06H ;CHECK_EXIST测试工作状态 MOV R7,#65H LCALL SEND_CMD MOV DPTR,#CH375_DAT_PORT_ADDR MOVX A,@DPTR CJNE A,#9AH,CHECK_EXIST_1 ;65H取反为9AH MOV R7,#00H ;测试正常返回 RET CHECK_EXIST_1: MOV R5,#06H MOV R7,#9AH ;发送 06H,9AH LCALL SEND_CMD MOV DPTR,#CH375_DAT_PORT_ADDR MOVX A,@DPTR CJNE A,#65H,CHECK_EXIST_2 ;9AH取反为65H JZ CHECK_EXIST_3 CHECK_EXIST_2: MOV R7,#81H ;测试异常返回 RET ; SEND_CMD: MOV DPTR,#CH375_CMD_PORT_ADDR MOV A,R5 MOVX @DPTR,A NOP NOP NOP NOP NOP NOP NOP NOP MOV DPTR,#CH375_DAT_PORT_ADDR MOV A,R7 MOVX @DPTR,A NOP NOP NOP RET

采用CH375B芯片。并口连接。 请问问题出在哪里?请老大指点迷津。谢谢。

1、确认单片机的总线有没有启用 2、CH375_CMD_PORT_ADDR和CH375_DAT_PORT_ADDR的定义是否正确,A0 = 1表示命令口,A0 = 0表示数据口 3、循环向CH375_CMD_PORT_ADDR上写个无效命令(如0x55),用示波器查看CH375的CS,A0,WR,D7-D0上的信号是否正确


只有登录才能回复,可以选择微信账号登录