【0.96寸OLED图片的显示】

0.96寸OLED图片的显示(对上一篇文章的补充)

1、在oled.c中加入图片显示函数(128X64的)
//显示128x64 BMP图片
void OLED_Draw12864BMP(uint8_t num)//其中的变量为第几张图片
{
    uint16_t j=0;
    uint8_t x,y;
    for(y=0; y<8; y++)
    {
        OLED_Set_Pos(0,y);
        for(x=0; x<128; x++)
        {
#if DISPLAY_MODE
            OLED_WR_DATA(BMP[num-1][y]);
#else
            OLED_WR_DATA(BMP[num-1][j++]);
#endif
        }
    }
}

然后再oled.h中声明:void OLED_Draw12864BMP(uint8_t num);

2、在取字模软件中取字模

(1)、选择图形模式
在这里插入图片描述
(2)、设置为128*64
在这里插入图片描述
然后就可以画出自己想要的图案了
在这里插入图片描述
在生成字模后将字模复制写到oledfont.h中:

uint8_t BMP[][1024] = {
	{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0xC0,0xC0,0xC0,0xC0,
		0xC0,0xE0,0xE0,0xF0,0xF0,0xF0,0xE0,0xE0,0xF0,0xF0,0xF0,0xE0,0xC0,0xE0,0xE0,0xE0,
		0xC0,0xC0,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x80,0x80,0xFC,0xF8,0xFC,0x7F,0x3F,0x1F,0x0F,0x07,0x07,0x03,0x03,0x03,
		0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x03,0x03,
		0x03,0x07,0x0F,0x0F,0x1F,0x3F,0xFE,0xFC,0xF8,0xF8,0x70,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0xB8,0xFF,0xFF,0xFF,0xFF,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x03,0xFF,0xFF,0x30,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x3B,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x7E,0xFE,0xFC,0xF8,0xF8,0xF0,
		0xF0,0xE0,0x60,0x60,0xE7,0xEF,0xEF,0xEF,0xE2,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0x60,
		0x60,0x67,0x77,0x7F,0x37,0xB8,0x9C,0xDF,0xE7,0xE3,0x60,0x60,0x70,0x70,0x70,0x30,
		0x30,0x70,0x70,0x70,0x60,0x60,0xE0,0xE0,0xC0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x81,
		0x81,0xC0,0xE0,0x60,0x70,0x30,0x30,0x30,0x33,0x3F,0x3E,0x3C,0xF0,0xE0,0x80,0x00,
		0x00,0x00,0xC0,0xFC,0xFE,0x0F,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x03,0x07,0xFE,0xFC,0xF0,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xE0,0xF0,
		0xF0,0xF0,0xFD,0x7F,0x7F,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x78,0xFF,
		0xFF,0x07,0x0B,0xCC,0xCC,0xCC,0xCE,0xCE,0xCE,0xCE,0xCE,0xCE,0xCF,0xC3,0x0F,0xFF,
		0xFC,0xDF,0x3F,0x73,0x71,0x60,0x60,0xE0,0xE0,0xE0,0xC0,0xC0,0xC0,0x00,0x00,0x00,
		0x00,0x00,0x00,0xC0,0xC0,0xC0,0xE0,0xE0,0x60,0x70,0x38,0x3C,0x1F,0x0F,0x01,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x0F,0x1E,
		0x3C,0x38,0x74,0x70,0x60,0x60,0x60,0x60,0xE0,0xE0,0xE0,0xE0,0xE0,0xE0,0xC0,0xC3,
		0xCF,0xFE,0xF8,0xF1,0xF1,0xE1,0xE1,0xE1,0xE1,0x61,0x60,0x60,0x70,0x70,0x7C,0x7F,
		0x3F,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0xA0,0xAF,0xAF,0xB3,0xF0,0x70,0x70,0x68,
		0x78,0x38,0xB8,0xAF,0xAF,0x9E,0xDC,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x02,0x02,0x02,0x02,0x02,0x02,0x03,0x03,
		0x03,0x03,0x03,0x03,0x03,0x03,0x03,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
		0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},
		/*这是第一幅图片,如果还需要图片直接在这后面加字模就行了*/
};

然后在main函数中

  /* USER CODE BEGIN 2 */
	OLED_Init();
	OLED_Clear();
	OLED_Draw12864BMP(2);
  /* USER CODE END 2 */

就可以显示图片了
不过我相信很多人跟我一样是个手残(这个我真的是),画图出来完全是四不像,还有一种办法就是直接导入图片生成字模,但是需要128*64的BMP图片。
改变图片分辨率的网站https://www.iloveimg.com/zh-cn
改变图片格式为BMP的网站https://convertio.co/zh/image-converter/
然后在取字模软件中导入即可
在这里插入图片描述
文件中的打开或者下面那个。
如果有错误欢迎指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值