1506|2

1513

帖子

1

TA的资源

五彩晶圆(初级)

楼主
 

[N32WB031_STB开发板测评]+OLED屏显示驱动 [复制链接]

本帖最后由 jinglixixi 于 2023-5-6 09:30 编辑

N32WB031开发板是一款近于最小系统型的开发板,为它配置一个小巧的显示屏可以更好地与其体型相匹配。这里所驱动的是一款I2C接口的准双色OLED显示屏,其特点是占用引脚资源少,显示信息量也相等比较多,其显示分辨率为64*128像素点,其显示效果如下图所示。

OLED屏与开发板的连接关系为:

SCL---PB4

SDA---PB5

以GPIO口输出高低电平的语句定义为:

#define SCL_high   GPIO_SetBits(GPIOB, GPIO_PIN_4)

#define SCL_low    GPIO_ResetBits(GPIOB, GPIO_PIN_4)

#define SDA_high   GPIO_SetBits(GPIOB, GPIO_PIN_5)

#define SDA_low    GPIO_ResetBits(GPIOB, GPIO_PIN_5)

使用GPIO口模拟I2C方式启动和停止信号的函数为:

void IIC_Start()
{
   SCL_high;
   SDA_high;
   SDA_low;
   SCL_low;
}

void IIC_Stop()
{
   SCL_low;
   SDA_low;
   SCL_high;
   SDA_high;
}

 实现应答等待的函数是:

void IIC_Wait_Ack()
{
    SCL_high;
    SCL_low;
}

模拟I2C方式发送字节数据的函数内容是:

void Write_IIC_Byte(unsigned char IIC_Byte)
{
    unsigned char i;
    unsigned char m,da;
    da=IIC_Byte;
    SCL_low;
    for(i=0;i<8;i++)
    {
        m=da;
        m=m&0x80;
        if(m==0x80)
        {
            SDA_high;
        }
        else  SDA_low;
        da=da<<1;
        SCL_high;
        SCL_low;
     }
}

实现指令和数据发送函数是:

void Write_IIC_Command(unsigned char IIC_Command)
{
   IIC_Start();
   Write_IIC_Byte(0x78);
   IIC_Wait_Ack();
   Write_IIC_Byte(0x00);
   IIC_Wait_Ack();
   Write_IIC_Byte(IIC_Command);
   IIC_Wait_Ack();
   IIC_Stop();
}

void Write_IIC_Data(unsigned char IIC_Data)
{
   IIC_Start();
   Write_IIC_Byte(0x78);
   IIC_Wait_Ack();
   Write_IIC_Byte(0x40);
   IIC_Wait_Ack();
   Write_IIC_Byte(IIC_Data);
   IIC_Wait_Ack();
   IIC_Stop();
}

void OLED_WR_Byte(unsigned dat,unsigned cmd)
{
   if(cmd)
   {
        Write_IIC_Data(dat);
   }
   else
   {
        Write_IIC_Command(dat);
   }
}

实现图示效果的主程序为:

int main(void)
{
    OLED_gpio();
	OLED_Init();
    OLED_Clear();
    OLED_ShowString(20,0,"N32WB031",16);
    OLED_ShowString(20,4,"jinglixixi",16);
    while(1);
}

这样就完成了OLED屏的显示驱动,后面再有显示的任务就可以交它来完成了。

此帖出自RF/无线论坛

最新回复

这显示屏挺好的,有没有试验一下硬件I2C呀。  详情 回复 发表于 2023-5-6 17:54
点赞 关注
 

回复
举报

6960

帖子

11

TA的资源

版主

沙发
 
这显示屏挺好的,有没有试验一下硬件I2C呀。
此帖出自RF/无线论坛

点评

尚且没有!  详情 回复 发表于 2023-5-6 21:15
 
 

回复

1513

帖子

1

TA的资源

五彩晶圆(初级)

板凳
 
lugl4313820 发表于 2023-5-6 17:54 这显示屏挺好的,有没有试验一下硬件I2C呀。

尚且没有!

此帖出自RF/无线论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
快速回复 返回顶部 返回列表