叠加 和 非叠加 方式有何异同,我看程序觉得功能是一样的,只是写法不一样

2019-08-11 19:05发布

    u8 temp;
    u8 pos,t;
 u16 x0=x;  
 u16 colortemp=POINT_COLOR; 
if(x>MAX_CHAR_POSX||y>MAX_CHAR_POSY)return;    
 //设置窗口    
 num=num-' ';//得到偏移后的值
 if(!mode) //非叠加方式
 {
  for(pos=0;pos<size;pos++)
  {
   if(size==12)temp=asc2_1206[num][pos];//调用1206字体
   else temp=asc2_1608[num][pos];   //调用1608字体
   for(t=0;t<size/2;t++)
      {                
          if(temp&0x01)POINT_COLOR=colortemp; 
    else POINT_COLOR=BACK_COLOR;
    LCD_DrawPoint(x,y); 
    temp>>=1;
    x++;
      }
   x=x0;   
   y++;
  } 
 }else//叠加方式
 {
  for(pos=0;pos<size;pos++)
  {
   if(size==12)temp=asc2_1206[num][pos];//调用1206字体
   else temp=asc2_1608[num][pos];   //调用1608字体
   for(t=0;t<size/2;t++)
      {                
          if(temp&0x01)LCD_DrawPoint(x+t,y+pos);//画一个点    
          temp>>=1;
      }
  }
 }
 OINT_COLOR=colortemp;             
}  

叠加 和 非叠加 方式有何异同,我看程序觉得功能是一样的,只是写法不一样
看了几遍,确实看不出
请指出不同之处
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。