新闻中心

EEPW首页 > 测试测量 > 设计应用 > 经改造的DDS功能用作波特率发生器

经改造的DDS功能用作波特率发生器

作者:时间:2012-08-04来源:网络收藏

  一般情况下,可以用一个现有的振荡器,为一个UART产生一个波特率时钟。振荡器频率必须作分频,而分频会带来波特率误差。表1表示当用一个8 MHz晶振和一个普通的二进制分频器生成波特率时,产生误差的百分比。本例中的系统可以获得一个比波特率快16倍的时钟。

表1

  当频率不相匹配时,波特率设置中的误差会增加。此时,可以增加一个工作在18.432 MHz的振荡器,以尽可能减小误差率。另外,可以采用(直接数字综合)方法,以较高波特率使用相同振荡器,从而降低误差(表2)。

  参考文献1中描述了基本的操作原理。本设计采用了一种较简单的版本,只有一个方波输出(图1)。可以从相位累加器的MSB获得方波的输出。也可以增加一个除2级,使获得的信号有50%的占空比。波特率时钟频率的计算方法是:波特率时钟 = (基准时钟×控制字/2N)/2,其中N是相位累加器的位数。代码清单1(http://www.edn.com/file/25467-Modified_DDS_functions_as_baud_rate_generator_listing.doc)是一个采用20位相位累加器和16位控制字的DDS的Verilog实现。

  参考文献 1.A Technical Tutorial on Direct Digital Synthesis,” Analog Devices, 1999.



评论


相关推荐

技术专区

关闭