- 8x16 English font modulo description
- The size settings are as shown below:
- The modulo data is as follows (click to open):
- 8x16 English ASCII modulo data
- The function is defined as follows:
void LCD_Show_1608_char(u16 x,u16 y,u16 fc, u16 bc, u8 num,u8 mode)
{
u8 temp;
u8 pos,t;
u16 colortemp=POINT_COLOR;
num=num-' ';//Get the offset value
LCD_SetWindows(x,y,x+8-1,y+16-1);//Set a single text display window
if(!mode) //Non-overlay mode: The font has a background color, which will overwrite the original display
{
for(pos=0;pos<16;pos++)
{
temp = asc2_1608[num][pos];//Call 1608 font, you need to take the model definition
for(t=0;t<8;t++)
{
if(temp&0x80)
{
Lcd_WriteData_16Bit(fc);
}
else
{
Lcd_WriteData_16Bit(bc);
}
temp<<=1;
}
}
}
else//Overlay mode: the font does not have a background color, and is directly superimposed and displayed on the original display content
{
for(pos=0;pos<16;pos++)
{
temp = asc2_1608[num][pos];//Call 1608 font, you need to take the model definition
for(t=0;t<8;t++)
{
POINT_COLOR=fc;
if(temp&0x80)
{
LCD_DrawPoint(x+t,y+pos);//Draw a point
}
temp<<=1;
}
}
}
POINT_COLOR=colortemp;
LCD_SetWindows(0,0,lcddev.width-1,lcddev.height-1);//Restore window to full screen
}