作者zxvc (zxvc)
站内Electronics
标题请问RS-232设计的问题
时间Mon Aug 20 02:26:16 2007
我的FPGA板说明书写振荡器是33.3MHz(我怀疑它应该是33,333,333Hz)。
我最近要设计从PC经由RS-232传资料到FPGA,我使用9 pin connector。
感谢CuckooBoy网友的帮助,让我学到不少东西。
我现在有个问题就是因为我的振荡器频率不能被任何的
标准的Baud rate整除,例如9600, 14400, ...。
CuckooBoy网友是建议我把所有的标准Baud rate除33.3MHz,
取商最靠近整数的Baud rate,再做除频器(我是设计数位电路)。
我後来选定Baud rate = 38400,後来我果然可以传资料到FPGA上了,
但是可惜的是我发现仍然有机会收到错误的资料(我是用非同步接收)。
我想这是因为PC的Baud rate并不与FPGA的Baud rate完全相同所致,
有一点小误差,我自己分析的结果,这是难免会造成的错误,
比如,FPGA Baud rate一个clock cycle比PC多1%,
只要今天FPGA Baud rate的clock的active edge出现在
Start bit cycle的92%位置,那麽在sample第10个bit就会sample到错误的值。
不知道我的观念有没有误?
请问有这方面设计经验的大大要如何解决此问题?
--
往生净土咒:
南无阿弥多婆夜 哆他伽哆夜 哆地夜他 阿弥唎都婆毘 阿弥唎哆
悉耽婆毘 阿弥唎哆 毘迦兰哆 伽弥腻 伽伽那 只多迦隶 莎婆诃
《佛说阿弥陀经》
http://web.cc.ncu.edu.tw/~93501025/amtf.doc
《金刚经》
http://web.cc.ncu.edu.tw/~93501025/jg.doc
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.204.3