打印
[ZLG-ARM]

LPC2132怎样准确设置512k的波特率??

[复制链接]
2175|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
syzhou1314|  楼主 | 2008-6-17 00:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好:
    现做一项目,用LPC2132,外部晶振是12MHZ(必须),通讯速率必须是512Kbps,设置CPU工作频率Fcclk是48M(四倍频),Fpclk =Fcclk=48M,利用公式"
"Fdiv  = (Fpclk / 16) / UART1_BPS;"    算得Fdiv为5.859,取整数部分是5,所以写入寄存器U1DLM ( 等于Fdiv / 256)和U1DLL(等于Fdiv % 256)的数值不为整数,导致通讯速率误差较大,请问有各位碰到这个问题吗? 您是怎么解决的?
谢谢~!

相关帖子

沙发
toluoxin| | 2008-6-17 09:20 | 只看该作者

?

好像只有换晶振

使用特权

评论回复
板凳
toluoxin| | 2008-6-17 09:27 | 只看该作者

.

要么你就提升Fcclk=Fpclk =60M,Fdiv约为7.这样误差可以小点.想要整数倍只有换晶振.

使用特权

评论回复
地板
syzhou1314|  楼主 | 2008-6-17 19:33 | 只看该作者

谢谢啦,现在把晶振改为12.288了,Fpclk =Fcclk=4*12.288M

 谢谢啦,现在把晶振改为12.288了,Fpclk =Fcclk=4*12.288M,FDIV等于整数6

使用特权

评论回复
5
syzhou1314|  楼主 | 2008-6-19 11:29 | 只看该作者

是不是不能设置高达1024K的波特率

现在512k用数字示波器看实现了,但是现在是需要1024kBPS的速率,当将串口速率设置为1024k的时候,发送0x55的波形中出现了类似与开始位、停止位等信息,速率在示波器上看就不对了,但是512k的时候是没有这些信息位的,请问是不是不能设置高达1024K的波特率啊?谢谢

使用特权

评论回复
6
zlgarm| | 2008-6-19 14:07 | 只看该作者

您好

您好:
   通过公式进行计算就可以得到LPC2132最大波特率值。
On duty:glh

使用特权

评论回复
7
wlsui| | 2008-6-19 21:58 | 只看该作者

波特率的大小限制

波特率的大小:跟你的处理器速度、线路长短、通信环境、RS232电平转换芯片的延迟都有关系
尤其是RS232电平转换芯片的延迟,很容易被人忽略
要达到1024kbps,一般的232电平转换芯片应该都难以支持的
(zlgmcu engineer)

使用特权

评论回复
8
syzhou1314|  楼主 | 2008-6-20 09:07 | 只看该作者

这里是处理器与外围器件之间的通讯

这里是处理器与外围器件之间的通讯,不涉及您所述的哪些因素。

使用特权

评论回复
9
wlq_9| | 2008-6-20 14:14 | 只看该作者

14.7456M晶体14.7456*4=58.9824M.
NXP的60M的ARM7这个晶体无疑是最合适的!

使用特权

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

本版积分规则

19

主题

61

帖子

2

粉丝