Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

8x16 English font modulo description

From LCD wiki
Revision as of 11:09, 14 March 2020 by Lin (talk | contribs) (Created page with "*'''8x16 English font modulo description''' :The size settings are as shown below: :750px :The modulo data is as follows (click to open): ::[http://www...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
  • 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          	   
}