改变12864屏幕点亮一个字节的顺序,但是没有成功,请大神来看看
时间:10-02
整理:3721RD
点击:
这是原程序,是dat的高位与0x80去与运算,然后不断左移得到dat的八位,点亮8个像素块。
for(i=0;i<8;i++)
{
OLED_SCLK_Clr();
if(dat&0X80)
OLED_SDIN_Set();
else
OLED_SDIN_Clr();
OLED_SCLK_Set();
dat<<=1;
}
我想修改字节八位的写入顺序,下面是我修改的程序,dat的低位与0x80去与运算,然后不断右移,但是经尝试,屏幕什么都不显示,麻烦大神们解答下这个问题!谢谢!
for(i=0;i<8;i++)
{
OLED_SCLK_Clr();
if(dat&0X01)
OLED_SDIN_Set();
else
OLED_SDIN_Clr();
OLED_SCLK_Set();
dat>>=1;
}
for(i=0;i<8;i++)
{
OLED_SCLK_Clr();
if(dat&0X80)
OLED_SDIN_Set();
else
OLED_SDIN_Clr();
OLED_SCLK_Set();
dat<<=1;
}
我想修改字节八位的写入顺序,下面是我修改的程序,dat的低位与0x80去与运算,然后不断右移,但是经尝试,屏幕什么都不显示,麻烦大神们解答下这个问题!谢谢!
for(i=0;i<8;i++)
{
OLED_SCLK_Clr();
if(dat&0X01)
OLED_SDIN_Set();
else
OLED_SDIN_Clr();
OLED_SCLK_Set();
dat>>=1;
}
你得改写数据时的,但是写命令时是绝对不能改的,写数据和写命令一般都是同一个函数,你要分开
看起来应该是没什么问题,如果只是修改这部分导致不显示的话,理论上应该是不会出现的。
上面写错了 是dat的低位与0x01去与运算,然后不断右移
谢谢你,困扰了我几天,我现在懂了!