[求助]不好意思,没说清楚

我想利用ch372来实现单片机(w77e58)与PC通讯,由于某些原因,现在用p0口接372的data口,而用p3中的一些口来接A0,wr等口,但evt中要用到地址来区分命令口和地址口,但w77e58中地址是p0和p2,搞得我不能用demo中的例程,郁闷啊

这里贴一下我的原理图 请高手帮忙啊,谢谢啦courant200551919464.gif

这个和51一样啊! 看懂51是怎么定义数据和命令的就可以了


谢谢小小何,不过还有个请求,能不能帮我看一下下面这段程序 为什么我这样写,PC老是不能发现新硬件 ;测试ch372是否正常工作 mov p3.4,#1h ;A0 to high \ MOV DPTR,#0FFFFH ;是不是可以随便写啊 MOV A,#CHECK_EXIST ;CHECK_EXIST MOVX @DPTR,A NOP MOV P3.4,#0H ;A0 to low MOV DPTR,#0FFFFH MOV A,#55H ;输入一个测试数据 MOVX @DPTR,A CPL A MOV R7,A MOVX A,@DPTR XRL A,R7 JNZ CH372_INIT_FAIL ;测试不正常则报错 ;设置usb工作模式, mov p3.3,#0h ;cs# to low mov p3.6,#0h ;wr# to low mov p3.7,#1h ;rd# to high mov p3.4,#1h ;A0 to high MOV DPTR,#0FFFFH mov A,#SET_USB_MOD ;SET_USB_MOD命令 MOVX @DPTR,A mov p3.4,#0h ;A0 to low mov A,#02h ;设置Mod:02h MOVX @DPTR,A nop LJMP LOOP


mov p3.4,#1h A0 to high \ MOV DPTR,#0FFFFH ;是不是可以随便写啊 MOV A,#CHECK_EXIST CHECK_EXIST mov p3.3,0 ;clrar p3.3 MOVX @DPTR,A NOP ;delay 2us nop nop MOV P3.4,#0H A0 to low MOV A,#55H ;输入一个测试数据 MOVX @DPTR,A CPL A MOV R7,A MOVX A,@DPTR XRL A,R7 JNZ CH372_INIT_FAIL ;测试不正常则报错 ;设置usb工作模式, mov p3.3,#0h cs# to low mov p3.4,#1h A0 to high MOV DPTR,#0FFFFH mov A,#SET_USB_MOD SET_USB_MOD命令 MOVX @DPTR,A nop nop mov p3.4,#0h A0 to low mov A,#02h 设置Mod:02h MOVX @DPTR,A nop LJMP LOOP

CH372_INIT_FAIL: ljmp $

loop: mov r7,#0ffh loop_1: movx a,@dptr xrl a,#051h jz loop_ok djnz r7,loop_1 ljmp err_rest


谢谢,我学习一下啊


那p0口还需要上拉吗?


这样不要


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