查看: 2556|回复: 3

[求助] K64串口奇偶校验的设置?

[复制链接]

该用户从未签到

48

主题

141

帖子

1

中级会员

Rank: 3Rank: 3

积分
385
最后登录
2020-8-7
发表于 2015-12-16 01:08:49 | 显示全部楼层 |阅读模式
8位数据位,偶校验,一个停止位。这个该怎么设置?
我设置UARTx_C1的M位为0,PE位为1,PT位为0(UARTx_C1=2),但是在电脑上用串口调试助手做相应的设置无法收到正确数据。
但是设置UARTx_C1的M位为1(数据9位),PE位为1,PT位为1(奇校验 UARTx_C1=0x13),这样用串口调试助手设置成偶校验才能收到正确数据。这是为什么?哪儿错了?正确的做法是什么?
我知道答案 目前已有3人回答
回复

使用道具 举报

  • TA的每日心情
    开心
    2018-7-2 06:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    59

    主题

    2888

    帖子

    10

    金牌会员

    Rank: 6Rank: 6

    积分
    6020
    最后登录
    2020-9-28
    发表于 2015-12-16 10:13:05 | 显示全部楼层
    楼主你好
    如果你会使用Kinetis Design Studio集成开发环境(IDE)或CodeWarrior10.6里的Processor Expert工具,那么只需要简单配置就能得到你需要的UART模块寄存器配置了。
    K64 UART.jpg
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    145

    主题

    4926

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    9267
    最后登录
    1970-1-1
    发表于 2015-12-16 11:22:00 | 显示全部楼层
    楼主你好!
    这个和你的串口助手也有关系,你的串口助手是否配置为8位数据位,1位停止位+校验位呢?
    如果是的话,那么你MCU 就需要配置为9位模式,保证数据位8位,还有一位为校验位。
    其实这里需要注意的是,如果K64配置为8位模式,并且使能校验位,这个校验位不是额外添加一个位,而是把数据的最高位作为了校验位,也就是8位数据位,里面只有低7位为数据,最高位,也就是stop位之前为校验位。
    所以,如果你需要数据位为8位,还添加校验位,你就需要配置实际的数据为9位,这样第9位就是校验位。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-1-6 07:38
  • 签到天数: 736 天

    连续签到: 1 天

    [LV.9]以坛为家II

    21

    主题

    3486

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    5093
    最后登录
    2024-1-7
    发表于 2015-12-16 13:51:26 | 显示全部楼层
    学习一下,避免以后自己遇到同样的问题时不会处理,版主解答的很明白
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-20 20:42 , Processed in 0.093039 second(s), 25 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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