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

利用液晶模擬器與MAX-IDE和IAR嵌入式工作臺開發環境-

嵌入式系統設計必備ARM仿真器知識
TI的CC2538 IDE設備軟件開發的使用手冊詳細資料免費下載

嵌入式IAR仿真教程用戶手冊免費下載

使用IAR的嵌入式工作臺調用實用程序ROM函數用于MAXQ

適用于MSP430 MCUs的IAR嵌入式工作臺IDE版本7+

評論