阅读:1917回复:16
usb第一步的问题,大虾请关注(100分)
zlg书上说,d12上电挂起suspend为低,请问,d12什么原因会导致上电挂起,怎样解决这个问题,有人碰到过这种状况吗,怎么处理的。
状态:d12没有任何反应,int,suspend为低,3.3v输出正常, clock输出正常,4mhz。d12不接受指令,没有任何动作。 |
|
沙发#
发布于:2004-08-26 16:07
suspend不是为高才是挂起吗?上电后为低没有挂起吧
|
|
板凳#
发布于:2004-08-26 16:29
你的int为低是不正常的
上电后应该为高才对 如果有中断产生才会为低 你可以搜索一下以前的关于d12枚举的帖子,有讨论过,而且不止一次。 |
|
地板#
发布于:2004-08-26 16:43
int为低应该是正常的,很多人提出过这个问题,d12上电挂起suspend为低是zlg书上写的,我现在也遇到了,可就不知道为什么,
我正在狂搜以前的贴子,也是一头雾水,如果不是硬件连接的问题 我很难想到别的原因,可我的板子硬件连接应该不会有问题,以前也这样做过,没有这个问题,郁闷,有请诸位共同分析原因。 |
|
地下室#
发布于:2004-08-26 16:52
以前的说法是读了中断寄存器后就会变高
这个现象是d12的一个bug 你可以尝试一下。 |
|
5楼#
发布于:2004-08-26 17:37
现在的问题是,d12不接受指令。我会再从硬件连接上察一下原因,多谢参与。
|
|
6楼#
发布于:2004-08-26 17:42
sorry分怎么给,给了半天,也不知给了谁了,教教我。
|
|
7楼#
发布于:2004-08-27 00:11
D12不接受指令的原因有可能是DMACK_N和EOT_N两个脚,我以前曾经试过将其悬空,结果D12不接受指令(我尝试改变CLKOUT)。后来将这两只脚接高,结果OK。
|
|
8楼#
发布于:2004-08-27 11:27
各位大虾,小虾,虾米,问题解决,先把我的理解公布一下,请多提意见,d12上电挂起,是d12自检不通过,我的问题是有两条数据线短路,suspend为低无任何变化,至于d12还在什么情况下上电挂起,不得而知。正常是d12上电,不接电缆,suspend
为高,接上电缆,suspend变低,d12上电后,int为低,读中断寄存器后,会有明显的一个高电平,可以用示波器观察,然后又变成低电平,我理解为挂起改变中断,以上为不接电缆上电的情况。可用于检测硬件与d12的工作情况是否正常。读中断方式,f4,40~45指令我全用一遍,也没分出究竟是哪一个指令起的作用。d12第一步到此为止,诸位请继续,欢迎批评指正。 [编辑 - 8/27/04 by wly76] |
|
9楼#
发布于:2004-08-27 19:01
请问你有汇编程序吗,D12的,我不懂C,能否传我一个
EMAIL:ZGZ22@SOHU.COM ,如果行的话? |
|
10楼#
发布于:2004-08-28 15:47
程序不全,你作参考吧
|
|
|
11楼#
发布于:2004-08-28 22:49
你指的不全是功能不全吗,能通过枚举吗
|
|
12楼#
发布于:2004-08-28 22:51
当然通不过.
|
|
13楼#
发布于:2004-08-31 09:03
to wly76: 越来越糊涂了,你的意思,d12上电suspend为低是挂起状态? 我的就是这样的,suspend一直为低,原因还不知道。
|
|
14楼#
发布于:2004-08-31 09:39
zlg书上说,d12上电挂起suspend为低,请问,d12什么原因会导致上电挂起,怎样解决这个问题,有人碰到过这种状况吗,怎么处理的。 d12上电挂起suspend为低――是指:d12上电,挂起脚suspend为低。int为低――要清中断才能拉高。 第一次int为低。应该是总线reset 第二次int为低。应该是挂起改变 按zlg书,d12会自动挂起。 suspend始终为低,是数据线没有接好器件。记忆中是要接上下拉电容,要不然即使是加上拉给suspend也无法改变成高。 |
|
15楼#
发布于:2004-08-31 11:04
我用以前留下来的板子想学学怎么用d12,遇到的问题跟楼主的很相似,我弄很久也没弄好,火了就自己掏钱买了块ZLG的开发板,将ZLG提供的程序重新编译烧录,在开发板上是好用的,然后移植到自己的板子,现象跟以前的一样,我怀疑是PCB的问题(ps:前辈们一直就没在这块板子搞定过d12)。我通过0xFD查chip id得到0x1210,softconnect以后clock out是12M,但是很奇怪的是,上电后就挂起。我没有屏蔽,不知道是不是干扰问题。
|
|
16楼#
发布于:2004-08-31 13:00
你的程序写的还不错,好像是根据PLASA的C改编的,不过由于我没有板子,不知道他的程序能不能用,不过好像有几个问题,能加你QQ请教一下吗? :)
|
|