一、屏幕初始化
//初始化屏幕
void OLED_GUIInit(void)
{
OLED_GPIOInit();
OLED_RES_Clr(); // Module reset
delay_ms(20); //At least 10ms delay
OLED_RES_Set();
delay_ms(20); //At least 10ms delay
Epaper_READBUSY();
OLED_WR_REG(0x12); //SWRESET
Epaper_READBUSY();
OLED_WR_REG(0x01); //Driver output control
OLED_WR_DATA8(0x27);
OLED_WR_DATA8(0x01);
OLED_WR_DATA8(0x01);
OLED_WR_REG(0x11); //data entry mode
OLED_WR_DATA8(0x01);
OLED_WR_REG(0x44); //set Ram-X address start/end position
OLED_WR_DATA8(0x00);
OLED_WR_DATA8(0x0F); //0x0F-->(15+1)*8=128
OLED_WR_REG(0x45); //set Ram-Y address start/end position
OLED_WR_DATA8(0x27); //0xF9-->(249+1)=250
OLED_WR_DATA8(0x01);
OLED_WR_DATA8(0x00);
OLED_WR_DATA8(0x00);
OLED_WR_REG(0x3C); //BorderWavefrom
OLED_WR_DATA8(0x05);
OLED_WR_REG(0x21); // Display update control
OLED_WR_DATA8(0x00);
OLED_WR_DATA8(0x80);
OLED_WR_REG(0x18); //Read built-in temperature sensor
OLED_WR_DATA8(0x80);
OLED_WR_REG(0x4E); // set RAM x address count to 0;
OLED_WR_DATA8(0x00);
OLED_WR_REG(0x4F); // set RAM y address count to 0X199;
OLED_WR_DATA8(0x27);
OLED_WR_DATA8(0x01);
Epaper_READBUSY();
}
二、全刷/快刷/局刷
中景园以及佳显的2.13寸水墨屏是一样的,都支持全刷,局刷,快刷三种刷新模式
void EPD_Update(void) //全刷
{
OLED_WR_REG(0x22);
OLED_WR_DATA8(0xF7);
OLED_WR_REG(0x20);
Epaper_READBUSY();
}
void EPD_Update_Fast(void) //快刷
{
OLED_WR_REG(0x22);
OLED_WR_DATA8(0xC7);
OLED_WR_REG(0x20);
Epaper_READBUSY();
}
void EPD_Update_Partial(void) //局刷
{
OLED_WR_REG(0x22);
OLED_WR_DATA8(0xFF);
OLED_WR_REG(0x20);
Epaper_READBUSY();
}
三、全刷
//全刷到显存
void OLED_Display(unsigned char *Image)
{
unsigned int Width, Height,i,j;
u32 k=0;
Width = 250;
Height = 16;
OLED_WR_REG(0x24);
for ( j = 0; j |