打印
[LKS32 软件]

知道怎么在OLED上绘制一个点吗

[复制链接]
150|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
dongnanxibei|  楼主 | 2023-4-23 09:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/*
x:0~127;y:0~31
*/

void setPixel(int x, int y)
{
        unsigned char page;
        unsigned char bits;
  page = y / 8;
  bits = y % 8;
        OLED_Set_Pos(x,page);
        OLED_WR_Byte(1<<bits,OLED_DATA);       
}
是不是很奈斯,刚研究出来的。

使用特权

评论回复
沙发
dongnanxibei|  楼主 | 2023-4-23 09:52 | 只看该作者
之前都是只能通过页绘图,现在可以通过点了。

使用特权

评论回复
板凳
dongnanxibei|  楼主 | 2023-4-23 09:53 | 只看该作者
如果内存够大,建立缓存空间就可以通过点绘制图像了,目前只能一个点一个点的来,后面的点还不能跟前面的点在同一个页面内。

使用特权

评论回复
地板
wahahaheihei| | 2023-4-23 14:13 | 只看该作者
噢,你这也就只能每次一个页里写一个点而已。

使用特权

评论回复
5
sheflynn| | 2023-5-7 17:03 | 只看该作者
首先需要设置控制字节,用于指定绘制模式、坐标系、颜色等信息。
然后需要设置要绘制的像素点的坐标,即行列坐标或XY坐标。
最后将像素点的颜色信息写入到对应的显存地址中。

使用特权

评论回复
6
mikewalpole| | 2023-5-7 17:18 | 只看该作者
需要通过对OLED的驱动芯片进行命令传输和数据传输。

使用特权

评论回复
7
wangdezhi| | 2023-5-7 17:29 | 只看该作者
oled显示屏怎么显示32x32点阵的汉字?

使用特权

评论回复
8
mmbs| | 2023-5-7 17:59 | 只看该作者
// 绘制一个点
void drawPixel(int x, int y, uint8_t color) {
    if ((x < 0) || (x >= SSD1306_WIDTH) || (y < 0) || (y >= SSD1306_HEIGHT))
        return;   // 检查坐标是否越界

    ssd1306_drawPixel(x, y, color);  // 在(x,y)位置绘制颜色为color的像素点
}

使用特权

评论回复
9
averyleigh| | 2023-5-7 18:30 | 只看该作者
需要计算出该像素点的显存地址,然后将颜色信息写入到该地址中即可。

使用特权

评论回复
10
alvpeg| | 2023-5-7 18:47 | 只看该作者
如何在OLED屏上显示文字或图像并可通过按键改变

使用特权

评论回复
11
kkzz| | 2023-5-7 19:46 | 只看该作者
首先建个显存数组,将要显示的数据写入显存里,再将整个显存通过显示图片的方式写入OLED的RAM里显示就OK

使用特权

评论回复
12
deliahouse887| | 2023-5-7 21:04 | 只看该作者
具体实现方式可能会因OLED驱动芯片型号和使用的驱动库而有所不同

使用特权

评论回复
13
lzbf| | 2023-5-7 21:17 | 只看该作者
oled数字是占多少像素点              

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

187

主题

3489

帖子

16

粉丝