作者charleshu (Analog Engineer)
看板Electronics
标题Re: [问题] 8051 RS232 Baud Rate问题
时间Mon Jul 20 00:11:43 2009
y※ 引述《sparc (Lenovo sucks)》之铭言:
: 目前做的东西会用到8051透过rs232与PC沟通
: 使用Atmel 89s52 keil C 使用timer2 产生buadrate
: 之前使用12MHZ的crystal
: 还是会收到乱码
: 目前把TL2C以及TL2改成0XDB在测试中
: 请问一下各位前辈
: 1,使用timer2产生buadrate的作法洽当吗?
使用timer1或2都可以,基本上没有差别.
: 还是得改回使用timer1?
: 2, 这样设定方式是否正确?
: 是否有人可以提供一个稳定度最高的搭配?(可以改变crystal的频率 )
请参考atmel 的 Atmel 8051 Microcontrollers Hardware Manual
第 2-99页有详列使用timer1时各种Fosc与Baudrate的建议设定.
第 2-101则为timer2的.
12Mhz使用Timer2时设为 FF-D9 是Atmel 建议的. (RCAP2H -RACP2L)
: 3, 是否有其他简单的方式可以提高rs232通道的可靠度?
加crc,有问题时重送,就算在工业环境有noise的情况下,也不用担心.
: 4, crystal(挂两颗电容) 以及oscillator(要给电源的)
只要电源正确且乾净Oscillator本身的频率只由它自己决定.
但Crystal的频率由Crystal + 那两颗电容 + IC + Layout 决定.
但假如设计及layout都正确,它们基本上一样正确.
: 如果改为使用oscillator会不会提高rs232的可靠度?
假如你crystal电路有问题,那换oscillator可能会改善,但假如本来没问题,那就不会有改善.
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.233.19