问答题 用字符型的LCD显示模块来显示字符。
【正确答案】下面是在双行显示板的第一行第三个位置显示4个字符GOOD的程序dslcd.c。程序包括初始化函数init_lcd、显示字符函数d_char和显示字符串函数display。
   应用程序:
   #include<reg51.h>
   #include<absacc.h>
   #define uchar unsigned char
   #define LCDCOM XBYTE [0x7ff0]
   #define LCDDATA XBYTE[0x7ff1]
   sbit bflag=ACC^7;
   uchar idata s_GOOD[5]={0x47,0x4fr,0x4f,0x44,0x00);
   void wait (void)
   {
       dof ACC=LCDCOM;}while (bflag==1);//查询BF标志
   }
   void  init_lcd(void)
   {
       LCDCOM=0x38;                               //置功能;2行,5x7字符
       wait();
       LCDCMO=0x06;                               //置输入模式:地址增量,显示屏不移动
       wait();
       LCDCMO=0x0f;                              //显示开,显示光标,显示闪烁
       wait();
       LCDCMO=0x01;                              //清显示
       wait();
   }
       void d_char (uchar a)
   {
       LCDDATA=a;
       wait();
   }
   void display(uchar x,uchar idata *s)          //显示字符串函数
   {
       uchar i=0;                                //参数显示位置和显示的字符串
       LCDCOM=x;
       While(s[i]!=0x00)                         //置显示位置地址
       {
           d_char(s[i]);
           i++;
       }
   }
   void main (void)
   {
       init_lcd ();
       display() 2, s_GOOD;
   }
【答案解析】