阅读:1385回复:4
请教D12的初始化问题和ChipID问题
我把suspend置低后,没有设置SetAdd和SetEndPoint,然后就直接读chipID,发现读回来的一直是0x1212,不知道对不对?
另外请教D12的初始化应该怎么样的? 是不是只要SetAdd(0x80)和SetEndPoint(0x1) 就可以了? 网上看了不少,但还是糊里糊涂的,脑袋真是不好使啊,望大侠赐教! |
|
沙发#
发布于:2004-12-06 10:36
1、你读出的芯片ID不对!
2、初始化只要设置一下DMA、中断模式和软上拉电阻就可以了,然后就等SETUP包 |
|
板凳#
发布于:2004-12-07 09:17
1.chipid应该是0x1210 没读对可能是时序的问题
2.如2楼所说 |
|
|
地板#
发布于:2004-12-07 13:11
多谢两位指点,我再回去试试看。
另外,我还有个问题,softConnect后,D12会接收到一个总线复位,然后会给单片机一个中断,在这个中断里面需要做什么吗? 我看到在周立功的C51程序 中断处理什么都没做,就设置了一个变量, 但是在主程序里面好像也没做什么处理。 是不是总线复位不需要D12应答主机? 还是D12自动应答了,所以CPU不需要再做什么了? 总线复位后,各位从D12的中断寄存器里面读出来的数值是什么? 我的一直在变化,我感觉是硬件的问题,但是板子是块实验板,和ARM连接是用CPLD的,所以不知道板子内部是怎么连的? 我也不知道读出来什么数值应该是对的。 另外,是不是每次对D12操作,MCU都需要把D12的suspend引脚置低? 如果SUSPEND置高,是不是不能正常使用? 另外,D12的goodlink 是不是在每次接收到host完整的数据包后,就会闪烁一下? |
|
地下室#
发布于:2007-06-25 20:19
请问楼主 0x1212问题解决了么,我也遇到这个问题啊,不知道怎么回事
|
|