OLED_WR_Byte(0xAF,OLED_CMD);//diaplay on} voidOLED_Display_Off(void) { OLED_WR_Byte(0X8D,OLED_CMD);//电荷泵设置OLED_WR_Byte(0X10,OLED_CMD);//00010000BIT2为0 OLED_WR_Byte(0XAE,OLED_CMD);//DISPLAY OFF } View Code 闪存更新函数 画点函数...
OLED_WR_Byte(0xDB,OLED_CMD); //设置 VCOMH 电压倍率 OLED_WR_Byte(0x30,OLED_CMD); //[6:4] 000,0.65*vcc;001,0.77*vcc;011,0.83*vcc; OLED_WR_Byte(0xA4,OLED_CMD); //全局显示开启;bit0:1,开启;0,关闭;(白屏/黑屏) OLED_WR_Byte(0xA6,OLED_CMD); //设置显示方式;bit0:1,反相显示;...
1.oled.h——对引脚进行定义,定义简单命令,方便调用; 2.oled.c——初始化GPIO口,引脚默认位置的确认,通过oled_wr_byte传入参数(驱动原理的写时序实现,通过这个函数传递参数),设置SSD1306的映射等参数; 3.写oled_draw_point——获取屏幕的点坐标,映射到页地址模式中...
OLED_WR_Byte(0xC0,OLED_CMD);//设置COM扫描方向;bit3:0,普通模式;1,重定义模式 COM[N-1]->COM0;N:驱动路数 OLED_WR_Byte(0xDA,OLED_CMD);//设置COM硬件引脚配置 OLED_WR_Byte(0x12,OLED_CMD);//[5:4]配置 OLED_WR_Byte(0x81,OLED_CMD);//对比度设置 OLED_WR_Byte(0xEF,OLED_CMD);//1...
然后我们需要修改我们的 OLED_WR_Byte 函数(命令发送函数),,将标准库函数 SPI_WriteByte() 修改为 我们刚写的函数 SPI1_ReadWriteByte() ,这样就配置好了我们的 SPI 发送命令 重写OLED 端口初始化函数 由于官方历程给的是基于标准库的函数,这里需要修改为 HAL 库中对应的函数,官方历程代码如图: ...
OLED_WR_Byte(0X10,OLED_CMD); //DCDC OFF OLED_WR_Byte(0XAE,OLED_CMD); //DISPLAY OFF } //清屏函数,清完屏,整个屏幕是黑色的!和没点亮一样!!! void OLED_Clear(void) { u8 i,n; for(i=0;i<8;i++)for(n=0;n<128;n++)OLED_GRAM[n][i]=0X00; ...
OLED_Set_Pos(31,0);OLED_WR_Byte(0xff,OLED_DATA); 点亮第一页的第32列,如下图: 3、显示字符函数 OLED_ShowChar() voidOLED_ShowChar(u8x,u8y,u8chr,u8Char_Size){u8i=0;if(x>Max_Column-1){x=0;y=y+2;}if(Char_Size==16){OLED_Set_Pos(x,y);for(i=0;i<8;i++){OLED_WR_Byte(...
OLED_I2C_WriteByte(0x40); OLED_I2C_Ack(); OLED_I2C_WriteByte(Data); OLED_I2C_Ack(); OLED_I2C_Stop(); } 这样,OLED 屏幕模块的通信协议就配置好了。 接着我们需要配置 OLED 屏幕模块的初始化,从上文的 OLED 模块学习中我们得知,OLED 屏幕模块需要给 SSD1306 驱动模块配置完才能使用,配置代码如下:...
Byte(0X10,OLED_CMD); //DCDC OFFOLED_WR_Byte(0XAE,OLED_CMD); //DISPLAY OFF}//清屏函数...