Version 5, last updated by fellong at Jan 05 01:42 2009 UTC

實驗(六) LCM 模組控制

實驗目的:

本節在實現LCM模組。

實驗○:

在LCM上 顯示出Welcome to FPPA's World 字樣

實驗一:

在LCM上 動態跑馬顯示出Welcome to FPPA's World 字樣

I/O腳位定義:

///                                             LCMen                            equ  pe.0;
///                                             LCMrw                            equ  pe.1;
///                                             LCMrs                             equ  pe.2;
///                                             LCMPort                          equ  pg;

模組函式規畫:

/// ======== START 共享變數-由主程式宣告 ========
extern word lcm_share_str;     /// 作為 PUTS 傳入的字串
/// ======== END 共享變數 ========

/// ======== START Public 函式 ========
void Initial_LCM( void );         /// 初始化 IO
void LCM_line1( void );           /// LCM 歸位至第一行
void LCM_line2( void );           /// LCM 歸位至第二行
void LCM_putc( void );           /// LCM 輸出單一字元 a
void LCM_puts_HI( void );    /// 傳入字串長度 a,將 ROM 中,位址 lcm_share_str 開始的字串 PUT 出。(從 HI BYTE 開始)
void LCM_puts_LO( void );   /// 傳入字串長度 a,將 ROM 中,位址 lcm_share_str 開始的字串 PUT 出。(從 LO BYTE 開始)
#define LCM_puts()      LCM_puts_LO();
void LCM_clear( void );           /// 清除 LCM
/// -------- 簡易巨集 --------
#define _LCM_puts_HI(str,n) \                   /// 將長度 n 的字串 str 從 LCM 印出。(從 HI BYTE 開始)
                                                                           lcm_share_str=str;\
                                                                           a=n;\
                                                                           LCM_puts_HI();
#define _LCM_puts_LO(str,n) \                  /// 將長度 n 的字串 str 從 LCM 印出。(從 LO BYTE 開始)
                                                                           lcm_share_str=str;\
                                                                           a=n;\
                                                                           LCM_puts_LO();
#define _LCM_puts(str,n) \               /// 將長度 n 的字串 str 從 LCM 印出。(從 LO BYTE 開始)
                                                                           lcm_share_str=str;\       
                                                                           a=n;\
                                                                           LCM_puts_LO();
#define _LCM_putc(c) \                     /// 將字元 c 從 LCM 印出。
                                                                           a=c;\
                                                                           LCM_putc();
/// ======== END Public 函式 ========

模組函式設計:

...................略。