[C] 纯文本查看 复制代码 static uint8_t framebuffer[273][60];
void LCD_setbackground(void)
{
uint16_t i=0, j=0;
/* SET BACKGROUND COLOR*/
for(i=0; i<32; i++)
{
for(j=0; j<60; j++)
framebuffer[i][j] = 0xff;
}
for(i=0; i<240; i++)
{
for(j=0; j<60; j++)
{
framebuffer[32+i][j] = 0x00;
}
}
ColorMode = RED_BLUE;
}
void LCD_setbackground_Blue(void)
{
uint16_t i=0, j=0;
/* SET BACKGROUND COLOR*/
for(i=0; i<272; i++)
{
for(j=0; j<60; j++)
framebuffer[i][j] = 0x00;
}
ColorMode = BLUE;
}
void LCD_pset(UG_S16 x,UG_S16 y,UG_COLOR c)
{
uint16_t n,m;
if(y>272 || x>480) return;
n = x/8;
m = x%8;
m = 7 - m;
if(ColorMode==RED_BLUE)
{
if(c==1)
{
if(y<32)
{
framebuffer[y][n] &= ~(1<<m);
}
else
{
framebuffer[y][n] |= 1<<m;
}
}
else
{
if(y<32)
{
framebuffer[y][n] |= 1<<m;
}
else
{
framebuffer[y][n] &= ~(1<<m);
}
}
}
else if(ColorMode==BLUE)
{
if(c==1)
{
framebuffer[y][n] |= 1<<m;
}
else
{
framebuffer[y][n] &= ~(1<<m);
}
}
}
#define WHITE_COLOR 0xFFFF
#define BLACK_COLOR 0x0000
#define BLUE_COLOR 0x001F
#define RED_COLOR 0xF800
#define GREEN_COLOR 0x07E0
#define YELLOW_COLOR 0xFFE0
大概代码片段如上 |