本應(yīng)用筆記介紹如何在MAX-IDE和IAR嵌入式工作臺(tái)上使用LCD仿真器,并說明如何創(chuàng)建LCD存儲(chǔ)器圖和LCD顯示面板。本文假設(shè)讀者了解MAXQ20內(nèi)核,并且知道MAX-IDE和IAR嵌入式工作臺(tái)。在本應(yīng)用筆記結(jié)束時(shí),用戶將了解LCD仿真器在兩種開發(fā)環(huán)境中的工作原理。
介紹
LCD模擬器是在Windows平臺(tái)上開發(fā)的,其GUI模擬LCD控制器的數(shù)字行為,而不是模擬行為。
概述
LCD模擬器模擬LCD控制器的數(shù)字屬性,包括:靜態(tài)、1/2多路復(fù)用、1/3多路復(fù)用和1/4多路復(fù)用顯示模式;啟用/禁用液晶屏操作;并使用顯示內(nèi)存模式更新液晶屏。LCD模擬器忽略模擬屬性變化,包括:LCD驅(qū)動(dòng)電壓變化,顯示對比度調(diào)整,幀頻效果。
LCD模擬器需要兩個(gè)輸入:
LCD段配置,用于靜態(tài),1/2,1/3和1/4顯示模式
用于靜態(tài)、1/2、1/3 和 1/4 顯示存儲(chǔ)器的 LCD 引腳配置
液晶顯示器模擬器的開發(fā)環(huán)境設(shè)置
LCD模擬器可用于兩種環(huán)境,即MAX-IDE和IAR嵌入式工作臺(tái)。
MAX-IDE設(shè)置
某些MAXQ設(shè)備是在MAX-IDE安裝過程中配置和安裝的。您可以從“設(shè)備→選項(xiàng)”菜單中獲取這些設(shè)備的列表。在這些器件中,MAXQ2000和MAXQ3210具有LCD控制器外設(shè)。按照以下步驟創(chuàng)建用于模擬的項(xiàng)目。?
創(chuàng)建一個(gè)項(xiàng)目。此過程在MAX-IDE仿真器上的應(yīng)用筆記3905(見上文)中進(jìn)行了說明。
添加用于測試 LCD 控制器功能的文件。文件代碼如表 1 所示。
選擇器件→MAXQ2000→確定。
在“設(shè)備”菜單下,單擊“LCD 模擬器”,將顯示 LCD GUI,如圖 1 所示。
IAR IDE 設(shè)置
在IAR嵌入式工作臺(tái)安裝過程中,一些MAXQ器件的DDF(設(shè)備描述文件)、SFR和ROM文件安裝在$TOOLKIT_DIR$config目錄下。按照以下步驟創(chuàng)建用于模擬的項(xiàng)目。
創(chuàng)建一個(gè)項(xiàng)目。IAR編譯器的應(yīng)用筆記3378(見上文)對此過程進(jìn)行了說明。
添加用于測試 LCD 控制器功能的文件。代碼如表 2 所示。
打開項(xiàng)目→選項(xiàng)并轉(zhuǎn)到C Spy調(diào)試器面板。
從顯示的選項(xiàng)中選擇設(shè)備模擬器。
選擇要模擬的設(shè)備的 ddf 文件。在此示例中,文件是 $TOOLKIT_DIR$config 下的 maxq200x.ddf。
如果程序是匯編程序,請取消選中“運(yùn)行到主”選項(xiàng)并選中庫中的XLINK→包括→忽略C STARTUP。
選擇要仿真的器件的實(shí)用程序ROM例程(.hex),即maxq200x.hex
按確定。
按調(diào)試以調(diào)試程序。
模擬的外圍設(shè)備可以在“視圖菜單”選項(xiàng)下看到。
選擇液晶屏外設(shè),液晶屏GUI將顯示如圖1所示。
下面列出了LCD GUI快照以及MAX-IDE和IAR中包含的匯編文件:
圖1.液晶模擬器圖形用戶界面。
以上源代碼可供下載。
以上源代碼可供下載。
使用 LCD 模擬器
如上所述,LCD 模擬器依賴于兩個(gè) XML 輸入文件:
分段配置文件
引腳配置文件
段配置文件
此文件將 LCD 顯示面板的類型定義為 7 段或字母數(shù)字。用戶可以通過編輯XML文件來設(shè)計(jì)LCD顯示類型。該文件將每個(gè)段詳細(xì)說明為靜態(tài)、1/2 復(fù)用器、1/3 多路復(fù)用器和 1/4 多路復(fù)用器的線條或點(diǎn)或任何其他形狀(線條的所有倍數(shù))。如果沒有此輸入文件,LCD 模擬器將不會(huì)更新 GUI。
引腳配置文件
每個(gè)帶有LCD外設(shè)的MAXQ控制器都有不同的引腳配置,為靜態(tài)、1/2多路復(fù)用器、1/3多路復(fù)用器和1/4多路復(fù)用器分配不同的引腳號。此外,一些段引腳多路復(fù)用,具有兩種不同的功能:
I/O 功能
外部中斷,I/O 具有低優(yōu)先級,外部中斷具有較高優(yōu)先級。
選擇MAXQ2000器件后,這兩個(gè)文件將自動(dòng)加載到MAX-IDE環(huán)境中。或者,您可以在 IAR 的 maxq200x.sfr 文件中的 [LCDConfigFiles] 選項(xiàng)下提供這些文件,如下所示:
[LCDConfigFiles]
配置文件 = configlcd_config.xml
PinConfigFile = configlcd_pin_config.xml
用戶可以使用 GUI 的“文件→打開”選項(xiàng)覆蓋這些文件。
LCD寄存器及其仿真
LCD 寄存器調(diào)整 (LCRA):選擇一種顯示模式:靜態(tài)、1/2 多路復(fù)用器、1/3 多路復(fù)用器和 1/4 多路復(fù)用器。對此寄存器的更改將反映在液晶屏 GUI 的狀態(tài)欄上。
LCD 配置寄存器 (LCFG):每個(gè)位設(shè)置和 GUI 狀態(tài)描述如下:
位設(shè)置 | 圖形用戶界面更改 |
DPE = 1 | 顯示:開 |
DPE = 0 | 顯示:關(guān)閉 |
OPM = 1 | OPM:正常 |
OPM = 0 | OPM:掛起 |
LCDDx 寄存器:當(dāng) DPE = 0/1 時(shí),可以更新 LCDDx 寄存器。當(dāng) DPE = 1 且 OPM = 1 時(shí),LCDDx 寄存器的內(nèi)容將在 GUI 上更新。紅色表示來源的液晶屏;黑色表示存在但當(dāng)前未采購的液晶屏。液晶屏不是來源的,可能由以下幾個(gè)因素造成:
LCFG寄存器的PCFx位不是SET,這使得SEG引腳用作I/O引腳。
具有中斷功能的多路復(fù)用的LCD SEG引腳使能。
LCDDx 寄存器在該位位置包含 0。
在顯示屏上移動(dòng) PC 鼠標(biāo)會(huì)更新 COM 和 SEG。
示例程序的 GUI 更改
MAXQ2000提供三種不同的引腳排列封裝:56、68和100引腳。測試程序(見上表1和表2)測試MAXQ2000 68引腳封裝的功能。從器件編號列表中選擇MAXQ2000 68引腳配置,然后執(zhí)行測試程序。請注意 GUI 更改。
move LCRA, #08FFh : Mode: 1/2 Mux move LCFG.0, #0h : Display: OFF move LCFG.1, #01h : OPM: Normal move LCFG.4, #01h : PCF0: Configures I/O pins as segment pins move LCFG.5, #01h : PCF1: Configures I/O pins as segment pins move LCFG.6, #01h : PCF2: Configures I/O pins as segment pins move LCFG.7, #01h : PCF3: Configures I/O pins as segment pins move EIE0.7, #01h : Enables Interrupt Function of INT7, Comment : /uncomment to see the MUX behavior of SEG pins
顯示圖案從LCDD0寄存器移動(dòng)到LCDD8寄存器。1 表示要源的段,0 表示不會(huì)源的段。
move LCFG.0, #1h : Display: ON
禁用 EIE0.7(注釋移動(dòng) EIE0.7,#01h)并執(zhí)行“移動(dòng) LCFG.0, #1”語句后,GUI 顯示將如圖 3 所示。
圖2.MAXQ2000 64針液晶面板
執(zhí)行后
move LCD0, #0ffh move LCD1, #0ffh
GUI 將如下所示:
圖3.MAXQ2000 64引腳LCD面板顯示隨DPE = 1而變化。
您會(huì)注意到,不同之處在于 COM0:SEG2、COM0:SEG3、COM0:SEG6 和 COM0:SEG7 的顏色從黑色變?yōu)榧t色,這表明 LCD 是來源的。
啟用 EIE0.7(SEG31 與 INT7 多路復(fù)用)后,GUI 將如下所示:
圖4.MAXQ2000 64引腳LCD面板,帶SEG多路復(fù)用INT模塊。
將圖 2 與圖 4 進(jìn)行比較。COM0:SEG31 和 COM1:SEG31 不是作為 LCD 段采購的。
注:用戶可以設(shè)計(jì)/修改LCD顯示面板和LCD模擬器的MAXQ引腳輸入。XML 輸入文件可以在任何編輯器中打開,使用的 XML 標(biāo)記名稱是不言自明的。
結(jié)論
MAXQ器件仿真器可用于開發(fā)和調(diào)試MAXQ10和MAXQ20微控制器的LCD仿真器。然后,開發(fā)的應(yīng)用程序就可以在硬件上運(yùn)行了。
審核編輯:郭婷
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19126瀏覽量
305242 -
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7492瀏覽量
163842 -
仿真器
+關(guān)注
關(guān)注
14文章
1018瀏覽量
83746
發(fā)布評論請先 登錄
相關(guān)推薦
評論