新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式UART接口模塊的設(shè)計

嵌入式UART接口模塊的設(shè)計

作者: 時間:2011-08-31 來源:網(wǎng)絡(luò) 收藏

3 UART頂層模塊的仿真測試

  將上述各個模塊的VHDL代碼生成原理圖符號,并在原理圖編輯工具中將各個模塊連接起組成1個完整的UART模塊。為了驗證UART模塊的正確性,對UART的發(fā)送過程和接收過程分別進行了波形仿真。

  為便于觀察波形,波特率產(chǎn)生器設(shè)置為4個系統(tǒng)時鐘產(chǎn)生一個完整的波特率時鐘。圖9是UART模塊接收過程的仿真波形圖。

UART數(shù)據(jù)接收過程的仿真波形圖

圖9 UART數(shù)據(jù)接收過程的仿真波形圖

  由仿真波形圖可以看出,接收端RxD上的數(shù)據(jù)序列為0101010101,起始位‘0’后為數(shù)據(jù)位“10101010”,最后一位為停止位‘1’。在10個波特率時鐘之后,UART發(fā)出1個接收完成信號recv=‘1’,并在數(shù)據(jù)輸出端“new_data”將接收的數(shù)據(jù)輸出給后續(xù)數(shù)據(jù)處理模塊。由于發(fā)送數(shù)據(jù)時首先發(fā)送數(shù)據(jù)的最低位,因此接收的數(shù)據(jù)應(yīng)為“01010101”,將光條放置數(shù)據(jù)輸出端“new_data”的數(shù)據(jù)輸出波形上,可以從數(shù)據(jù)欄看到此時數(shù)據(jù)輸出端new_data=“01010101”,UART數(shù)據(jù)接收功能完全正確。

  圖10為UART發(fā)送過程仿真波形。由圖可以看出,send=‘1’后待發(fā)送數(shù)據(jù)為“01010101”,將待發(fā)送數(shù)據(jù)加上起始位和停止位,并從最低位開始發(fā)送,則發(fā)送端txd上的數(shù)據(jù)序列為“0101010101”,發(fā)送停止位后,發(fā)送結(jié)束信號send_over=‘1’。圖10證明UART數(shù)據(jù)發(fā)送功能完全正確。

UART數(shù)據(jù)發(fā)送過程的仿真波形圖

圖10 UART數(shù)據(jù)發(fā)送過程的仿真波形圖

  4 結(jié)語

  介紹了UART在可編程邏輯器件FPGA上的實現(xiàn),并通過實際電路驗證了設(shè)計的功能,使用FPGA不僅可以方便地用串口協(xié)議與PC機進行串行通信,而且擴展了板級系統(tǒng)的接口功能。應(yīng)用在可編程器件FP2GA內(nèi)部,可以很大程度地減少電路板的使用面積,并提高系統(tǒng)的穩(wěn)定性和可編程性。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 3 4 下一頁

關(guān)鍵詞: 嵌入式 UART接口模塊

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉