搜索
bottom↓
回复: 38

麻烦用过USB3300大神帮忙看看,PC不能正常识别STM32F407+USB3300

[复制链接]

出0入102汤圆

发表于 2018-6-10 10:52:06 | 显示全部楼层 |阅读模式
参考官方的USB3300 EVB以及坛里wdluo大神出的板,做了一块STM32F407 OTG PHY+USB3300转CAN的小板,
使用wdluo大神的驱动和测试例程。板接到PC机后,偶尔能识别,而且测试数据收发也是OK的,读数据速度
31.1MByte/s,写数据速度22.3MByte/s。




但是能被正常识别的概率非常小,很难碰到一次,大部分是Unknow Device。


在画板的时候大意了,没有考虑到90欧姆差分布线。


USB3300模块部分的原理图



整板的原理图


麻烦用过USB3300的大神帮看看,哪些地方需要修改?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入442汤圆

发表于 2018-6-10 11:15:44 | 显示全部楼层
复位问题?你给复位挂个GPIO,MCU起来之后释放USB3300的复位试试。

我这用FX3时,它的内置固件只能枚举一次跟你这种完全一样的复位就会导致各种不识别和识别不良。所以你可能还得去检查代码,是不是只做了一次枚举。验证方法很简单,你在能正常工作的时候不断板子的电,重新插拔USB线看看能不能识别。



对了,我现在的电路全部加了复位芯片。。。

出0入85汤圆

发表于 2018-6-10 11:39:05 | 显示全部楼层
关注下

出5入4汤圆

发表于 2018-6-10 12:19:09 | 显示全部楼层
这是网上看到的USB3300,楼主你对比看一下。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入102汤圆

 楼主| 发表于 2018-6-10 13:25:48 | 显示全部楼层
wye11083 发表于 2018-6-10 11:15
复位问题?你给复位挂个GPIO,MCU起来之后释放USB3300的复位试试。

我这用FX3时,它的内置固件只能枚举一 ...

1、我也曾怀疑过复位的问题,刚才飞线加复位的GPIO,程序一上来就给USB300复位,然后初始化USB并枚举,
不过没有奏效。另外,发现一个手工识别的方法,第一次板接到PC机不能识别之后,用镊子给MCU复位一下,
重新初始化USB3300,PC就能识别了。但是在程序里面MCU做了延时再初始化USB3300却没能成功。

2、程序确实是只枚举了一次,然后while循环等会枚举成功,不成功就一直闪灯。
  USBD_Init(&USB_OTG_dev,
#ifdef USE_USB_OTG_HS
            USB_OTG_HS_CORE_ID,
#else            
            USB_OTG_FS_CORE_ID,
#endif
            &USR_desc,
            &USBD_CDC_cb,
            &USR_cb);

  while(DeviceConfigured==0){
    LED_On(LED_G);
    delay_ms(2);
    LED_Off(LED_G);
    delay_ms(100);
  }
  LED_On(LED_R);

3、你是给USB3300单独加了复位芯片吗?是否可以给一下参考原理图?

出0入102汤圆

 楼主| 发表于 2018-6-10 13:37:55 | 显示全部楼层
linyibinleo 发表于 2018-6-10 12:19
这是网上看到的USB3300,楼主你对比看一下。

我看过这个板的原理图,不同地方是VBUS的供电保护,这是给外部U盘供电的。
我现在的USB3300是作为Device设备来用的,就没加这个电路。
另外我也试过24M晶振并10M电阻,示波器测到的晶振信号,一边是高电平,一边有晶振信号。
改为并1M电阻,晶振两边都有信号。
我测过板上的电压,3.3V和1.8V引脚都有相应的电压。
另外USB3300的CLKOUT引脚也能测到60MHz的正弦波信号。

出0入0汤圆

发表于 2018-6-10 13:43:05 | 显示全部楼层
这是最近用过的图,没有遇到过类似的问题。楼主可以看一下是否有参考价值。
我觉得不像是需要更复杂的复位,我的复位甚至是直接接地的。





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2018-6-10 13:47:05 | 显示全部楼层
wye11083 发表于 2018-6-10 11:15
复位问题?你给复位挂个GPIO,MCU起来之后释放USB3300的复位试试。

我这用FX3时,它的内置固件只能枚举一 ...

USB3300复位还是比较友好的。
我是复位脚直接固定电平,然后调试时一直连着USB线、单片机频繁刷程序也都能正常枚举。

出0入0汤圆

发表于 2018-6-10 14:04:25 | 显示全部楼层
手册上说15脚和26脚应该连起来,但是楼主位和4楼的图没有连,会不会和这个有关?

出0入102汤圆

 楼主| 发表于 2018-6-10 15:17:48 来自手机 | 显示全部楼层
K.O.Carnivist 发表于 2018-6-10 14:04
手册上说15脚和26脚应该连起来,但是楼主位和4楼的图没有连,会不会和这个有关? ...

看到你的回复,非常的感谢,这让我又看到了希望,手册上写复位引脚建议是接地的,我试过拆掉我原理图的10nf电容,替换4.7K为0欧电阻,但也是没有效果。

另外我也试过将25和26脚用导线接起来,也是没改善。

出0入0汤圆

发表于 2018-6-10 15:46:27 | 显示全部楼层
USB上打过过孔不太好吧?毕竟速度那么快

出0入0汤圆

发表于 2018-6-10 16:00:00 | 显示全部楼层
407不是有自带的USB PHY还用USB3300干啥?

出30入54汤圆

发表于 2018-6-10 18:01:52 | 显示全部楼层
qq635274216 发表于 2018-6-10 16:00
407不是有自带的USB PHY还用USB3300干啥?

只有全速PHY,高速没有

出0入102汤圆

 楼主| 发表于 2018-6-11 08:50:33 | 显示全部楼层
登云钓月 发表于 2018-6-10 15:46
USB上打过过孔不太好吧?毕竟速度那么快

其实官方的验证板的D+和D-都打了孔的,设计指导手册写的是USB数据线要做90欧姆查分布线。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2018-6-11 09:12:49 | 显示全部楼层
N_EMBED 发表于 2018-6-11 08:50
其实官方的验证板的D+和D-都打了孔的,设计指导手册写的是USB数据线要做90欧姆查分布线。

...

人家是两根线上都有过孔 所以阻抗能匹配 你的是一根线没有过孔 一根线两个过孔

出0入102汤圆

 楼主| 发表于 2018-6-11 09:45:24 | 显示全部楼层
登云钓月 发表于 2018-6-11 09:12
人家是两根线上都有过孔 所以阻抗能匹配 你的是一根线没有过孔 一根线两个过孔 ...

之前做过USB数据线在同一面的板,不过没做差分,也是不好识别。
另外,看到某宝有一款板,也是这样打过孔,识别挺稳定的,
过孔确实会影响速度,但是我现在首要解决的是识别的问题。

出0入102汤圆

 楼主| 发表于 2018-6-12 08:44:59 | 显示全部楼层
顶一下,希望有用过的大神帮忙看看

出0入0汤圆

发表于 2018-6-12 09:23:26 | 显示全部楼层
我用这个电路确认稳定可靠

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入102汤圆

 楼主| 发表于 2018-6-12 09:58:54 | 显示全部楼层
nongxiaoming 发表于 2018-6-12 09:23
我用这个电路确认稳定可靠

从原理图来看,感觉差别不是很大,问题很大可能是在PCB布线上面。
但是看了WAVESHARE 板的布线,感觉也不是差分布线,但是却能稳定枚举,很纳闷。。。

出0入0汤圆

发表于 2018-6-12 17:07:59 | 显示全部楼层
如私信,
手上还真有一个测试程序,可以试试看。
这是个用Cube_FW_F4里面的例子改的,64字节HID回环。我的板子晶振不是8M,频率相关部分改过但没测试。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入102汤圆

 楼主| 发表于 2018-6-12 17:45:51 | 显示全部楼层
K.O.Carnivist 发表于 2018-6-12 17:07
如私信,
手上还真有一个测试程序,可以试试看。
这是个用Cube_FW_F4里面的例子改的,64字节HID回环。我的 ...

首先感谢你的例程,测试是OK的,HID的驱动自动安装,并且每次都能识别。


但是HID的速度达不到要求,还是要用F407的高速CDC类通讯才行,
所以我还得继续找问题,再次感谢。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2018-6-12 18:10:22 | 显示全部楼层
复位信号R2改为电容试试,在其它芯片试过接电阻有问题。

出0入102汤圆

 楼主| 发表于 2018-6-12 18:33:33 | 显示全部楼层
pengchhui 发表于 2018-6-12 18:10
复位信号R2改为电容试试,在其它芯片试过接电阻有问题。

USB3300是高电平复位的,芯片内部有电阻下拉的
所以手册建议复位引脚接地,或者悬空
7楼的图就是接地的,18楼的原理图是悬空的
而我是参照wdluo大神的USBXYZ板来画的

出0入0汤圆

发表于 2020-6-9 09:04:40 | 显示全部楼层
我的也是枚举一次,是直接进去循环,然后设备标识识别不了

出0入54汤圆

发表于 2020-6-9 09:28:44 | 显示全部楼层
9楼说是15脚和26脚连在一起,你在10楼回的是25脚和26脚,不知道是你回复的笔误还是。

我之前用的是USB3320,1.8V是需要外加LDO供电的,3300不是很清楚。

出0入85汤圆

发表于 2020-6-10 10:12:20 | 显示全部楼层
wye11083 发表于 2018-6-10 11:15
复位问题?你给复位挂个GPIO,MCU起来之后释放USB3300的复位试试。

我这用FX3时,它的内置固件只能枚举一 ...

你好,最近我也准备尝试使用CY7C68013这个片子,应用在win7以上操作系统,但有点担心,不知道这个片子的稳定性如何?老兄可是将这个片子应用到工业场合?

出0入442汤圆

发表于 2020-6-10 12:52:38 来自手机 | 显示全部楼层
marshallemon 发表于 2020-6-10 10:12
你好,最近我也准备尝试使用CY7C68013这个片子,应用在win7以上操作系统,但有点担心,不知道这个片子的 ...

很皮实,但是usb是不可靠协议,你软件得做好掉线恢复

出0入102汤圆

 楼主| 发表于 2020-6-18 19:01:26 | 显示全部楼层
lusson 发表于 2020-6-9 09:28
9楼说是15脚和26脚连在一起,你在10楼回的是25脚和26脚,不知道是你回复的笔误还是。

我之前用的是USB3320 ...

后面我发现一楼的原理图没有问题,而问题在于F407的8M晶振匹配电容,
C19和C21应该选30pf或者33pf,F407才能真正跑起来,
换了这两个电容之后,每次都能枚举成功。

出0入102汤圆

 楼主| 发表于 2020-6-18 19:03:12 | 显示全部楼层
小林88 发表于 2020-6-9 09:04
我的也是枚举一次,是直接进去循环,然后设备标识识别不了

你发一下原理图来看看,或者参考我发的原理图

出0入0汤圆

发表于 2021-10-15 14:38:02 | 显示全部楼层
老兄您好,我最近在使用STM32F407IGT6加3300  3300电路是参考微雪的设计,目前存在这么个问题。  407中没有程序或者说给它boot模式不运行代码,3300的晶振是ok的,在clk输出处可以查看到60M的一个输出频率。但是当我usb的程序运行时,3300的24M晶振就不工作了。电脑也就啥反应都没有,甚至不识别器件这个动作都没有。 不知道老兄或者各位网友有无遇到过。  我的15到26引脚已连接,电容各项都正确。  有一点是当初设计没注意到的,就是那个dm,dp没有差分走线。

出0入0汤圆

发表于 2021-10-15 14:39:16 | 显示全部楼层
看手册说3300晶振不工作可能是打开了节能模式,但我并没有对其寄存器进行操作。。。。为了排除代码问题,使用stmcube生成的测试代码。

出0入0汤圆

发表于 2021-10-15 14:45:39 | 显示全部楼层
各位网友,这是俺的原理图   其中usb接口没接上拉,因为看手册上说3300内部集成了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入102汤圆

 楼主| 发表于 2021-10-16 18:15:13 | 显示全部楼层
安然123 发表于 2021-10-15 14:45
各位网友,这是俺的原理图   其中usb接口没接上拉,因为看手册上说3300内部集成了。 ...

综合你描述来看,你是参考Waveshare板子来设计的,有几个问题要去确认,
1、USB3300的24M晶振本身负载电容是多少?匹配c17和c18的值是否是20pF?
2、USB3300芯片的底部焊盘是否有接地焊盘,是否用风枪吹焊保证接地良好?
3、如果有Waveshare的板,可以飞线到你的F407,并用例程来测试排除问题。

出0入0汤圆

发表于 2021-10-16 19:02:12 | 显示全部楼层
N_EMBED 发表于 2021-10-16 18:15
综合你描述来看,你是参考Waveshare板子来设计的,有几个问题要去确认,
1、USB3300的24M晶振本身负载电 ...


楼主,你最后怎么解决的,是差分线阻抗匹配的问题吗?

出0入102汤圆

 楼主| 发表于 2021-10-16 19:08:53 | 显示全部楼层
meirenai 发表于 2021-10-16 19:02
楼主,你最后怎么解决的,是差分线阻抗匹配的问题吗?

不是阻抗的问题,当时是晶振匹配电容没选对导致的

出0入0汤圆

发表于 2021-10-19 13:44:36 | 显示全部楼层
安然123 发表于 2021-10-15 14:39
看手册说3300晶振不工作可能是打开了节能模式,但我并没有对其寄存器进行操作。。。。为了排除代码问题,使 ...

你试一下,单片机供电后再给芯片供电。

出0入0汤圆

发表于 2021-10-19 23:04:16 | 显示全部楼层
N_EMBED 发表于 2021-10-16 18:15
综合你描述来看,你是参考Waveshare板子来设计的,有几个问题要去确认,
1、USB3300的24M晶振本身负载电 ...

好的 谢谢老哥的回复。  恰好我提问的那天晚上解决了问题。。正兴高采烈的回学校,路上出了车祸。。。   由于我当时改动有几处,但是时间原因来不及去验证和排除到底是谁的原因。  不过首先排除不是阻抗匹配的原因,因为还是那个板子,现在数据传输还是很稳定。(可能作了阻抗匹配,数据传输更快?有待考究)  其次更换了24M晶振的匹配电阻为1M,然后也参考了楼主说的把407的8M晶振匹配电容改为33p,我最后还是使用的22p。  还有最后一个改动,就是引脚,我把usb的nxt和dir引脚分别改为了h4和i 11.  对于我的板子而言,问题应该是这个引脚变动解决的。     可是我没改动之前用cube生成的代码始终不行,很是纳闷。  改了之后,自己写的摄像头传输程序就都一切正常了。。等我康复,仔细的确认下原因。

出0入0汤圆

发表于 2021-10-20 08:13:13 | 显示全部楼层
对了 我自己最后使用的芯片是f407igt6    之前模块调试一直用得是f407zgt6,因为摄像头需要12位有引脚冲突,改成了igt6.    现在都已经调通。

出0入102汤圆

 楼主| 发表于 2021-10-20 19:39:00 | 显示全部楼层
安然123 发表于 2021-10-20 08:13
对了 我自己最后使用的芯片是f407igt6    之前模块调试一直用得是f407zgt6,因为摄像头需要12位有引脚冲突 ...

解决了就好,从这个问题解决的过程也算是积累了经验
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-20 05:45

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表