发送字节

python
uint8_t commends = {0x00, 0x8d,0x14,0xaf,0xa5};
My_I2C_SendBytes = {I@C1,0x78,commands,5};
接收字节:

软I2C初始化代码:

OLED
屏幕初始化:
画笔和画刷:

cpp
//
// @画笔和画刷
//
// @设置画笔
void OLED_SetPen(OLED_TypeDef *OLED, uint8_t Pen_Color, uint8_t Width);
// @设置画刷
void OLED_SetBrush(OLED_TypeDef *OLED, uint8_t Brush_Color);
坐标系:
屏幕左上角(0,0),向右为x轴,向下为y轴
光标:
cpp
//
// @光标
//
// @设置光标位置
void OLED_SetCursor(OLED_TypeDef *OLED, int16_t X, int16_t Y);
// @设置光标的X坐标
void OLED_SetCursorX(OLED_TypeDef *OLED, int16_t X);
// @设置光标的Y坐标
void OLED_SetCursorY(OLED_TypeDef *OLED, int16_t Y);
// @移动光标
void OLED_MoveCursor(OLED_TypeDef *OLED, int16_t dX, int16_t dY);
// @沿X轴方向移动光标
void OLED_MoveCursorX(OLED_TypeDef *OLED, int16_t dX);
// @沿Y轴方向移动光标
void OLED_MoveCursorY(OLED_TypeDef *OLED, int16_t dY);
// @获取光标当前位置
void OLED_GetCursor(OLED_TypeDef *OLED, int16_t *pXOut, int16_t *pYOut);
// @获取光标X坐标
int16_t OLED_GetCursorX(OLED_TypeDef *OLED);
// @获取光标Y坐标
int16_t OLED_GetCursorY(OLED_TypeDef *OLED);
文字相关操作:

cpp
OLED_SetPen (&oled, PEN_COLOR_WHITE, 1); // 设置白画笔
OLED_SetBrush(&oled, PEN_COLOR_TRANSPARENT);//透明画刷
OLED_SetCursor(&oled, 24,50);// 设置光标
OLED_DrawString (&oled, "Hello world");
OLED_SendBuffer(&oled);
设置字体:

格式化打印当前日期:

设置文本区域:
实现文字自动换行效果

cpp
OLED_StartTextRegion (&oled, 0, 0, 128, 64);
OLED_DrawString (&oled, "There was a man named John. \r\n") ;
OLED_DrawString (&oled, "He was 70 years old. \r\n");
OLED_DrawString (&oled, "He really liked his name of John. \r\n");
OLED_DrawString (&oled, "But didn't like the age of 70. \r\n");
绘图相关操作:
画点:

画线:

绘制矩形和圆:

绘制位图:
位图转换地址:https://javl.github.io/image2cpp/

