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

STM32 CUBEMX生成的串口第一帧数据多出一个0xFF

[复制链接]
九天揽月3 发布时间:2020-10-23 21:52
: Q; f" m/ N& y3 w" _
串口异常
问题描述:使用STM32 CUBEMX生成的串口代码发送数据,第一帧数据之前会有一个0xFF。
8 \( T  X- I0 s! W$ T
硬件使用的是STM32F107VCT6的PD5、PD6

2 g2 X, R/ D1 Y* U: a
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps10.jpg
PD5、PD6默认为普通IO口,管脚重映射为串口功能
2 o$ I: G! p8 Q! w1 }* M
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps11.jpg
使用STM32 CUBEMX生成的串口代码发送数据,第一帧数据之前会有一个0xFF,这并不是我的本意
/ t% }) v) c+ [# ^( d9 D
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps12.jpg
通过示波器观察PD5引脚的波形,发现每次复位单片机后捕捉到的波形是

* n& C% p1 K4 V; k  U0 F- H" n
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps13.jpg
单步调式发现运行到__HAL_AFIO_REMAP_USART2_ENABLE();之后会使PD5引脚产生一个低电平脉冲
9 s0 U0 Y' o* d5 S2 U0 t5 L3 M8 @) ]
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps14.jpg
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps15.jpg
将代码做如下调整,再次测量发现问题得到解决,低电平脉冲不见了,串口调试助手收到的数据也正常了

' H5 M7 r' {0 o$ {: e% r
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps16.jpg
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps17.jpg
file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml7784\wps18.jpg
1 串口所用管脚.png
2 PD5 PD6重映射为串口.png
3 串口调试助手接收到的异常数据.png
4 示波器捕捉到的异常数据.png
5 单步调试定为代码异常位置.png
6 单步调试定为异常波形.png
9 修改后数据正常.png
7 修改异常代码位置.png
8 修改后波形为正常.png
赞 收藏 评论3 发布时间:2020-10-23 21:52

举报

3个回答
sumoon 回答时间:2020-10-26 09:32:05
提示: 作者被禁止或删除 内容自动屏蔽
boclandc 回答时间:2020-10-26 11:35:49
依UART原理,所有UART发送数据都有有启动位开始,也就是拉低(1位或1.5位时间依配置),STM32 在REset 之后,是INPUT 模式,此时可能是低电平,然后配置成高与OUTPUT模式,接收端会误以为UART 启动发送。 需要解决这个问题,TX 或 RX 硬件10K上拉到VCC, 然后软件初始化串口IO 先设轩高电平,然后更改输出模式。通常可以解决上电发送一个0XFF. 其实不仅是UART会出现此情况。
SMT64 回答时间:2026-8-19 16:17:33

f103遇到过类似的问题cubemx生成框架,使用到了串口1和3,串口1初始化时运行到huart1.Init.OverSampling = UART_OVERSAMPLING_16;就出现一个10us的低电平,后续正常高电平,非常离TMD谱image.png

傻逼ST造的傻逼芯片,又配上傻逼cube全家桶,傻逼到家了,要不是开发环境加持的话,早被xtensa干翻了

image.png

串口3只接收,所以Tx脚有无问题没测试

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版