C8051F單片機(jī)實驗系統(tǒng)設(shè)計
1.3 電源及下載電路
單片機(jī)和FPGA均采用3.3V/1.2V穩(wěn)壓源供電,兩者均可通過JTAG接口進(jìn)行在線調(diào)試。
FPGA和單片機(jī)以典型的三總線連接進(jìn)行數(shù)據(jù)通信及控制,單片機(jī)內(nèi)部集成的數(shù)字/模擬資源和FPGA剩余的引腳通過插針引出,供用戶使用。將以上模塊有機(jī)結(jié)合起來,形成一個性能優(yōu)越的開發(fā)平臺,能夠滿足不同層次的設(shè)計需求。
2 硬件電路設(shè)計
在單片機(jī)系統(tǒng)的人機(jī)交互部分通常有液晶顯示器(LCD)、鍵盤和存儲器等外設(shè),因此需要用大量的標(biāo)準(zhǔn)邏輯器件對單片機(jī)進(jìn)行擴(kuò)展,這些器件的組合使用會導(dǎo)致設(shè)計周期長、可維護(hù)性差,用FPGA來實現(xiàn)單片機(jī)的外圍接口電路,能大大簡化電路結(jié)構(gòu),節(jié)省CPU資源。
2.1 鍵盤接口模塊
因為按鍵機(jī)械觸點的彈性作用,一個按鍵開關(guān)在閉合時不會馬上穩(wěn)定的導(dǎo)通,在斷開時也不會馬上斷開,因而在閉合及斷開的瞬間都會伴隨一連串的抖動,對于靈敏度較高的電路,這種抖動可能會造成誤動作而影響操作正確性。常用的去抖動的方法為延時去抖動法,即檢測出鍵閉合后執(zhí)行一個延時程序,產(chǎn)生5~lO ms的延時;讓前沿抖動消失后,再一次檢測鍵的狀態(tài),如果仍保持閉合狀態(tài)電平,則確認(rèn)為真正
有鍵按下。當(dāng)檢測到按件釋放后,也要給5~10 ms的延時,待后沿抖動消失后,才能轉(zhuǎn)入該鍵的處理程序。
對FPGA編程完成消除抖動及按鍵識別,由抖動消除模塊、鍵盤掃描電路、鍵盤譯碼電路、按鍵數(shù)據(jù)寄存器等組成。
鍵盤接口電路的工作流程為:采取逐行掃描法,F(xiàn)PGA周而復(fù)始地對鍵盤進(jìn)行掃描,當(dāng)有鍵按下時,先對按鍵進(jìn)行延時去抖處理,將按鍵信號存入寄存器,掃描信號來臨時,根據(jù)按鍵掃描碼查找鍵碼表,并將其送回給單片機(jī)。程序流程如圖2所示。本文引用地址:http://www.ex-cimer.com/article/173130.htm
2.2 液晶顯示模塊
液晶顯示器(LCD)以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧等諸多優(yōu)點,在便攜式儀表和低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用。
LCD可分為段位式LCD、字符式LCD和點陣式LCD。其中,段位式LCD和字符式LCD只能用于字符和數(shù)字的簡單顯示,不能滿足圖形曲線和漢字顯示的要求;而點陣式LCD不僅可以顯示字符、數(shù)字,還可以顯示各種圖形、曲線及漢字,并且可以實現(xiàn)屏幕上下左右滾動,動畫功能,反轉(zhuǎn),閃爍等功能,用途十分廣泛。
點陣式LCD分為帶漢字字庫和不帶漢字字庫兩種,帶字庫LCD若要顯示漢字只要傳給漢字內(nèi)碼,而不帶字庫LCD顯示漢字時要先求出漢字字模,然后跟顯示圖形一樣顯示漢字。
本開發(fā)系統(tǒng)采用博控公司生產(chǎn)的NS240*128A點陣圖形型LCD,不帶中文字庫。由于液晶顯示器是典型的慢速設(shè)備,如果直接與高速的單片機(jī)相連時,會浪費大量的時間,可以考慮在單片機(jī)和液晶顯示器中間加入FPGA,由FPGA直接驅(qū)動和控制液晶顯示器。液晶顯示模塊框圖如圖3所示。
評論