更多操作
无编辑摘要 |
无编辑摘要 |
||
| 第2行: | 第2行: | ||
:尺寸设置如下图所示: | :尺寸设置如下图所示: | ||
:[[File:Module- | :[[File:Module-018.jpg|750px]] | ||
:取模数据如下(点击打开): | :取模数据如下(点击打开): | ||
::[https://www.lcdwiki.com/res/PublicFile/12x24_ASCII_data.txt '''12x24英文ASCII取模数据'''] | ::[https://www.lcdwiki.com/res/PublicFile/12x24_ASCII_data.txt '''12x24英文ASCII取模数据'''] | ||
2020年11月24日 (二) 14:13的最新版本
- 12x24英文字体取模说明
- 函数定义如下:
void LCD_Show_2412_char(u16 x,u16 y,u16 fc, u16 bc, u8 num,u8 mode)
{
u16 temp;
u8 pos,t;
u16 colortemp=POINT_COLOR;
num=num-' ';//得到偏移后的值
LCD_SetWindows(x,y,x+12-1,y+24-1);//设置单个文字显示窗口
if(!mode) //非叠加方式:字体带有背景色,显示时会将原来显示的内容覆盖掉
{
for(pos=0;pos<24;pos++)
{
temp = (asc2_2412[num][pos*2]<<8)|asc2_2412[num][pos*2+1];//调用2412字体,需要自己取模定义
for(t=0;t<12;t++)
{
if(temp&0x8000)
{
Lcd_WriteData_16Bit(fc);
}
else
{
Lcd_WriteData_16Bit(bc);
}
temp<<=1;
}
}
}
else//叠加方式:字体不带背景色,直接叠加显示到原来显示的内容上
{
for(pos=0;pos<24;pos++)
{
temp = (asc2_2412[num][pos*2]<<8)|asc2_2412[num][pos*2+1];//调用2412字体,需要自己取模定义
for(t=0;t<12;t++)
{
POINT_COLOR=fc;
if(temp&0x8000)
{
LCD_DrawPoint(x+t,y+pos);//画一个点
}
temp<<=1;
}
}
}
POINT_COLOR=colortemp;
LCD_SetWindows(0,0,lcddev.width-1,lcddev.height-1);//恢复窗口为全屏
}