战舰 oled显示 部分程序段不理解

2019-10-14 23:51发布

假设 xy  [18][18]
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
穹顶之下
2019-10-15 07:11

//画点   x:0~127  y:0~63  t:1 填充 0,清空                          
void OLED_DrawPoint(u8 x,u8 y,u8 t)
{
        u8 pos,bx,temp=0;
        if(x>127||y>63) return; //超出范围
        pos=y/8;              //共8页(0~7),y/8指的要写的哪一页   7-y/8
        bx=y%8;                 //y%8指的要写的某一页的具体哪一位
        temp=1<<(bx);         //只对指定位写值                     1<<(7-bx)
        (t)>0?(OLED_GRAM[x][pos]|=temp)OLED_GRAM[x][pos]&=~temp);
}

一周热门 更多>