基于單片機和FPGA的人機交互系統(tǒng)的設(shè)計
摘要:在儀器儀表電路中,人機交互界面是必不可少的環(huán)節(jié)。為了解決單純采用單片機制作的系統(tǒng)功耗高、速度慢、電路結(jié)構(gòu)繁瑣的問題,同時為了 發(fā)揮出單片機的靈活性和FPGA的高速性,系統(tǒng)采用C805lF020單片機和CycloneⅡFPGA作為系統(tǒng)核心,設(shè)計實現(xiàn)了鍵盤、LCD等人機交互 功能,同時預(yù)留了部分I/O接口作為擴展接口使用。采用FPGA掃描鍵盤可以極大程度地節(jié)省單片機的資源,利用單片機和FPGA共同控制LCD可以更好地 體現(xiàn)出人機交互的特色。
關(guān)鍵詞:人機交互;C805lF;T6963C;FPGA;鍵盤掃描
在現(xiàn)代各類儀器的開發(fā)中,人機交互功能正起著無可替代的作用。人機交互界面友好的儀器將更容易操作和使用,從而提高工作效率。液晶顯示器(LCD)具有功 耗低、價格低、壽命長、接口控制方便等特點,在科研與設(shè)計領(lǐng)域正發(fā)揮著越來越大的作用。FPGA作為單片機外設(shè)的接口芯片,可以大大簡化接口電路,通過對 FPGA進行編程,可以實現(xiàn)常用的譯碼、地址選通等功能。
本文以C8051F020單片機與FPGA互連系統(tǒng)為控制核心,以液晶顯示控制器T6963C為例,結(jié)合行掃描鍵盤,簡述了一種人機交互功能的設(shè)計。
1 系統(tǒng)設(shè)計方案
FPGA可在很大程度上擴展單片機的資源,然而人機交互功能仍應(yīng)盡量減少對單片機及FPGA的資源消耗,以便將更多的片內(nèi)資源用于其他功能的擴展。采用 FPGA掃描鍵盤可以節(jié)省單片機的資源,同時也能靈活地實現(xiàn)鍵盤的擴展。而考慮到液晶控制較復(fù)雜,依然采用單片機控制
LCD,使LCD的各種功能得到最大程度的利用,其系統(tǒng)框圖如圖1所示。
2 硬件電路及FPGA接口設(shè)計
2.1 總線接口設(shè)計
這里采用單片機C8051F020與CycloneⅡFPGA互連的系統(tǒng)。C8051F020器件是完全集成的混合信號系統(tǒng)級MCU芯片,具有64個數(shù)字 I/O引腳,與8051完全兼容,而且速度得到了極大提高,70%的指令執(zhí)行時間為l或2個系統(tǒng)時鐘周期,只有4條指令的執(zhí)行時間大于4個系統(tǒng)時鐘周期。 此外,C8051F020系列MCU對CIP-51內(nèi)核和外設(shè)有幾項關(guān)鍵性的改進,提高了整體性能,更易于在最終應(yīng)用中使用。如提供22個中斷源、7個復(fù) 位源、可編程交叉開關(guān)、8位A/D轉(zhuǎn)換器、12位D/A轉(zhuǎn)換器等。
CycloneⅡ系列FPGA將低功耗FPGA的密度規(guī)模擴展至68 416個邏輯單元,并提供高達622個可用的I/O接口以及高達1.1 Mb的片內(nèi)存儲單元。CycloneⅡ系列成功實現(xiàn)了高效與低功耗的結(jié)合,可用于自動化、通信、視頻播放等領(lǐng)域。為兼顧成本問題,本系統(tǒng)采用性價比較高的EP2C8型FPGA作為接口器件。
評論