继上一篇调通串口后,这次我们开始加上IIC接口的0.96寸OLED显示。

准备工作
连接好环境,在e2studio上配置IIC相关信息,使用的是IIC0.我们把OLED的引脚截至IIC。由于我的OLED引脚跟接口有点出入,所以无法直接插入,通过杜邦线引入调换VCC和OLED。

IDE设置如下:

在原有串口的基础上增加IIC相关代码信息,部分代码如下:
在更改字库我这里给大伙推荐一个网站(软件)就是波特律动LED字模生成器,非常好用。网站为https://led.baud-dance.com/
生成字模模板后复制到ide里。

void hal_entry ( void )
{
/* TODO : add your own code here */
/* Initialize the I2C module */
UART9_Init();
LED_Init();
OLED_Init(); //初始化OLED
OLED_Clear() ;
OLED_ShowCHinese(0,0,9);//
OLED_ShowCHinese(16,0,10);//
OLED_ShowNum(0,2,2025,4,16);//显示ASCII字符的码值
OLED_ShowCHinese(32,2,2);//中文字->年
OLED_ShowNum(48,2,7,2,16);//显示ASCII字符的码值
OLED_ShowCHinese(64,2,3);//中文字->月
OLED_ShowNum(80,2,23,2,16);//显示ASCII字符的码值
OLED_ShowCHinese(96,2,4);//中文字->日
OLED_ShowString(0,4,"ZSX ",12);
OLED_ShowString(0,6,"RA6M4",16);
/* Wait for minimum time required between transfers. */
R_BSP_SoftwareDelay(2, BSP_DELAY_UNITS_SECONDS );
**printf** ("这是一个串口和OLED RA6M4\r\n");
while (1)
{
LED1_ON;
LED2_ON;// LED1亮
R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_SECONDS ); //延时1秒
LED1_OFF;
LED2_OFF;// LED1灭
R_BSP_SoftwareDelay(1, BSP_DELAY_UNITS_SECONDS ); //延时1秒
}
#if
BSP_TZ_SECURE_BUILD
/* Enter non-secure code */
R_BSP_NonSecureEnter();
#endif
}