波特率連續(xù)可調(diào)的串口通信技術(shù)
其中,Mode為循環(huán)相位累加器的最大值,即模值,可以預(yù)先設(shè)定。N為一個周期所包含的采樣點數(shù)。Mode,N的取值要綜合考慮fclk和FCW的值,以獲得一個隨FCW線性變化的fclk即實現(xiàn)了fclk隨FCW變化而變化的連續(xù)可調(diào)。
1.2.4 采用的DDS技術(shù)
針對RS232標(biāo)準(zhǔn)中串行通信中波特率的一般要求范圍300~115 200 bit·s-1,采用改進(jìn)的DDS技術(shù),基于FPGA,設(shè)計如圖3所示的DDS模塊。本文引用地址:http://www.ex-cimer.com/article/155189.htm
其中的循環(huán)相位累加器模塊DDS_adder模塊,相位寄存器模塊DDS_addr_gen是基于硬件描述語言設(shè)計的模塊,ROM模塊DDS_ROM是基于FPGA的宏模塊。
在本設(shè)計中實現(xiàn)發(fā)送時鐘fclk在300~115 200 bit·s-1范圍內(nèi)步進(jìn)為0.1 bit·s-1的調(diào)節(jié)。其中,Mode取7 812 500,N取4,fclk為外部晶振提供的頻率為50 MHz時鐘。
因此,有△F=1.6 FCW。其中,F(xiàn)CW為應(yīng)用程序所傳送的實際控制頻率的10倍,根據(jù)UART協(xié)議,發(fā)送時鐘的頻率至少是串口通信波特率的16倍。所以,以上的參數(shù)設(shè)置即實現(xiàn)了步進(jìn)為0.1 bit·s-1的連續(xù)可調(diào)的波特率設(shè)置。
1.2.5 連續(xù)可調(diào)信號的驗證
文中DDS技術(shù)是基于FPGA實現(xiàn)的。根據(jù)不同的頻率控制字fword輸入,經(jīng)過幾個過渡時鐘后,DDS模塊即可以穩(wěn)定產(chǎn)生隨頻率變化的時鐘信號fclk。
在圖4的仿真中,所仿真的頻率點是115 200 Hz,9 600 Hz,1 200 Hz,,對應(yīng)的fword為0x00119400,0x00017700,0x00002EE0。
評論