求oled显示SPI四线显示汉字的程序

2019-07-20 08:26发布

弄了两天怎么改都改不正确,想找一个来参考参考,望各位大神给助攻!!!!!不胜感激!!!!!
 显示汉字,画点函数需要改吗 ?个人认为不改不知道对吗?
void OLED_DrawPoint(u8 x,u8 y,u8 t)
{
u8 pos,bx,temp=0;
if(x>127||y>63)return;//????·??§??.
pos=7-y/8;
bx=y%8;
temp=1<<(7-bx);
if(t)OLED_GRAM[x][pos]|=temp;
else OLED_GRAM[x][pos]&=~temp;    



字符显示部分  
void OLED_ShowChar(u8 x,u8 y,u8 chr,u8 size,u8 mode)
{          
u8 temp,t,t1;
u8 y0=y;
chr=chr-' ';//?????????ó????   
    for(t=0;t<size;t++)
    {   
if(size==12)temp=oled_asc2_1206[chr][t];  //?÷??1206×???
else temp=oled_asc2_1608[chr][t]; //?÷??1608×???                          
        for(t1=0;t1<8;t1++)
{
if(temp&0x80)OLED_DrawPoint(x,y,mode);        这一句的if里面为什么要和0x80按位与呢?
else OLED_DrawPoint(x,y,!mode);
temp<<=1;
y++;
if((y-y0)==size)
{
y=y0;
x++;
break;
}
}    
    }          
}





















友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。