你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F446 USB和串口1 冲突

[复制链接]
miraclexue 提问时间:2017-12-5 15:49 /
阅读主题, 点击返回1楼
收藏 评论17 发布时间:2017-12-5 15:49
17个回答
回答时间:2017-12-6 10:55:46
楼主,看一下红色圈标注的。如果USB VBUS配置的话有会影响,这个引脚可以不进行配置。串口方面要考虑是否进行了CTS和RTS的配置。



截图_1.png

任风吹吹 回答时间:2017-12-6 11:09:42
miraclexue 发表于 2017-12-5 19:45
你好,感谢这么详细的回复。我用的是std标准库,单步调试GCCFG寄存器的novbussense位确实置1了,这也是我 ...

楼主可以先不使用PA9管脚,在使用USB的情况下并且关闭VBUS_SENSING功能的情况下,将PA9管脚设为GPIO输出试试,测试下toggle PA9管脚会不会引起USB复位?通过这种测试PA9管脚是否能独立正常工作。PA10先不急着用,等测试结果出来后再看。

如果PA9会引起复位,就得找你的代理帮忙看。
如果不会,那么就是你串口设置本身可能存在问题,检查串口设置,串口使用了那些管脚,与USB管脚有无冲突?

评分

参与人数 1ST金币 +2 收起 理由
miraclexue + 2 很给力!

查看全部评分

miraclexue 回答时间:2017-12-6 19:46:19
安 发表于 2017-12-6 10:55
楼主,看一下红色圈标注的。如果USB VBUS配置的话有会影响,这个引脚可以不进行配置。串口方面要考虑是否进 ...

串口1的硬件流控制是None,没有配置,但是串口1和PA9这个确实有影响。
做了以下实验:
PA9配置成输入IO口,USB正常
PA9配置成输出IO口,USB失效(默认低电平?)
PA9配置成输出IO口:
PA9置为高电平,USB正常
PA9置为低电平,USB失效
目前看来PA9貌似是低电平,USB就失效。但是VUSSENSing已经关闭,难道不起作用吗?
miraclexue 回答时间:2017-12-6 19:47:48
任风吹吹 发表于 2017-12-6 11:09
楼主可以先不使用PA9管脚,在使用USB的情况下并且关闭VBUS_SENSING功能的情况下,将PA9管脚设为GPIO输出 ...

按照你说的做了以下实验:
PA9配置成输入IO口,USB正常
PA9配置成输出IO口,USB失效(默认低电平?)
PA9配置成输出IO口:
PA9置为高电平,USB正常
PA9置为低电平,USB失效
目前看来PA9貌似是低电平,USB就失效。但是VUSSENSing已经关闭,难道不起作用吗?
任风吹吹 回答时间:2017-12-7 10:01:51
miraclexue 发表于 2017-12-6 19:47
按照你说的做了以下实验:
PA9配置成输入IO口,USB正常
PA9配置成输出IO口,USB失效(默认低电平?)

刚好手上又快STM32F446-NUCLEO板子,使用HAL库测试了下,没有你所说的现象(测试代码只是简单地将PA9管脚toggle测试USB是否有复位现象),楼主用链接中我给的代码测试下吧,如果你那边还出现USB复位问题,那么就得检查的自己的代码和电路了,除非你将代码和MCU部分原理图贴出来,别人是很难帮到你的。

测试代码链接:https://pan.baidu.com/s/1geWQEif

注:测试代码中时钟树可能跟你实际有所不同,测试代码中使用的外部8M HSE by-Pass模式,你需要根据实际进行调整。

评分

参与人数 1ST金币 +2 收起 理由
miraclexue + 2 很给力!

查看全部评分

miraclexue 回答时间:2017-12-8 16:46:46
任风吹吹 发表于 2017-12-7 10:01
刚好手上又快STM32F446-NUCLEO板子,使用HAL库测试了下,没有你所说的现象(测试代码只是简单地将PA9管脚t ...

非常感谢您的回复和提供的代码,经过咨询代理,找到了问题所在:
1、标准库中的USB库对于关闭VBUS有缺陷,要关闭VBUS,除了关闭VBUSSENSING以外,还需要自己添加对GOTGCTL寄存器的第6位和第7位的设置(HAL库例程里面有)
2、HAL库没有这个问题
3、建议以后用HAL库

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2 结贴奖励

查看全部评分

星星还是那个星星 回答时间:2020-6-4 17:00:00

时隔几年,又回到了这个帖子。移植官方DFU,查了一切问题,最终发现是#define VBUS_SENSING_ENABLED这句的问题(耗时1天半),注释掉,可以进入DFU模式,无语啊。继续看下资料,找找这个代码代表什么意思。
奥观海 回答时间:2020-11-23 12:56:24
任风吹吹 发表于 2017-12-7 10:01
刚好手上又快STM32F446-NUCLEO板子,使用HAL库测试了下,没有你所说的现象(测试代码只是简单地将PA9管脚t ...

大佬,446驱动usb的代码能不能给俺一份参考下,跪求
12

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版