TFT LCD驱动程序中的一条语句不理解,请高手讲解

2019-03-24 14:53发布

//========================================================================
// 函数: void PutChar(unsigned char x,unsigned char y,char a)
// 描述: 写入一个标准字符
// 参数: x X 轴坐标 y Y 轴坐标
// a 要显示的字符在字库中的偏移量
// 返回: 无
// 备注: ASCII 字符可直接输入ASCII 码即可
// 版本:
// 2006/10/15 First version
// 2007/01/11 V1.1
//========================================================================
void PutChar(DOTBYTE x,DOTBYTE y,char a)
{
    DOTBYTE i,j; //数据暂存
    FLASH *p_data;
    LCDBYTE Temp;
    BYTE Index = 0;
    if(Font_type==1)
       p_data = Char_TAB + (a-32)*Font_Wrod;
    else
       p_data = Char_TAB + a*Font_Wrod; //要写字符的首地址
    j = 0;
    while((j ++) < Y_Witch)         {
          if(y > Dis_Y_MAX) break;
          i = 0;
          while(i < X_Witch)
             {
               if((i&0x07)==0)
                   {
                     Temp = *(p_data+Index);
                      Index++;
                   }                if((Temp & 0x80) > 0)                     Writ_Dot ((x+i),y,Char_Color);
              else  if(Font_Cover)                           Writ_Dot ((x+i),y,Char_BackColor);
              Temp = Temp << 1;
               if((x+i) >= Dis_X_MAX)
                   {
                     Index += (X_Witch-i)>>3;
                     break;
                   }
                i++;
             }
          y ++;       } } 这是LCD中写字符函数,相信看过的人都知道,所以其中一些变量我就不解释了,Index变量保存的是针对当前字符字模数据的偏移量,红 {MOD}的这一条语句,我看了半天也不明白,请高手讲解一下,万分感谢   LCD.zip (12.19 KB, 下载次数: 10) 2012-2-29 14:30 上传 点击文件名下载附件     [ 本帖最后由 zzbaizhi 于 2012-2-29 14:30 编辑 ] 此帖出自小平头技术问答
0条回答

一周热门 更多>

相关问题

    相关文章