新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > FPGA實(shí)現(xiàn)UART和MCU一體化設(shè)計(jì)

FPGA實(shí)現(xiàn)UART和MCU一體化設(shè)計(jì)

作者: 時(shí)間:2011-03-30 來源:網(wǎng)絡(luò) 收藏

2.1.1 模塊的設(shè)計(jì)與實(shí)現(xiàn)
串行數(shù)據(jù)格式如圖3所示,串行數(shù)據(jù)包括5~8位數(shù)據(jù)(可更改設(shè)置)、1位起始位、1~2位停止位、1位校驗(yàn)位。該模塊主要由發(fā)送模塊和接收模塊兩部分構(gòu)成。在各自模塊中分別由接收緩沖器、接收控制電路、發(fā)送緩沖區(qū)、發(fā)送控制電路、數(shù)據(jù)總線緩沖器、讀寫控制電路組成,邏輯框圖如圖4所示。

本文引用地址:http://butianyuan.cn/article/191268.htm

3.JPG

模塊的發(fā)送模塊和接收模塊公用復(fù)位信號、時(shí)鐘信號和并行數(shù)據(jù)線,并且有各自的輸入/輸出模塊和控制電路單元。
(1)發(fā)送模塊的設(shè)計(jì)。發(fā)送模塊將從微控制器送來的8位并行數(shù)據(jù)轉(zhuǎn)換成圖3所示的數(shù)據(jù)幀格式的串行數(shù)據(jù)發(fā)送出去。該模塊分為3種工作模式:空閑模式、載入數(shù)據(jù)模式、移位模式輸出模式。當(dāng)并行的8位數(shù)據(jù)從微控制器通過數(shù)據(jù)線寫入發(fā)送FIFO(在以下2.1.2節(jié)實(shí)現(xiàn))中時(shí),發(fā)送模塊自動將并行數(shù)據(jù)裝入鎖存器THR中,首先發(fā)送起始位0,然后根據(jù)LCR定義的數(shù)據(jù)格式將數(shù)據(jù)移位,并通過狀態(tài)機(jī)和節(jié)拍器實(shí)現(xiàn)完整的發(fā)送序列,并以相應(yīng)的波特率從TX發(fā)送出去。發(fā)送模塊的狀態(tài)機(jī)FSM如圖5所示。
(2)接收模塊的設(shè)計(jì)。接收模塊接收串行輸入的數(shù)據(jù)(見圖3),然后將其轉(zhuǎn)換為并行數(shù)據(jù)送給微控制器。與發(fā)送模塊相同,也分為3種工作模式:空閑模式,檢測起始位模式、移位輸入模式。首先接收模塊在接收時(shí)鐘的控制下,不斷地在RX端口檢測輸入數(shù)據(jù)的起始位,當(dāng)檢測到起始位后,接收模塊由空閑模式轉(zhuǎn)變?yōu)橐莆惠斎肽J健4藭r(shí)通過RX端口進(jìn)來的串行數(shù)據(jù)可能存在著些許抖動,因此需要添加消抖電路進(jìn)行處理。消抖處理一般有兩種辦法,一種是在前端添加非門的R8觸發(fā)器來完成,一種是類似軟件的方式控制采集輸入端的數(shù)據(jù),并將前后采集的數(shù)據(jù)值進(jìn)行比較,相同則保持,否則繼續(xù)采集比較,這里采用的是后者。當(dāng)接收完數(shù)據(jù),更新接收緩沖區(qū)狀態(tài),以提供微控制器MCU查詢,方便讀取數(shù)據(jù)。接收模塊的狀態(tài)機(jī)FSME如圖6所示。

4.JPG



關(guān)鍵詞: FPGA UART MCU

評論


相關(guān)推薦

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

關(guān)閉