原有程序上,可以显示16*16汉字和8*16数字字母.
想改成更大的数字字母.请问如何修改?
char code SHU_0[]={
0xFF,0xFF,0x7F,0x3F,0x9F,0xDF,0xDF,0x9F,0x3F,0x7F,0xFF,0xFF,0xFF,0x01,0x00,0xFE,0xFF,0xFF,0xFF,0xFF,0xFE,0x00,0x01,0xFF,
0xFF,0xFE,0xF8,0xF1,0xE7,0xEF,0xEF,0xE7,0xF1,0xF8,0xFE,0xFF};
//-- 文字: 0 ---- 宋体12; 此字体下对应的点阵为:宽x高=12*24
/*****************************************************************************
函数功能:指定位置显示数字24*24程序
入口参数:pag,col,hzk
出口参数:
*****************************************************************************/
void hz_disp24(unsigned char pag,unsigned char col, unsigned char code *hzk)
{
unsigned char j=0,i=0;
for(j=0;j<2;j++)
{
write_com(Page_Add+pag+j);
write_com(Col_Add+col);
for(i=0;i<24;i++)
write_data(hzk[24*j+i]);
}
}
/*****************************************************************************
函数功能:指定位置显示数字16*16程序
入口参数:pag,col,hzk
出口参数:
*****************************************************************************/
void hz_disp16(unsigned char pag,unsigned char col, unsigned char code *hzk)
{
unsigned char j=0,i=0;
for(j=0;j<2;j++)
{
write_com(Page_Add+pag+j);
write_com(Col_Add+col);
for(i=0;i<16;i++)
write_data(hzk[16*j+i]);
}
}
/*****************************************************************************
函数功能:指定位置显示数字8*16程序
入口参数:pag,col,hzk
出口参数:
*****************************************************************************/
void hz_disp8(unsigned char pag,unsigned char col, unsigned char code *hzk)
{
unsigned char j=0,i=0;
for(j=0;j<2;j++)
{
write_com(Page_Add+pag+j);
write_com(Col_Add+col);
for(i=0;i<8;i++)
write_data(hzk[8*j+i]);
}
}
void main(void)
{
Light=0; //开LCD背光
init_lcd();
Clr_Scr();
Mcs=1;Scs=0; //左、右都显示
while(1)
{
Mcs=1;Scs=0; //左显示
delay(2);
hz_disp24(0,0,SHU_0); //显示数字0,12*24
}
} |