Version 5, last updated by fellong at January 05, 2009 04:42 UTC
實驗(六)16x2 LCM顯示
實驗(六) 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 函式 ========
模組函式設計:
...................略。