打印
[其他ST产品]

关于STM32加奇偶校验的问题

[复制链接]
412|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
cr315|  楼主 | 2024-1-26 10:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ST有个例子 配置如下
    USART_InitStructure.USART_BaudRate = 9600;
   USART_InitStructure.USART_WordLength = USART_WordLength_8b;
   USART_InitStructure.USART_StopBits = USART_StopBits_1;
   USART_InitStructure.USART_Parity = USART_Parity_Even;
   USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
   USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
用计算机接收数据的时候,奇偶校验位作为了数据的最高位,我把USART_WordLength_8b;改成USART_WordLength_9b;就接收不到数据了,不知道问题处在那里,请各位指教。

使用特权

评论回复
沙发
jcky001| | 2024-1-29 16:34 | 只看该作者
硬件问题

使用特权

评论回复
板凳
elephant00| | 2024-1-29 16:35 | 只看该作者
波特率不匹配

使用特权

评论回复
地板
两只袜子| | 2024-1-29 16:35 | 只看该作者
如果你更改了USART_WordLength,那么你可能也需要更改USART_Parity。例如,如果你设置USART_WordLength_9b,那么你可能需要使用奇数校验位而不是偶数校验位。

使用特权

评论回复
5
一只眠羊| | 2024-2-16 19:07 | 只看该作者
你要把电脑端和你硬件端的配置都一致才行

使用特权

评论回复
6
未说出口的像你| | 2024-2-16 22:00 | 只看该作者
我觉得是你协议没匹配,估计是电脑没配置对吧

使用特权

评论回复
7
在曼谷的春| | 2024-2-17 01:00 | 只看该作者
你电脑也设置9位也许就好了

使用特权

评论回复
8
我吃小朋友| | 2024-2-17 03:00 | 只看该作者
直接用官方的试试吧,改改代码

使用特权

评论回复
9
月亮一键变蓝| | 2024-2-17 05:00 | 只看该作者
你把数据宽度修改9干啥?

使用特权

评论回复
10
失物招領| | 2024-2-17 07:00 | 只看该作者
电脑修改一下奇偶校验就好了

使用特权

评论回复
11
她已醉| | 2024-2-17 09:00 | 只看该作者
一般校验不都是设置0校验还是1校验么

使用特权

评论回复
12
将爱藏于深海| | 2024-2-17 11:00 | 只看该作者
对的,设备是需要设计成9位,电脑需要设置0还是1这种校验

使用特权

评论回复
13
春日负喧| | 2024-2-17 13:00 | 只看该作者
你好好理解一下串口通讯吧,你的配置变了,就导致数据接收不一致了的

使用特权

评论回复
14
温室雏菊| | 2024-2-17 19:00 | 只看该作者
建议不要这么修改,也不用使用硬件的校验,其实用协议用CRC校验也是不错的选择

使用特权

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

本版积分规则

1327

主题

3836

帖子

0

粉丝