1321|1

1022

帖子

0

资源

纯净的硅(中级)

[ESP32-Audio-Kit音频开发板测评] 彩色OLED屏的显示驱动 [复制链接]

ESP32-Audio-Kit开发板是一款主打音频处理的开发板,若再为它配上图片显示功能将会锦上添花。鉴于其提供的接口资源实在有限,见图1所示。

image-20211009225925-1.png 图1扩展接口

这里是以一个SPI接口的彩色OLED屏为显示器件,其各引脚的连接关系如下:

SCL  ---  23

SDA  ---  18

RST  ---  22

DC   ---  19

CS   ---  21

 

显示屏的引脚功能配置函数为:

void App_OledInit(void)
{
  pinMode(SCL,OUTPUT);
  pinMode(SDA,OUTPUT);
  pinMode(DC, OUTPUT);
  pinMode(RST,OUTPUT);
  pinMode(CS,OUTPUT);
}

相应的清屏函数为:

void LCD_Clear(u16 Color)
{
      u16 i,j;
      LCD_Address_Set(0,0,LCD_W-1,LCD_H-1);
      for(i=0;i<LCD_W;i++)
      {
            for (j=0;j<LCD_H;j++)
            {
                    LCD_WR_DATA(Color);
            }
      }
}

在配置显示字库的情况下,其字符显示函数为:

void LCD_ShowChar(u16 x,u16 y,u8 num,u16 color)
{
    u8 temp;
    u8 pos,t;
    u16 x0=x;
    num=num-' ';
    LCD_Address_Set(x,y,x+8-1,y+16-1);
    for(pos=0;pos<16;pos++)
    {
        temp=asc2_1608[(u16)num*16+pos];
        for(t=0;t<8;t++)
        {
            if(temp&0x01) LCD_WR_DATA(color);
            temp>>=1;
            x++;
        }
        x=x0;
        y++;
    }
}

在使用该函数的情况下,其显示效果如图2所示。

image-20211009225925-2.png 图2字符显示效果

在借助于文件系统及TF卡读写功能的情况下,可实现图片显示及数码相框功能,显示效果如图3所示。

显示指定目录下图片的功能函数为:

void listDir(fs::FS &fs, const char * dirname, uint8_t levels)
{
    Serial.printf("Listing directory: %s\n", dirname);
    File root = fs.open(dirname);
    if(!root){
        Serial.println("Failed to open directory");
        return;
    }
    if(!root.isDirectory()){
        Serial.println("Not a directory");
        return;
    }
    File file = root.openNextFile();
    while(file)
    {
            testpic(SD_MMC, file.name());
            // 按键控制
            while (digitalRead(key)==0)
            file = root.openNextFile();
   }
}

image-20211009225925-3.png 图3图片显示效果

此帖出自RF/无线论坛

回复

1592

帖子

0

资源

纯净的硅(高级)

数码相框功能已实现,还行


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

最新文章 更多>>
    关闭
    站长推荐上一条 1/10 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表