新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA的單片機外圍接口電路設(shè)計

基于FPGA的單片機外圍接口電路設(shè)計

作者: 時間:2012-09-10 來源:網(wǎng)絡(luò) 收藏

2 系統(tǒng)模塊實現(xiàn)

2.1 通用邏輯模塊

可以設(shè)計成各種組合邏輯和時序邏輯電路,完成鎖存、三態(tài)輸出、多路選擇、編譯碼、計數(shù)、寄存等功能。在實際應(yīng)用中可以根據(jù)需要選擇相應(yīng)的功能模塊組成符合設(shè)計要求的邏輯功能。

本系統(tǒng)中設(shè)計的為擴展存儲器時用的地址鎖存器(功能與帶三態(tài)緩沖輸出的8D鎖存器

74LS373相似),其 VHDL描述為: process(oe,enable,d) begin if e='1' then

q=ZZZZZZZZ;

else if enable='1' then q=d; end if;

end if;

end procESS; 其中oe為三態(tài)門的使能信號,當 oe為低電平時三態(tài)門處于導通狀態(tài),允許q輸出到外部,當 oe為高電平時三態(tài)門處于斷開狀態(tài),輸出處于浮空狀態(tài); enable為鎖存控制信號,當做鎖存器用時,應(yīng)使oe為低電平,這時,當 enable為高電平時,鎖存器輸出狀態(tài)與輸入狀態(tài)相同,當enable從高電平返回到低電平(即下降沿)時,輸出不變,即輸入端的數(shù)據(jù)鎖入鎖存器中。

2.2 鍵盤接口模塊鍵盤是應(yīng)用系統(tǒng)中一個很重要的部件,它能實現(xiàn)向系統(tǒng)輸入數(shù)據(jù)、傳送命令等功 能,是人工干預系統(tǒng)工作的重要手段。本文所設(shè)計的鍵盤接口電路框圖如圖2所示,由分頻電路、鍵盤掃描計數(shù)器電路、鍵盤按鍵檢測電路、按鍵抖動消除電路和鍵盤編碼電路等組成。

其中clock為時鐘脈沖, col為鍵盤的列輸入,row為鍵盤的行輸出,scan_f為掃描頻率, key_valid為按鍵確定信號,butt_code為按鍵值。首先,將外部時鐘信號分頻為適合鍵盤的掃描頻率;計數(shù)器的計數(shù)值輸出到按鍵檢測電路,檢測使用者是否按下鍵盤,同時輸出到鍵盤編碼電路對鍵盤數(shù)值編碼;當使用者按下鍵盤時,按鍵檢測電路的 key_pressed將為0,并輸出到計數(shù)器使計數(shù)停止,同時抖動消除電路在確認使用者正確按鍵后,輸出按鍵確定信號。

2.3 顯示接口模塊

顯示功能是應(yīng)用系統(tǒng)中實現(xiàn)人機對話的基本功能之一,用戶通過靈活的顯示方式方便的了解系統(tǒng)的工作情況。在簡單的應(yīng)用系統(tǒng)中常用LED數(shù)碼管或LCD顯示器顯示數(shù)據(jù)或工作狀態(tài)。本文設(shè)計的為一個4位七段動態(tài) LED數(shù)碼管顯示接口電路,電路框圖如圖3所示,它由BCD多路選擇器、BCD對應(yīng)七段顯示器編碼電路、計數(shù)譯碼電路和七段顯示器掃描電路等組成。其中clk為同步時鐘脈沖信號, flk_ena為掃描時鐘脈沖信號, bcd_data為輸入的BCD碼,ledseg為七段顯示器數(shù)值輸出, ledcom為七段顯示器輸出使能。

2.4 串并行接口模塊

雖然大多數(shù)都帶有通用的串行接口,但自行設(shè)計的接口意味著更大的使用靈活性,特別是的高速特性允許更高的數(shù)據(jù)傳輸速度,在實用中有重要意義。作為范例, 本文設(shè)計了基于RS232-C標準的異步串行通信接口,它主要由數(shù)據(jù)總線接口、控制邏輯、波特率發(fā)生器、發(fā)送和接收等部分組成,其功能主要包括微處理器接口,用于數(shù)據(jù)傳輸?shù)木彌_器(Buffer)、幀產(chǎn)生、奇偶校驗、并轉(zhuǎn)串,用于數(shù)據(jù)接收的緩沖器、幀產(chǎn)生、奇偶校驗、串轉(zhuǎn)并等。



評論


相關(guān)推薦

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

關(guān)閉