请教OLED的程序

请教OLED的程序,第1张

取模是高位在前的形式 temp&0x80 用于判断当前temp 最高位是0还是1 是1就点亮 0就清除

正常显示 点亮OLED是蓝色点 清除是黑屏 反白显示就是反过来 点亮的部分清黑屏 不亮的部分显示蓝色

首先建个显存数组,将要显示的数据写入显存里,再将整个显存通过显示图片的方式写入5110的RAM里显示就OK啦!我的12864OLED也读不出内部的DDRAM,但我刚用这种方法给12864OLED打点了。

unsigned char xdata memory[128] //显存

 

 

//在随意坐标上画点

void OLED_Drawpoint(unsigned char x, unsigned char y,bit dat)

{//x,y,行列坐标;dat,1写,0擦除 

unsigned char rdata

rdata=memory[y/8*128+x] //先将对应的字节数据从显存数组读出来

if(dat==1){

memory[y/8*128+x]=rdata|(0x01<<(y%8))//将读出来的数据加上添加点的数据

}

else{

memory[y/8*128+x]=rdata-(0x01<<(y%8))

}

}

 

 

OLED_DrawBMP(0,0,128,8,memory)//(显示图片函数)将显存的数据导入显示屏


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12124610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存