楼主: liangjlong

[CodeWarrior] CW10.6下使用PEMKE02Z60VLH4使用UART0,接收“0”异常(已解决)

[复制链接]

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-20 10:12:45 | 显示全部楼层
我将串口电缆从印制板接口拔下,短接发送、接收,用串口调试助手可以接到00,证明PC机确实发出了0x0,只是MCU没收到
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-20 10:15:42 | 显示全部楼层
用示波器测量MCU的Pin48,也确实看到了约1ms的低电平,证明数据确实发到MCU。(换了两块板子,现象都一样,且其他字节都能接收到,MCU虚焊或故障也可以基本排除)
回复 支持 反对

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
发表于 2014-9-22 09:06:49 | 显示全部楼层
好的,你的问题我会验证一下,楼主你可以用Console模块再试下。
回复 支持 反对

使用道具 举报

该用户从未签到

16

主题

199

帖子

2

中级会员

Rank: 3Rank: 3

积分
443
最后登录
2019-12-24
发表于 2014-9-22 12:39:03 | 显示全部楼层
楼主碰到情况可能是由波特率误差造成的。你的总线频率已设定,你在PE中设定9600,实际没有得到9600,或高或低,误差超过了芯片的容错范围,码就错了。你应确定9600后,反推总线频率,确保一定要9600整数。你试试可能就对了。
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-22 13:59:53 | 显示全部楼层
波特率误差,不可能只有0接收出错,其他的数据接收正常。
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-22 14:01:00 | 显示全部楼层
ZJJ ,您好;
我再用console试一试。
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-23 07:34:32 | 显示全部楼层
确如wangandrew所说,波特率的误差造成的,我把MCU接收波特率提高10%,PC以9600bps发送,MCU已105600bps接收,通信正常,10%的误差,这还是MCU吗?
谢谢wangandrew。
请教FSL_TICS_ZJJ,能否帮我分析一下,我的PE哪里设置错误了吗?谢谢
回复 支持 反对

使用道具 举报

该用户从未签到

145

主题

4926

帖子

0

金牌会员

Rank: 6Rank: 6

积分
9267
最后登录
1970-1-1
发表于 2014-9-23 10:21:52 | 显示全部楼层
liangjlong 发表于 2014-9-23 07:34
确如wangandrew所说,波特率的误差造成的,我把MCU接收波特率提高10%,PC以9600bps发送,MCU已105600bps接 ...

楼主,你用示波器测下,看看你发出来的9600bps实际是多少?
看你设置的9600,实际上配置的是9619,但是倒推归来,还是在误差允许范围内的。
the allowed baud
rate mismatch is about ±4.5 percent for 8-bit data format and about ±4 percent for 9-bit
data format.
算下来,你的误差也就0.2%,在误差范围之内。
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-23 12:39:09 | 显示全部楼层
是我的问题,我用的内部32K晶振,FEI方式,误差太大了。
原来用56F80xx也用内部晶振,57600bps,-40-55℃温度循环3天,都通讯正常,
觉得KE02的内部晶振应该也可以。通讯速率也不高。而且也用外部晶振做输入源试过,也是收不到0,以为不是时钟问题,(其实是外部晶振没配置好,当时还是用的FEI)
现将外部晶振配置好后,通讯正常。

freescale在KE02内部的32K晶振的偏差也太大了点了。头一次见这么大的偏差的。STC51在-40--85℃温飘下误差才1%。
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

63

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2014-9-23 12:39:50 | 显示全部楼层
谢谢您这两天对我的帮助
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2025-7-24 01:15 , Processed in 0.103519 second(s), 28 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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