OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6572|回复: 2

OLED的画点函数

[复制链接]

10

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
57
金钱
57
注册时间
2016-1-6
在线时间
7 小时
发表于 2016-3-10 13:33:40 | 显示全部楼层 |阅读模式
1金钱
请问这个画点函数是什么意思啊,当t=0时相应的坐标不亮,怎么实现的

void OLED_DrawPoint(u8 x,u8 y,u8 t)    //OLED_DrawPoint(50,50,0)
{
    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;   //X确定列,pos确定页,temp确定行
    else OLED_GRAM[x][pos]&=~temp;     //假设temp=10000那么当t=0时 OLED_GRAM[]50[2]=011111   
                                  //这样的话就只有坐标为(50,50)那个点不亮,但是其他5个点亮了??


最佳答案

查看完整内容[请看2#楼]

要调用refresh函数才行。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2016-3-10 13:33:41 | 显示全部楼层
要调用refresh函数才行。
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
9
金钱
9
注册时间
2016-5-19
在线时间
0 小时
发表于 2016-5-19 19:22:20 | 显示全部楼层
正点原子 发表于 2016-3-10 13:33
要调用refresh函数才行。

这个函数是不是有点问题?还是我理解错了?
每页有8行,一共8页,随便取y=41的话,就是在第6页的第1行显示一个点,也就是往OLED_GRAM[x][5]写0x80,所以pos应该=5,temp=0x80才对啊?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 05:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表