摘要:以由KS0108控制器控制的LCD為例,研究如何使用Proteus進(jìn)行LCD顯示的仿真。仿真軟件Proteus在原理圖設(shè)計、電路、單片機仿真及PCB電路的制作等方面都表現(xiàn)卓越。以一款128×64的LCD為例,一方面探討了如何在液晶上顯示,另一方面突出了Proteus軟件在單片機仿真領(lǐng)域的應(yīng)用,給出了具體的思路和調(diào)試過程,對學(xué)習(xí)Proteus的仿真有一定的指導(dǎo)意義。
關(guān)鍵詞:Proteus;LCD;單片機;仿真
0 引言
Proteus是英國Labcenter electronics公司出版的EDA工具軟件,它實現(xiàn)了從原理圖設(shè)計、代碼調(diào)試到單片機與外圍電路的協(xié)同仿真,一鍵切換到PCB設(shè)計,實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計,是目前世界上惟一將電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051,HC11,PIC10/12/16/18/24/30/DsPIC33,AVR,ARM,8086和MSP430等,可編譯匯編語言,同時支持1AR,Keil和MPLAB等多種編譯器。
該軟件資源豐富,其中元器件資源有:數(shù)字和模擬、交流和直流等數(shù)千種仿真器件,有30多個元件庫;儀表資源有:示波器、邏輯分析儀、虛擬終端、SPI調(diào)試器、I2C調(diào)試器、信號發(fā)生器、模式發(fā)生器、交直流電壓表、交直流電流表等。
1 128×64點陣型LCD
目前常用的點陣型LCD有122×32,128×64,240×320等,點陣液晶顯示屏有三種控制器,分別是KS0108,T6963C和ST7920,三種控制器主要區(qū)別是:KS0108不帶任何字庫、T6963C帶ASCII碼,ST7920帶國標(biāo)二級字庫(8 000多個漢字)。
Proteus的器件庫里提供了多種LCD。本文以KS0108控制器控制的LCD為例,研究了該屏的顯示。由KS0108控制器控制的128×64的點陣液晶顯示屏Proteus中有兩種型號:LGM12641BS1R,AMPIRE 128×64。
1.1 LCD的引腳及功能介紹
128×64點陣型LCD LGM12641BS1R和AMPIRE 128×64的引腳及其功能介紹見表1。
從表1 中可以看出,LGM12641BS1R和AMPIRE 128×64的主要區(qū)別在于屏選信號控制端CS1和CS2, LGM12641BS1R為高電平有效,AMPIRE 128×64為低電平有效。[!--empirenews.page--]
1.2 液晶的讀寫時序
如圖1所示,在使能端E為高電平,R/W為低電平時,將數(shù)據(jù)DB0~DB7寫入并鎖存;讀操作為E高電平,R/W為高電平時,將鎖存的數(shù)據(jù)讀出來,送顯示。
2 LCD在Proteus中的仿真
2.1 硬件整機電路圖
仿真過程中,采用單片機89C52為主控單元,由于同時控制兩塊屏,為避免連線混亂,采用連接節(jié)點模式,在連線上加“線標(biāo)”進(jìn)行相應(yīng)連接,整體電路圖如圖2所示。
由于LGM12641BS1R和AMPIRE 128×64屏選信號控制端CS1和CS2有效電平不同,為實現(xiàn)二者的同步顯示,在AMPIRE 128×64的片選控制端CS1和CS2上分別加了反相器。[!--empirenews.page--]
2.2 仿真步驟
由于該LCD為點陣型的,要顯示中文漢字,就要用輔助的漢字取模工具,作者選用了“清華蓬遠(yuǎn)的液晶字庫顯示程序”,取模時注意相關(guān)項的設(shè)置,否則不能正常顯示,設(shè)置如圖3所示。
取模時,采用縱向取模,同時字節(jié)倒序。顯示效果如圖4所示。
2.3 程序的調(diào)試
程序采用C51編寫,用Keil調(diào)試(若為匯編語言編寫的程序,Proteus軟件自帶的編譯器也可以編譯,無需Keil),調(diào)試過程中,在Proje ct中有個“Options forTarget+工程名”的可選項中,點擊“Output”,在“Creat HEX Fi”前劃對號,以示選中。這樣在Proteus ISIS仿真環(huán)境下,就可以直接加載在keil中生成的*.hex文件,進(jìn)行仿真演示。
3 結(jié)語
以89C52驅(qū)動兩種KS0108控制器控制的LGM12641BS1R和AMPIRE 128×64兩種LCD為例,給出了仿真的注意事項和仿真的效果,為電路簡潔大方,連接方法采用節(jié)點法,在連線上加線標(biāo)實現(xiàn)連接,當(dāng)然也可以采用總線方式。Proteus在單片機仿真領(lǐng)域應(yīng)用廣泛,不但支持8051系列的CPU模型,還支持68000,AVR,PIC12,PIC16,PIC18,Z80,HC11等系列的單片機,且還可以仿真模擬電路、數(shù)字電路及二者混合的電路,軟件仿真,節(jié)約了耗材,提高了效率,簡化了設(shè)計過程,值得廣泛使用。