usbd12,3.3v系统调试纪录(网上很少有,大家都做5v的,即使是3.3v也不是总线结构的)
系统组成,cpu stc89le516 usb接口芯片d12,
总线连接方式,有3点请大家注意:特别是3个管角要特别注意
suspend, ale, a0,其次是cs, rest
因为我使用总线方式 suspend悬空(后面解释), d12的ale接cpu的ale,a0接的是高电平(总线方式接地应该一样),
因为一开始我把suspend接高了,d12被挂起,所以主机提示一直是unknow device,后来参考网上arm板的接口发现suspend应该悬空
一个德国网站,我要学德文了,太有用了,不过他们使用a0来区分地址和命令,ale接地,我比较懒,有个smart的测试代码
所以不能用他们的方法,于是我拆掉suspend的上拉电阻,让他去飞,哈哈有点兴奋,终于unknow device变成了usb device
请大家特别注意,我的第一板就错了vout没接到vcc上,记住vcc是3.3v,双电源,要仔细看书我又错了,一个月的伙食费有泡汤了
顺便说一下,非总线的接法,没侧过但是硬件的接法网上很多,就是ale接地,a0接i/o上,suspend加上拉,并且接到一个i/o上
也是双电源,(来自台北一家大学的资料)
还存在的问题:因为我用的是smart的单片机程序,suspend是由硬件完成的,当然单片机里有部分代码,上位机驱动也是用的
smart的测试平台,驱动是装上了,但是在硬件管理里老有个叹号,我怀疑是软件的问题,还要在琢磨,哎惊魂48小时总算有点进展
周一了又要给老板干活了,对了还提醒大家一句如果你在通一台机器上调试,usb1.0和usb2.0的设备,注意上位机驱动会认错设备
因位上个月我用同一台电脑,调试68013,装了驱动,插上d12老是认成68013,有点意思,还有很多要学,但是先要吃饱,加油
兄弟们
|