楼主: winamp123

[求助] k10在内部时钟下UART不能设置奇偶校验?

[复制链接]

该用户从未签到

27

主题

71

帖子

0

中级会员

Rank: 3Rank: 3

积分
262
最后登录
1970-1-1
发表于 2014-2-1 22:21:06 | 显示全部楼层 |阅读模式
 发现一个奇怪现象,一直不能求解。K10我没有接外部晶振,用内部32K时钟倍频到40960KHz。UART波特率是115200,如果不设置奇偶校验没问题,与上位机通信正常。如果设置了Even, Odd,结果通信就是乱码。
会不会是内部时钟导致奇偶校验不准?请哪位高手指点下。
我知道答案 目前已有9人回答
回复

使用道具 举报

该用户从未签到

27

主题

71

帖子

0

中级会员

Rank: 3Rank: 3

积分
262
最后登录
1970-1-1
 楼主| 发表于 2014-2-1 22:22:11 | 显示全部楼层

RE:k10在内部时钟下UART不能设置奇偶校验?

用KL04的板子也是这个问题
回复 支持 反对

使用道具 举报

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

    连续签到: 1 天

    [LV.1]初来乍到

    59

    主题

    2888

    帖子

    10

    金牌会员

    Rank: 6Rank: 6

    积分
    6020
    最后登录
    2020-9-28
    发表于 2014-2-8 17:34:47 | 显示全部楼层

    回复:k10在内部时钟下UART不能设置奇偶校验?

    如果楼主有条件,可以用示波器测一下uart传输波形
    看波特率是否准确,奇偶校验位是否准确。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11

    主题

    354

    帖子

    0

    高级会员

    Rank: 4

    积分
    693
    最后登录
    1970-1-1
    发表于 2014-2-10 20:05:25 | 显示全部楼层

    RE:k10在内部时钟下UART不能设置奇偶校验?

    请问楼主问题解决了吗
    我的KE02板子uart波特率也有点不准
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    27

    主题

    71

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    262
    最后登录
    1970-1-1
     楼主| 发表于 2014-2-11 21:41:27 | 显示全部楼层

    RE:k10在内部时钟下UART不能设置奇偶校验?

    没解决,郁闷。估计是内部时钟问题。
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]初来乍到

    59

    主题

    2888

    帖子

    10

    金牌会员

    Rank: 6Rank: 6

    积分
    6020
    最后登录
    2020-9-28
    发表于 2014-2-12 14:10:19 | 显示全部楼层

    RE:k10在内部时钟下UART不能设置奇偶校验?

    楼主你可以测试debug时的波特率是否与复位后波特率不一样。
    最近发现使用CodeWarrior下PE配置慢速IRC,可能会遇到debug时IRC处于32.768KHz而复位后IRC处于31.25KHz情况。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]初来乍到

    59

    主题

    2888

    帖子

    10

    金牌会员

    Rank: 6Rank: 6

    积分
    6020
    最后登录
    2020-9-28
    发表于 2014-2-14 14:39:00 | 显示全部楼层

    回复:k10在内部时钟下UART不能设置奇偶校验?

    回复第 6 楼 于2014-02-12 14:10:19发表:
    楼主你可以测试debug时的波特率是否与复位后波特率不一样。
    最近发现使用CodeWarrior下PE配置慢速IRC,可能会遇到debug时IRC处于32.768KHz而复位后IRC处于31.25KHz情况。 

    以上问题主要发生在内部慢速时钟出厂trim到31.25KHz的系列芯片上(比如KE02),因为CodeWarrior的OpenSDA软件debug时将会把内部慢速时钟trim到32.768KHz。
     
    如果楼主怀疑是由于内部时钟不准确导致的,可以将MCGIRCLK时钟从CLKOUT引脚测量。
    CLKOUT K10.jpg
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11

    主题

    354

    帖子

    0

    高级会员

    Rank: 4

    积分
    693
    最后登录
    1970-1-1
    发表于 2014-2-14 17:12:38 | 显示全部楼层

    回复:k10在内部时钟下UART不能设置奇偶校验?

    回复第 5 楼 于2014-02-11 21:41:27发表:
    没解决,郁闷。估计是内部时钟问题。 

    我的KE02内部时钟问题找到了,就是Robin在7楼所说的原因。
    出厂默认31.25KHz,CodeWarrior软件的PE和OpenSDA都给我配成32.768KHz了。
    所以debug时串口波特率还蛮准的,一旦复位IRC变成31.25后波特率分频比还是按照PE当时根据32.768计算的,所以就不准了。
     
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11

    主题

    354

    帖子

    0

    高级会员

    Rank: 4

    积分
    693
    最后登录
    1970-1-1
    发表于 2014-2-14 17:14:26 | 显示全部楼层

    回复:k10在内部时钟下UART不能设置奇偶校验?

    串口波形很简单的,楼主直接用示波器测一下,看芯片串口发送出来的115200 odd校验波形是否正确得了。
    如果波特率准确、奇偶校验位也对,那么就可以确定芯片发送是否有问题。
     
    如果芯片发送没问题就再去检查上位机。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    27

    主题

    71

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    262
    最后登录
    1970-1-1
     楼主| 发表于 2014-2-19 10:03:21 | 显示全部楼层

    回复:k10在内部时钟下UART不能设置奇偶校验?

    就现象来看,还不是你和 Robin所说的问题。K10在复位重启后,串口正常。只是在进去keil调试模式后,在串口初始化之前,一直会打印0x00。是不是进入调试模式后,TX失控?
     
    回复第 9 楼 于2014-02-14 17:14:26发表:
    串口波形很简单的,楼主直接用示波器测一下,看芯片串口发送出来的115200 odd校验波形是否正确得了。
    如果波特率准确、奇偶校验位也对,那么就可以确定芯片发送是否有问题。
     
    如果芯片发送没问题就再去检查上位机。
     
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2025-7-19 01:49 , Processed in 0.107963 second(s), 30 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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