1 引 言
公交車對提升城市形象、促進社會經濟發展起到積極推動作用。但在我國偏遠的西部和經濟還不太發達的一些地方,公交車的發展還明顯跟不上人們日益增長的物質需求,如2009 年3 月,康定縣才成為四川藏區第一個開通公交服務的城市。對于我國二級以下的城市,目前公交車報站的情況大多還存在以下問題: ①沒有自動報站,實行人工報站;②有自動報站,卻停留在單一的語言報站上;③LED站臺數字編號(比如002) 顯示;④LED 漢字顯示屏,但屏幕顯示內容單一。這些在乘客對路線不熟悉或在乘車擁擠的情況下,勢必會給乘客帶來不便。本文設計了公交車報站系統液晶顯示漢字的控制電路,并在Proteus 仿真平臺上完成了模擬。
2 Proteus 介紹
Protus ISIS 是英國Labcenter 公司開發的電路分析實物仿真軟件。該軟件可以提供嵌入式系統(單片機應用系統、ARM 應用系統) 軟硬件設計仿真平臺,支持主流單片機系統的仿真并集SPICE 分析于一身,把用戶編寫的應用程序下載到微處理器(MCU) 中,結合外界連線及模擬、數字電路對微處理器進行系統邏輯功能的控制。該軟件除了大量的元件庫外,還有常用的虛擬儀器;在編譯調試方面,還支持Keil 和MPLAB 等第三方集成開發工具。
3 報站系統液晶顯示的硬件仿真電路設計
液晶顯示器(Liquid Crystal Display ,LCD)具有體積小便于攜帶、功耗低、抗干擾能力強、信息豐富等優點,已被廣泛地運用在了儀器儀表和控制系統中。在公交報站系統中,采用LCD 進行站名漢字顯示,具有直觀性,增強了系統的實用性。
表1 AMPIR 128 ×64 管腳說明
本文液晶模塊選用Proteus 中的AMPIRE128 ×64 .其管腳說明見表1 ,顯示模式見表2。
根據表1 完成硬件電路的連接,根據表2 完成軟件部分液晶驅動程序。
表2 AMPIR 128 ×64 的顯示方式控制
報站系統液晶顯示的電路連接圖如圖1 所示。控制電路選用單片機AT89C51 , 本電路接高電平,沒有擴展ROM.將液晶的數據輸入端DB0~DB7 與單片機的P0 口相連,將P2. 0 ,P2. 1 , P2. 2 分別與液晶的E , RW , RS 端連接,P2. 4 和P2. 3 分別和CS1 和CS2 端連接,用來控制液晶左右屏的顯示。為了便于司機操作,采用4 個獨立式按鍵對顯示進行控制,分別與單片機的P1. 0~ P1. 3 相連,分別代表4 種功能: 起點站、上一站、下一站和終點站。
圖1 公交車報站系統液晶顯示仿真電路
4 報站系統液晶顯示的軟件設計
液晶顯示模塊中按字節為單位劃分,單個屏幕中,共分為8 個頁,每頁為8 行,而每一行為64個位(即64 列) .同計算機一樣,單片機控制液晶點陣顯示中的數據也是以"0"和"1"代碼來表示的。一般地", 0"代表不顯示數據", 1"代表有顯示數據,根據編碼的不同,最終會顯示出不同的字符。顯示器上的顯示點與驅動控制芯片中的顯示緩存RAM 是一一對應的,即字模當中的一個位代表LCD 顯示中的一個像素點,取點方式為從左到右,自上到下的順序。這里采用16 ×16 的點陣輸出顯示每個漢字,那么就需要屏幕上的256 個點組成的方塊來顯示。一個字節對應8 個點,所以一個漢字需要32 個字節來存儲顯示。"漢字字模點陣數據批量生成工具"就是運用這個原理來實現漢字編碼的軟件。
本文采用PCtoLCD2002 漢字提取軟件,打開窗口,如圖2 所示,設置好字體、字號等格式參數,在漢字輸入區,輸入漢字或其他字符,即得到需要的代碼。將本設計所涉及的漢字用軟件取模批量生成16 ×16 點陣代碼,放入ROM 區的TA2BL E 表格中,通過邏輯控制,最終可將代碼讀出到硬件驅動電路上,顯示出不同的漢字。
圖2 漢字字模點陣數據批量生成軟件
本設計針對康定城第2 路公交車,共有7 站,對單邊線路的報站進行了仿真。軟件流程圖如圖3 所示。
圖3 程序流程圖
系統上電后,對液晶模塊進行初始化,并進行清屏。按鍵部分采用掃描法,當檢測到按鍵按下時,進行鍵值判斷,并進行相應顯示程序的跳轉,實現公交報站的功能。整個程序的詳細流程如下:
Step1 :對LCD 進行初始化,即根據系統的需要對液晶控制器的各項參數進行設置,顯示開關、顯示起始行、光標位置等設置,再對LCD 所有單元寫零清屏后準備顯示。
Step2 :掃描P1 端口,等待按鍵的按下,進行鍵值判斷,不同的按鍵對應不同的分支:
①K1 按鍵:表示是起始站,顯示歡迎詞,在LCD 上固定顯示:"歡迎您乘坐康定城第2 路公交車!";②K2、K3 按鍵:分別表示上一站和下一站,可方便進行站臺調節,在LCD 上顯示:"1 # 站到了! 下一站2 # ".其中1 # 和2 # 分別是本站和下一站的站臺名,如本線路要涉及5 個站臺(除去起始站和終點站) .而"站到了!"和"下一站"是公交線路中各站都要顯示的,則固定顯示,故按鍵改變的只是模塊的左半屏上半部分和右半屏下半部分內容的顯示。
③K4 鍵:表示終點站,顯示歡送詞,在LCD上固定顯示:"終點站到了,請乘客依次從后門下車".一定延遲后表明本次運行結束。
Step3 :若沒有到終點站,返回Step2.
5 仿真結果
對用匯編語言編寫的程序。 ASM 進行了編譯調試,最終編譯成功,生成。 HEX 文件,把。 HEX文件下載到Proteus 軟件的單片機中,并在Pro2teus 軟件中設置單片機的晶振為12 MHz. 最終實現了如圖4 所示的顯示效果。
圖4 LCD 顯示效果
6 結 論
本文設計的公交車報站系統,通過了Proteus仿真平臺的驗證,實現了在相應站臺下液晶模塊顯示相應文字的功能,對提高公交質量有一定的技術支持,也為其他液晶漢字顯示電路系統的設計提供了方法。在本設計基礎上對軟硬件稍加修改,就可以實現公交車往返路線的漢字液晶顯示報站。
-
控制器
+關注
關注
112文章
16396瀏覽量
178512 -
嵌入式
+關注
關注
5086文章
19143瀏覽量
306094 -
仿真
+關注
關注
50文章
4099瀏覽量
133718 -
液晶顯
+關注
關注
0文章
10瀏覽量
7202
發布評論請先 登錄
相關推薦
評論