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

stm32串口通信乱码,求助!

[复制链接]
zhuyueqi 提问时间:2018-1-18 16:24 /
使用单片机STM32F100C8T6,时钟为24Mhz,配置串口USART1进行串口通信,但是通信有异常,总是数据返回不对,程序里面写的是发送什么接收什么,当hex发送01时,返回40,发送0001时,返回0100,发送00010203040506返回01020304050600,数据总是有问题。请大神帮忙解惑!

图1

图1

图2

图2

图3

图3
收藏 评论7 发布时间:2018-1-18 16:24

举报

7个回答
yu0405jie 回答时间:2018-1-18 16:49:36
你试着把发送部分放到外面来,放里面感觉挺危险的

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

zhuyueqi 回答时间:2018-1-18 16:53:43
yu0405jie 发表于 2018-1-18 16:49
你试着把发送部分放到外面来,放里面感觉挺危险的

发送到外面也是一样的,数据都不正确。
yu0405jie 回答时间:2018-1-18 18:36:36
zhuyueqi 发表于 2018-1-18 16:53
发送到外面也是一样的,数据都不正确。

串口接收到数据就已经乱了吗?
Inc_brza 回答时间:2018-1-18 19:05:08
这是全部代码吗?RX的GPIO引脚的没有配置? GPIO的反转速度目测设置满了,开50M如何?

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

wenyangzeng 回答时间:2018-1-18 19:30:28
你应该对系统时钟进行正确的配置,请参考我的贴:
https://www.stmcu.org.cn/module/forum/thread-614091-1-1.html

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

xmshao 回答时间:2018-1-18 20:07:24
保证硬件连接的正确性;
收发端的通信参数配置一致;
GPIO/UART的基本配置确认下,可以参考官方例程;注意管脚复用功能的冲突;
注意中断优先级的问题;

评分

参与人数 1蝴蝶豆 +4 收起 理由
zero99 + 4

查看全部评分

聪神聪 回答时间:2018-1-19 09:03:47
楼主你别一次性发太多给单片机 要么把接收到的数据放到BUFF里面等接收完一帧数据在主程序里面打印,比如你用115200的波特率 发一个字节就 9/115200 S(约等于78US).关键你中断里面还要发接收到的数据,你很有可能中断里面一个数据没发完,另一个数据就来了。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

所属标签

相似问题

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