打印

遇到STM32F103VE麻烦的事情!劳烦DX们进来指导下...

[复制链接]
3351|22
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kami03372|  楼主 | 2013-4-13 12:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32F103VE和CY7C68013USB芯片通信,16位总线,使用的GPIOE端口(均有外部上拉电阻)。
现在遇到这个问题,情况如下:
1、GPIOE全部设置成开漏输出,无法输出高电平,始终为0。
2、GPIOE全部设置成推挽输出,可以输出数据,但是数据中的1不能太多,比如0xffff输出以后,出来数据就不对了,而且会把后面的几个数据都带错。如果输出0x8888,就可以正确发送
3、CY7C68013是一个8051内核的USB芯片,我们用的是人家的模块。感觉这个现象就像是IO的总电流达到限制一样,但是其他的IO没有什么大电流的。上拉电阻1K,4.7K,10K都试过,效果是一样的

还有就是GPIOE口开漏不和USB模块通信单独输出的时候是可以输出高电平的。

这里请教下香水版主和其他大侠们,劳烦你们帮分析看看,有可能是哪里的问题。
沙发
kami03372|  楼主 | 2013-4-13 19:42 | 只看该作者
怎么没人帮顶下哈...

使用特权

评论回复
板凳
hawksabre| | 2013-4-13 19:49 | 只看该作者
帮楼主顶起来   希望版主出点力气   呵呵   

使用特权

评论回复
地板
hawksabre| | 2013-4-13 19:49 | 只看该作者
在顶一个   呵呵   希望版主能看到   呵呵

使用特权

评论回复
5
kami03372|  楼主 | 2013-4-14 13:25 | 只看该作者
怎么就没人支招下哈.......香水版主踏青去了吗??

使用特权

评论回复
6
kami03372|  楼主 | 2013-4-15 13:24 | 只看该作者
额,难道真的就没有大侠过来,给点提示吗........

使用特权

评论回复
7
airwill| | 2013-4-15 14:00 | 只看该作者
我感觉是不是速度太快导致 CY7C68013 这一个8051内核的USB芯片跟不上呢?

使用特权

评论回复
8
kami03372|  楼主 | 2013-4-15 14:32 | 只看该作者
先谢谢airwill版主!
USB模块和STM32都换了,还是不行,唉,关键是开漏输出,有上拉居然不能输出高电平。
应该不是速度问题,因为推挽的时候,测试,发送固定数据是可以的,但是就是不能全为1。
在努力找下原因吧,

使用特权

评论回复
9
IJK| | 2013-4-15 15:00 | 只看该作者
STM32F103VE GPIOE全部设置成开漏输出,无法输出高电平,始终为0

这种情况是有问题的。
建议先单独测GPIOE 用到的那些IO脚,除了GPIO时钟,外设时钟都不要开。看开漏输出是否能正常。印象里我测过STM32F103的 GPIOE,是可以的

使用特权

评论回复
10
kami03372|  楼主 | 2013-4-15 15:37 | 只看该作者
也谢谢IJK,只打开用的几个GPIO的时钟,还是一样。不是说GPIOE开漏不能输出高电平,是可以输出的。
测试:不停的发数据,GPIOE开漏时,USB在没有通信的时候,示波器看到总线上是有高低信号的。
一旦开始USB开始通信,信号线全部拉低至0....好像是被USB芯片给拉低了
另外这个USB模块在C8051F系列单片机上,开漏输出使用一直都是可以的,现在换STM32居然遇到这个问题....

使用特权

评论回复
11
qiurenguo| | 2013-4-15 16:43 | 只看该作者
你单独设置成OP或者OD输出,在置一,输出是高电平吗?

使用特权

评论回复
12
tanmilaoshu| | 2013-4-15 16:46 | 只看该作者
帮顶……

使用特权

评论回复
13
kami03372|  楼主 | 2013-4-15 16:57 | 只看该作者
qiurenguo 发表于 2013-4-15 16:43
你单独设置成OP或者OD输出,在置一,输出是高电平吗?

单独设置是可以输出的高电平的

使用特权

评论回复
14
qiurenguo| | 2013-4-15 17:12 | 只看该作者
那应该是协议问题把。什么通信方式、?

使用特权

评论回复
15
IJK| | 2013-4-15 17:17 | 只看该作者
可以查一下,是否2个芯片都处于输出状态了

使用特权

评论回复
16
kami03372|  楼主 | 2013-4-17 15:51 | 只看该作者
首先谢谢大家,问题找到了,还是我自己的问题,USB模块IO的输出状态打开了,因为一开始STM32是推挽输出,可以通信,所以就没往这个方面怀疑。谢谢大家了,谢谢IJK

使用特权

评论回复
17
liyf1234| | 2013-8-9 08:59 | 只看该作者
你是不是没有检测68013的状态啊,

使用特权

评论回复
18
13528471454| | 2017-11-8 11:26 | 只看该作者
楼主,你好,请问你使用的是FSMC总线吗?  总线上面挂了几个外设呢,我这边单个片选是没问题的,当多个片选的时候,总线上读出的数据就是异常的。

使用特权

评论回复
19
nyszx| | 2017-11-8 13:02 | 只看该作者
祝贺楼主解决了,遇到类似的问题首先应该使用排除法,单独测试模块,单独正常后再连起来一起测。

使用特权

评论回复
20
冰山一角dxh| | 2017-11-14 11:27 | 只看该作者
13528471454 发表于 2017-11-8 11:26
楼主,你好,请问你使用的是FSMC总线吗?  总线上面挂了几个外设呢,我这边单个片选是没问题的,当多个片选 ...

你好,麻烦能不能告诉一下cy7c68013a怎样和stm32   FSMC引脚连接,谢谢了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

16

主题

190

帖子

0

粉丝