RAiO RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 常見使用問題及說明 Preliminary Version 1.0 March 10, 2009 RAiO Technology Inc. ©Copyright RAiO Technology Inc. 2009 RAiO TECHNOLOGY INC. 1/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 Update History Version 1.0 Date March 10, 2009 RAiO TECHNOLOGY INC. Description Preliminary Version 2/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 Chapter Contents Page 1. 基本應用篇 ................................................................................................. 5 1-1 基本介紹................................................................................................................. 5 1-2 如何設計模組上的 RA8803/8822 電路 ................................................................... 6 1-3 使用 RA8803/8822 無法點亮.................................................................................. 9 2. 鍵盤掃描相關應用問題 ............................................................................. 10 2-1 Sleep Mode 時,鍵盤喚醒功能無作用 ?.............................................................. 10 2-2 按鍵在連續或交替被按下時,會造成 KeyScan 功能無法正常運作 ? ................... 10 2-3 在使用 RA8803/22 KeyScan 功能,同時按兩個按鍵會當機 ?............................. 10 3. MUC 介面相關應用問題............................................................................ 12 3-1 當 ZCS1 一直處於低準位狀態時,為什麼有螢幕會有瞬間閃爍的現象 ? .............. 12 3-2 RA8803/22 是否可以在 8051 總線模式下運行 ? .................................................. 12 3-3 使用 8051 總線模式,為什麼無法點亮 LCD Panel ? ........................................... 13 3-4 當進入 8051 外部中斷服務常式後,會有當機現象!! ............................................. 13 4. 觸控螢幕相關應用問題 ............................................................................. 14 4-1 Touch panel 在觸控屏上有非線性的問題 ? ......................................................... 14 4-2 Touch Panel 觸控信號一直亂發的原因為何 ? ..................................................... 14 5. 螢幕顯示相關應用問題 ............................................................................. 16 5-1 Power ON 瞬間螢幕為什麼會出現暫態的全白畫面 ? ........................................... 16 5-2 螢幕顯示會有閃爍的情況,這是什麼原因造成 ? .................................................. 16 5-3 MPU 對 RA8803/22 作讀寫的動作時,顯示屏上依稀可看見誤寫的雜點?............ 17 5-4 RA8803/22 的工作視窗與顯示視窗的作用為何 ? 如何區別 ?............................... 18 5-5 使用 PNTR 清除畫面的指令後,左上角會出現 4 個點清不掉 ?............................ 18 5-6 如何使用 RA8803/22 四灰階顯示效果 ?............................................................... 18 5-7 請問 RA8803 的捲動功能是否可以向右捲動或向上捲動 ? ................................... 19 5-8 MCU I/F 設定 4 位元通訊方式,無法正常顯示內建中文字庫 ?............................. 19 5-9 無法在文字模式正常顯示內建字庫的文字 ? ......................................................... 19 5-10 為什麼在文字尚未填寫完一列時,會發生自動換行的狀況 ? .............................. 19 5-11 請問自建字型可否自建 8*16 的字體 ? ................................................................ 19 5-12 使用 RA8803/22 內建字庫,顯示的文字會有缺點錯亂現象 ?............................. 20 5-13 顯示的文字或圖形偏移 ....................................................................................... 20 RAiO TECHNOLOGY INC. 3/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 5-14 如何避免當機現象............................................................................................... 21 5-15 如何避免 IC 損毀 ................................................................................................ 21 5-16 顯示的畫面有殘影或品質不佳............................................................................. 22 RAiO TECHNOLOGY INC. 4/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 1. 基本應用篇 1-1 基本介紹 RA8803 和 RA8822 是功能強大且容易使 STN LCD 顯示控制器,除了提供 STN LCD 顯示功能外, 還內建中英文字庫、智慧型電阻式觸控掃瞄控制器與鍵盤掃瞄介面,使用者可以節省相當多的時間 和成本於系統硬體和軟體開發上。RA8803/8822 系統應用方塊圖如下: LCD LCD Driver Driver Font ROM Display RAM CPU CPU 1 2 3 4 5 6 7 8 9 * 0 # LCD LCD Panel Panel LCD LCD Driver Driver LCD Controller (128x64 (128x64 ~~ 640x240) 640x240) Touch Panel ADC Key-Scan Touch Controller RA8803/8822 圖 1-1 基本上 RA8803/8822 接受 MCU 送來的指令,然後將 MCU 所希望顯示的內容以資料傳輸到 LCD 驅 動器(Driver),再透過驅動器接到 STN 玻璃上顯示出文字或圖案。因此 RA8803/8822 是界於 MCU 與 LCD 驅動器之間的控制 IC,在實際應用上有兩種模式,一種是將 RA8803/8822 置於 LCD 模組 上,做成帶控制器的 LCD 模組, 如下圖: LCD 模組 其他元件 其他元件 升壓電路 升壓電路 LCD LCD Driver Driver LCD LCD Controller Controller CPU CPU LCD LCD Driver Driver LCD LCD Panel Panel (128x64 (128x64 ~~ 640x240) 640x240) RA8803/8822 圖 1-2 另一種是將 RA8803/8822 置於系統端,搭配各式不帶控制器的 LCD 模組,如下圖: LCD 模組 其他元件 其他元件 CPU CPU 升壓電路 升壓電路 LCD LCD Driver Driver LCD LCD Driver Driver LCD LCD Controller Controller LCD LCD Panel Panel (128x64 (128x64 ~~ 640x240) 640x240) RA8803/8822 圖 1-3 RAiO TECHNOLOGY INC. 5/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 1-2 如何設計模組上的 RA8803/8822 電路 如果您是模組廠商,想要將 RA8803/8822 置於 LCD 模組上做成帶控制器的 LCD 模組,請先下載最 新 的 RA8803/8822 規 格 書 , 您 可 以 與 瑞 佑 科 技 的 代 理 商 連 繫 或 直 接 由 瑞 佑 科 技 的 網 址 (www.raio.com.tw) 得到完整的 RA8803/8822 規格書,並且依據 RA8803/8822 各腳位的應用、參 考應用手冊第 3 章對 LCD 驅動器之間的介面說明及附錄 B 的應用電路,來準備您的模組電路圖, 下面幾點是比較容易疏忽的地方: 3V 與 5V 的模組在接線上略有不同,請參考應用手冊第 B-2 節電源(Power)應用電路。 當 RA8803/8822 工作於 5V 的系統時,為了增加 VDD 的穩定性,必須在 VDD 上外加 一 1µF 和 0.1µF 的電容。如下圖或應用手冊第 B-2-3 節 5V 電源應用電路。 5V MCU RA8803/8822 5V VDDP VDD VDD3 VDD5 0.47uH AVDD GNDP (Option) 10u 0.1u 1u 0.1u GND 0.1u AGND GND I/O MCU I/F 圖 1-4 RA8803/8822 的振盪電路是由外部在 XA 和 XB 兩腳間的 32768Hz 石英振盪器、兩個 電容及一 LPF(Low Pass Filter) 電路產生,內部工作時脈(System Clock)可透過暫存器 [01]設定選擇不同的系統頻率。 RA8803/8822 0.22 µ LPF 0.022µ 20P 2.4KΩ XA 32768Hz SYS_FQ 20P XB 圖 1-5 RAiO TECHNOLOGY INC. 6/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 REG [01h] Misc. Register (MISC) Bit 1-0 Description 系統時脈選擇 Default Access 0h R/W 0 0:3MHz 0 1:4MHz 1 0:8MHz 1 1:12MHz RA8803/8822 支援 8080 和 6800 等兩種微處理機介面傳輸模式。介面的選擇決定於 IC 接腳 ”SYS_MI” 的電位,當選擇 8080 來進行介面傳輸時,SYS_MI 必須連接到低電 位,反之,當選擇 6800 來進行介面傳輸時,SYS_MI 必須連接到高電位。而使用者的 程式必須依循硬體上的 MCU 介面傳輸模式,RA8803/8822 才能收到 MCU 的正確指 令。 由於您無法預知系統端客戶的 MCU 介面環境,為了減輕 MPU 與 RA8803/8822 間的 傳輸線及使用環境的干擾,強烈建議您在 RA8803/8822 的 ZCS1、ZRD、ZWR 端加 一小電容(50~250pF)到 GND,如下圖。 8080 MPU RA8803/8822 RS A0 A1-A7 IORQ Decoder CS1# CS2 SYS_MI DB0-3(DB0-7) D0-D3(D0-D7) RD RD# WR WR# RES RST# 圖 1-6 使用觸控螢幕的功能除了連接 XL、XR、YU 和 YD 等四條信號線到 RA8803/8822 外,此四條信號線必須外加 0.01uF 電容到地,如下圖。 RA8803/8822 Touch Panel X1 XL X2 XR Y1 YU Y2 YD 0.01μ F x 4 圖 1-7 RAiO TECHNOLOGY INC. 7/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 當然除了 RA8803/8822,模組設計者必須確定其它元件與電路的正確性,如升壓電路、OP 分壓電 路、LCD Driver 電路等等,而不論您是模組設計者或是系統端客戶,都可以參考瑞佑科技所提供的 範例程式(可直接由瑞佑科技的網址(www.raio.com.tw)下載,我們提供了好幾個為 RA8803 及 RA8822 依不同解析度模組所寫的範例程式壓縮檔案。 RAiO TECHNOLOGY INC. 8/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 1-3 使用 RA8803/8822 無法點亮 如果您是模組廠商,底下是當您使用 RA8803/8822 無法點亮 LCD 所進行的除錯與分析流程: 1. 確定電源(3V 或 5V) 正確送到 RA8803/8822、升壓電路、OP 分壓電路、LCD Driver 電路。 2. 確定升壓電路產生的 VLCD 及 OP 分壓電路的產生的 V0~V4 正確送到 LCD Driver。 3. 確定 RA8803/8822 的振盪電路正常運作。可用示波器量測 XD、XG 兩腳是否有振盪。 4. 確定 RA8803/8822 的 RST# 於開機收到 MCU 送來的重置信號。Reset 後 RST# 應維持 Hi 的 準位。 5. 確定 MCU 與 RA8803/8822 的硬體接線、線路定義正確。 6. 確定 MCU 產生的時序符合 RA8803/8822 要求,並與 RA8803/8822 在模組上的應硬體設定一 致。請參考應用手冊的圖 2-2、2-4。 7. 確定 MCU 產生的指令符合 RA8803/8822 的流程與要求。 8. 確定 RA8803/8822 給 LCD Driver 的信號(YD、FR、LP、XCK、LD[3:0]) 有正確產生。 通常 RA8803/8822 給 LCD Driver 的信號若有產生,LCD 玻璃應會有畫面出現,若無畫面出現則可 能的問提通常是升壓部份的電路,不是升壓電路沒有產生 VLCD,就是 OP 分壓電路的產生的 V0~V4 沒有正確送到 LCD Driver。 如果您是系統端客戶,一般您拿到的模組是模組廠商測試過的,因此出現使用 RA8803/8822 無法點 亮的原因通常是上述的 5~7 項,如果您是將 RA8803/8822 置於系統端,而搭配模組廠商不帶控制 器的 LCD 模組,則必須參考檢查上述的 3~8 項。 RAiO TECHNOLOGY INC. 9/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 2. 鍵盤掃描相關應用問題 2-1 Sleep Mode 時,鍵盤喚醒功能無作用 ? Keyscan 功能在 RA8803/22 Sleep Mode 時,只開放 KC0 做掃瞄動作,因此只有當按下 ROW 0 這 排按鍵,才可以將系統喚醒。 圖 2-1 : Key Scan 示意圖 2-2 按鍵在連續或交替被按下時,會造成 KeyScan 功能無法正常運作 ? 這問題主要造成的原因是發生在當按鍵被按下,而 KeyScan 的 Debounce time 卻又未完成的時 候,此時使用者又按下另一個按鍵,導致內部訊號運作異常,KeyScan 功能無法正常使用的狀況。 建 議 可 利 用 8051 的 Timer 在 主 程 式 中 每 隔 一 段 時 間 去 寫 REG[A1h](KSCR) 或 讀 REG[A3h](KSER),就可以解決此問題。 2-3 在使用 RA8803/22 KeyScan 功能,同時按兩個按鍵會當機 ? 在使用 2x strobes and 1x input mode 時,同時按下 SW0 以及 SW1 可能導致短路的現象發生,這 是由於 KST0 以及 KST1 等掃瞄信號在同一時間內是屬於不同的邏輯準位,因此不可以同步地一起 按下兩個按鍵。我們會建議使用者修改上述的電路為 1x strobe and 2x inputs (圖 2-3),或參考下述 建議的 2x strobe and 1x input circuit 去避免前述的錯誤問題。 RAiO TECHNOLOGY INC. 10/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 VDD 10KΩ KST0 SW0 KIN0 short (Logical “High”) KST1 SW1 (Logical “Low”) 圖 2-2 2X STROBES AND 1X INPUT SUGGESTED CIRCUIT(1) 2X STROBES AND 1X INPUT SUGGESTED CIRCUIT(2) VDD VDD VDD KST0 10KΩ 1X STROBE AND 2X INPUTS CIRCUIT SW0 10KΩ KST0 KIN0 SW0 VDD KIN0 10KΩ SW0 KST0 KIN0 VDD KST1 SW1 SW1 VDD 10KΩ SW1 KIN1 KST1 74AC125 ※It is recommended to use this circuit 圖 2-3 RAiO TECHNOLOGY INC. 11/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 3. MUC 介面相關應用問題 3-1 當 ZCS1 一直處於低準位狀態時,為什麼有螢幕會有瞬間閃爍的現象 ? 當 CS 恆為低準位時,如果 RA8803/22 沒有對顯示記憶體作讀寫時,建議將 RS 信號維持在低準 位,就可以解決螢幕閃屏的問題。 3-2 RA8803/22 是否可以在 8051 總線模式下運行 ? 可以的,建議您在使用此模式運作時,請將 MCU 的/RD 與/WR 兩根控制信號腳各加上一級 OR 閘 (74LS32)並與 RA8803/22 的/CS 信號接腳做 OR 運算,以防止 RA8803/22 與其它元件在共用 BUS 的情況下,可能產生的誤動作情形。詳細相關應用請參考 RA8803_RA8822_AP_v26_Chi 2-5 節第 16 頁…. 圖 3-1 : 8051 總線模式示意圖 RAiO TECHNOLOGY INC. 12/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 3-3 使用 8051 總線模式,為什麼無法點亮 LCD Panel ? 一般問題都出在 MCU 給予 RA8803/22 的時序不正確影響到螢幕顯示的正常與否!而可能的造成原 因通常發生在/CS 與/WR 的 rising edge 間隔太近,導致其 Address hold time 太短,造成誤動作! 故建議將/CS pin 串接兩級反向器,給予/CS 有一個適當的 Delay(約 30ns),為了就是將/CS duration time 間隔放寬,以確保 RA8803/22 能正確的寫入指令或資料。 3-4 當進入 8051 外部中斷服務常式後,會有當機現象!! 這可能是別的外部元件向 MPU 要求外部中斷,但 MPU 此時正在對 RA8803/22 下指令週期,但指 令週期未完成所造成的原因,建議可以將 MPU 在對 RA8803/22 作讀寫指令時,可以先禁能 MPU 外部中斷,以避免此類狀況發生。 RAiO TECHNOLOGY INC. 13/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 4. 觸控螢幕相關應用問題 4-1 Touch panel 在觸控屏上有非線性的問題 ? 在您的系統頻率允許範圍內,儘可能將 RA8803/22 的系統頻率設定在小於 4Mhz 的情況下,Touch Panel 非線性問題就可以改善了,而 RA8803/22 的系統頻率可透過 REG[01h]作選擇。 表 4-1 : REG[01h] Misc Register (MISC) Bit 7 Description 保留 Default Access 1h R/W 1h R/W 1h R/W 1h R/W 0h R/W 0h R/W CLK_OUT 致能控制 6 1:致能 0:禁能 5 保留 設定中斷 (INT)/ BUSY 的觸發准位 4 1:設定高電位觸發動作 0:設定低電位觸發動作 3-2 保留 系統時脈選擇 0 0:3MHz 1-0 0 1:4MHz 1 0:8MHz 1 1:12MHz 4-2 Touch Panel 觸控信號一直亂發的原因為何 ? 當在使用 RA8803/22 的 Touch Panel 功能時,[C1h]的 bit6(ADET) 讀出來觀察發現其值恆為 1,代 表觸控屏一直有觸摸事件發生,發生的原因可能為外部雜訊干擾造成誤判的結果,建議可在 RA8803/22 的 Pin28(X1)這根腳加上一個上拉電阻(約 51K),就可以避免此狀況發生。 RAiO TECHNOLOGY INC. 14/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 表 4-2 : REG[C1h] ADC Status Register (TPSR/ADCS) Bit Description Default Access 0h R/W 0h R/W ADC 資料轉換完成指示 7 1: ADC 資料轉換已完成 0:ADC 資料轉換未完成 觸摸事件的偵測指示 6 1:有被觸摸 0:沒被觸摸 5 此位元必須在系統使用時設為 “1 “ 0h R/W 4 此位元必須在系統使用時設為 “1 “ 0h R/W 2h R/W 2h R/W 設定 ADC 的時脈轉換速度 0 0:SCLK/32 3-2 0 1:SCLK/64 1 0:SCLK/128 1 1:SCLK/256 1-0 保留 0.01uFx4 圖 4-1 : RA8803/22 觸控螢幕電路 RAiO TECHNOLOGY INC. 15/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 5. 螢幕顯示相關應用問題 5-1 Power ON 瞬間螢幕為什麼會出現暫態的全白畫面 ? 此類狀況可能為 Driver 的 DISPOFF Pin 被直接接到 VDD 造成 Display Always ON,所以在 Module Power ON 時,RA8803/22 在做 Hardware Reset,但內部 PLL 未達到工作頻率,在尚未給予 Drive 適當的液晶翻轉交流訊號 FRM,所造成的直流驅動現象!!一般應用都是在完成上述相關動作後,才 會將 LCD 的顯示功能打開, 因此建議可將 Driver 的 DISPOFF Pin 拉出與 Controller 連接在一起, 由 Controller 控制液晶的顯示,才可以完全避免此類狀況!! 相關應用請參考下圖: 圖 5-1 : RA8803/22 與 LCD Driver 的接線圖 5-2 螢幕顯示會有閃爍的情況,這是什麼原因造成 ? 螢幕閃爍一般是螢幕更新頻率過低(FRM 信號),導致人眼可以看到螢幕在掃描更新畫面所造成,所 以 我 們 通 常 建 議 螢 幕 每 秒 更 新 頻 率 為 60~70HZ , 就 可 以 解 決 螢 幕 閃 爍 且 不 連 續 的 感 覺 , 而 RA8803/22 是可以透過暫存器 REG[90h] Shift Clock Control Register(SCCR)作調整,所以您可以 調適此暫存器設定值,來將您的螢幕顯示品質最佳化。 RAiO TECHNOLOGY INC. 16/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 表5-1 : REG[90h]Shift Clock Control Register(SCCR) Bit 7-0 Description 設定 XCK 訊號週期 SCCR = (SCLK x DW) / (Seg x Com x FRM) SCLK:RA8803/8822 系統頻率(System Clock) (單位:Hz) DW:LCD 驅動器的 Data Bus 寬度(單位:Bit) Seg:LCD 面板的 Segment 大小(單位:Pixel) Com:LCD 面板的 Common 大小 (單位:Pixel) FRM: LCD 面板的 Frame Rate(單位:Hz) Default Access 4h R/W 限制條件 SYS_DW=0,LCD 的 Data Bus 為 4it,SCCR ≥ 4 SYS_DW=1,LCD 的 Data Bus 為 8it,SCCR ≥ 2 1. 如果使用 X’tal + PLL 的方式,系統頻率(SCLK) = 8MHz 2. LCD 驅動器 的 Data Bus 寬度(DBW) = 8Bit 3. 使用 320 x 240 Pixel 的 LCD 面板,Column = 320,Row = 240 4. LCD 面板的 Frame Rate 為 70Hz 則 SCCR = (8MHz x 8) / (320 x 240 x 70) = 11.9 所以建議設定 SCCR = 12 = 0Ch 5-3 MPU 對 RA8803/22 作讀寫的動作時,顯示屏上依稀可看見誤寫的雜點? 當 RA8803/22 內部的邏輯電路在執行掃瞄任務時,同時 MPU 對 RA8803/22 Display RAM 做資料 的存取,顯示屏的掃瞄資料將被干擾造成錯誤,因此會在顯示屏上顯示多餘的雜點,稱之為「雪 花」。為了減少或避免雪花問題,以下有兩點建議事項: 建議一:透過暫存器 REG[90h] Shift Clock Control Register(SCCR) 調高螢幕更新頻率(Frame rate)。 建議二:在不影響人眼觀看顯示屏的最佳效果下,請減少對 RA8803/22 頻繁的讀寫。 圖 5-2 : 雪花示意圖 RAiO TECHNOLOGY INC. 17/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 5-4 RA8803/22 的工作視窗與顯示視窗的作用為何 ? 如何區別 ? 在工作視窗(Active Window)內除了可作為文字、圖形與顯示游標換行的依據外,還可做到區塊文字 或圖形的清除。而顯示視窗(Display Window)一般我們會視液晶顯示屏的解析度(Resolution)給予其 等同大小的設定。 5-5 使用 PNTR 清除畫面的指令後,左上角會出現 4 個點清不掉 ? 建議您參考以下清屏範例程式,用來做清除整頁畫面的效果 void LCD_Clear(void) { LCD_CmdWrite(PNTR, 0x00); LCD_FillOn(); Delay100ms(1); LCD_GotoXY(0,0) LCD_DataWrite(0x00); } void LCD_FillOn(void) { uchar temp; temp = LCD_CmdRead(FNCR); temp |= cSetb3; LCD_CmdWrite(FNCR, temp); } 5-6 如何使用 RA8803/22 四灰階顯示效果 ? 顯示圖案請參考下圖: 圖 5-3 : 灰階顯示 實現四灰階功能,請參照以下四灰階顯示範例程式: uchar gData=0xFF; uint P1,P2; LCD_CmdWrite(WLCR,0xC5); //Graphic Mode LCD_CmdWrite(MAMR,0x91); //Access Page1 LCD_GotoXY(0,0); for(P1=0;P1<9600;P1++) //Show Page1 { if(P1>=4800) LCD_DataWrite(~gData); else LCD_DataWrite(gData); } Delay100ms(10); LCD_CmdWrite(MAMR,0xA2); //Access Page2 LCD_GotoXY(0,0); RAiO TECHNOLOGY INC. 18/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 for(P2=0;P2<9600;P2++) { if (P2<2400) LCD_DataWrite(gData); if (P2>=2400 && P2<4800) LCD_DataWrite(~gData); if (P2>=4800 && P2<7200) LCD_DataWrite(gData); if (P2>=7200 && P2<9600) LCD_DataWrite(~gData); } Delay100ms(10); LCD_CmdWrite(MAMR,0x80); LCD_CmdWrite(SCCR,0x05); LCD_CmdWrite(PNTR,0x92); LCD_CmdWrite(PNTR,0x92); //Show Page2 //Gray_Mode //Frame rate //PNTR 須連續下兩筆,才能致能灰階對比 5-7 請問 RA8803 的捲動功能是否可以向右捲動或向上捲動 ? RA8803/22 捲動功能目前只支援向左捲動與向下捲動,尚無提供向右捲動與向上捲動的功能。 5-8 MCU I/F 設定 4 位元通訊方式,無法正常顯示內建中文字庫 ? 當使用 RA8803/22 的 MPU I/F 設定為 DataBus 4Bit 時,要正常的顯示中文字型,請試著將 DataBus 沒有用到的高 4 位元(DB[7:4]),請拉至高位準,而要正確的顯示 ASCii 時,請透過 REG[F0h]的 Bit2 設定為 1(輸入的 Data 都以 ASCii 解碼),這樣一來就可以正常的顯示文字。 5-9 無法在文字模式正常顯示內建字庫的文字 ? 這通常是在寫入中文字庫的 Font Code 時,沒有做適當的延時造成!而這個狀況在使用 RA8803/22 放大字型的功能時更加明顯,所以當您在寫入中文字型請記得要加上適當的延遲時間。 5-10 為什麼在文字尚未填寫完一列時,會發生自動換行的狀況 ? 這狀況是發生在全形與半形混合顯示在同一列,而顯示屏剩餘的顯示文字空間只剩一個半形字 (8*16),而前一個寫入的文字又為全形的話,RA8803/22 是會自動換行,將下一個要顯示的文字寫 到下一列去,但若是前一個寫入的文字為半形,則可繼續填滿剩餘的半形文字,不會有自動換行的 狀況。 5-11 請問自建字型可否自建 8*16 的字體 ? RA8803/22 只能創造建立 16*16 的字體。 RAiO TECHNOLOGY INC. 19/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 5-12 使用 RA8803/22 內建字庫,顯示的文字會有缺點錯亂現象 ? 當 PIN 19 (VDD3)輸入 3.3V,PIN20(VDD5)浮接Î顯示正常。 當 PIN 19 (VDD3)浮接,PIN20(VDD5)輸入 5VÎ顯示字型缺點。 此現象通常是發生在使用 RA8803/22 的 5V 電源系統,Pin19(VDD3) 浮接,沒有並上一個 1uF 的穩 壓電容,導致 RA8803/22 內部電源不穩定所產生的現象,所以當有文字缺點的現象,我們建議在 Pin19(VDD3)並上一個 1uF 電容,就可以有效的解決此問題,請參考以下相關電路 : 圖 5-4 : 5V 電源應用電路 5-13 顯示的文字或圖形偏移 可能的原因有 4: 1. RA8803/8822 設定的顯示視窗(Display Window、工作視窗(Active Window)大小與實際 LCD 解析度(Resolution) 不同。下表列出幾種較為大家所常用的 LCD 模組及其相關暫存器 設定。 Panel Resolution Segment Common REG[21h] DWRR REG[31h] DWBR 160*80 160 80 13h 4Fh 160*128 160 128 13h 7Fh 160*160 160 160 13h 9Fh 240*64 240 64 1Dh 3Fh 240*128 240 128 1Dh 7Fh 240*160 240 160 1Dh 9Fh 320*240 320 240 27h EFh RAiO TECHNOLOGY INC. 20/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 2. MCU 傳遞資料過快導致 RA8803/8822 的處理速度跟不上Æ 請在程式加上延時(Delay),或 以 Check “Busy” 方式確定 RA8803/8822 已經處理完上一筆資料。 3. MCU 產生的時序不符合 RA8803/8822 要求Æ 避免 Set-up time 或 Hold Time 不足,請參考 應用手冊的圖 2-2、2-4。 4. 系統環境不佳、雜訊干擾過大、或模組與系統連接線過長,都有可能造成此現象Æ 雖然 RA8803/8822 在 MCU 接口輸入端採用 Schmitt Trigger 電路避免雜訊干擾,但是過大的雜 訊干擾仍會造成 RA8803/8822 可能的誤動作。為了減輕 MPU 與 RA8803/8822 間的傳輸線 及使用環境的干擾,可以在 RA8803/8822 的 CS1#、RD#、WR# 端加一小電容(50~250pF) 到 GND , 若 是 系 統 (MCU) 信 號 過 弱 或 負 載 (Loading) 太 大 , 可 以 在 RA8803/8822 的 CS1#、RD#、WR# 及 DATA[7:0] 端加(1K~4.7Kohm) 提昇電阻。 5-14 如何避免當機現象 可能的原因為系統環境不佳、雜訊干擾過大都有可能造成此現象Æ 請參考上一節(5-13 節) 的第 4 點 說明。另外避免模組與系統連接線過長。 5-15 如何避免 IC 損毀 RA8803/8822 的 ESD 超過工業級 4KV 的要求,但對於使用在特殊的、惡劣的系統環境仍必須留意 PCB 布局及加入保護元件,避免造成此損毀現象。 同時過高的瞬間電源突波或超過規格電壓(5.5V) 時間過長也會造成損毀現象Æ 可在模組的 VDD 與 GND 間加一大電容(470uF)或突波吸收器,避免 IC 或 LCD 模組損毀。 Power LCD Module 7V VDD 6V 5V Driver Driver Driver RA8803 RA8822 470uF Driver Driver GND t Time 圖 5-5 另一種會造成 IC 損毀是因為 EOS(Electrically Over Stress) 的原故,最好的避免方法是減短系統與 模組端的 Cable 長度,或是串上 200ohm~1Kohm 電阻: RAiO TECHNOLOGY INC. 21/22 www.raio.com.tw RA8803 / RA8822 雙圖層 文字/圖形 LCD 控制器 Preliminary Version 1.0 System Board LCD Module MCU : : : Driver Driver Driver RA8803 RA8822 Driver Driver 圖 5-6 5-16 顯示的畫面有殘影或品質不佳 可能的原因有 4: 1. 液晶的品質或偏光片不佳。 2. 升壓(VLCD)不足或驅動力不夠。 3. V0~V4 的分壓不正確。 4. RA8803/8822 的 Frame Rate 設 定 太 高 。 請 依 據 使 用 的 規 格 如 解 析 度 (Resolution) 、 RA8803/8822 Clock 來 設 定 暫 存 器 REG[90h] - SCCR。 Frame Rate 太高會導致驅動 IC(Driver) 耗電大,進而可能影響升壓(VLCD)造成驅動力不夠。 RAiO TECHNOLOGY INC. 22/22 www.raio.com.tw