基于CPLD的電動自行車充電系統(tǒng)的研究設(shè)計
1.3 鍵盤電路及I/O電路設(shè)計
本系統(tǒng)采用CPLD作為SPCE061A單片機(jī)和充電器的接口部分,實現(xiàn)I/O口擴(kuò)展,并完成鍵盤掃描功能。CPLD的使用,取代了一些專用集成電路,減少了系統(tǒng)的復(fù)雜性,提高了系統(tǒng)的集成度。本系統(tǒng)采用硬件電路來完成對鍵盤的掃描工作,當(dāng)有按鍵按下時,CPLD內(nèi)部狀態(tài)發(fā)生改變。按鍵彈起后,內(nèi)部狀態(tài)經(jīng)CPLD自動處理轉(zhuǎn)化為相應(yīng)的鍵值被送到輸出端口,供單片機(jī)掃描時取走鍵值。相對于軟件判別鍵盤工作狀態(tài),這樣不僅節(jié)省了SPCE061A的存儲空間,還極大地提高了系統(tǒng)的工作速度,更好地實現(xiàn)了實時性。
CPLD選用ALTERA公司生產(chǎn)的MAX7000S 系列中的EPM7128SLC84-15。該芯片共有84個引腳,采用EEPROM技術(shù)制作;內(nèi)含2 500個邏輯門,128個宏單元,時鐘工作頻率可達(dá)151.5MHz。通過CPLD對資源的整合,實現(xiàn)了用一片CPLD實現(xiàn)I/O電路、硬件掃描判別等,優(yōu)化了硬件的布局。如需改變系統(tǒng)的功能,只需改變相應(yīng)的源代碼而不是硬件結(jié)構(gòu),因而具有很大的靈活性。
2 系統(tǒng)軟件設(shè)計
2.1 主程序設(shè)計
本系統(tǒng)的軟件部分采用C語言和匯編語言混合編制而成,因而該程序具有功能強大、設(shè)計完備等特點。主程序主要完成如下功能:
(1)系統(tǒng)初始化和參數(shù)的設(shè)置;
(2)充電器三種工作狀態(tài)的檢測和顯示;
(3)控制各個充電器的工作和停止以及快速充電和普通充電兩種充電方式的選擇;
(4)蓄電池正反極性的判斷,極性接反時自動進(jìn)行語音報警;
(5)充電器充滿蓄電池時自動關(guān)閉充電器;出現(xiàn)異常情況時自動進(jìn)行語音報警;
(6)對快速充電時間長短進(jìn)行設(shè)定。
系統(tǒng)主程序流程圖如圖3所示。
光電開關(guān)相關(guān)文章:光電開關(guān)原理
評論