本帖最后由 dsoyy 于 2009-9-3 11:40 编辑
本人用一款TFT,显示汉字,贴一段小代码(很多形参和我实际应用相关):
void disword_sd(uint32 num,uint32 wide,uint32 startx,uint32 starty,INT8U *str,uint16 backcolor,uint16 discolor)
{
uint32 x,y,i=0,no;
uint8 middat,dat;
AMP506_WindowSet( startx,starty ,startx + wide ,starty + wide); //开辟点阵显示窗体大小
FD506_DisplayRAM_WriteEnable; //设置数据地址指针
no= num * 32; //一个字32个点阵
middat=str[no];
for(y=0; y<wide; y++)
{
for(x=0; x<wide; x++)
{
dat=middat&0x80;
if(dat==0)
TftSendDat(backcolor); //蓝色
else
TftSendDat(discolor); //WHITE
middat=middat<<1;
i++;
if(i==8)
{
i=0;
no++;
middat=str[no];
}
}
}
FD506_DisplayRAM_WriteDisable;//
}
如上代码可以显示 汉字 但是有底色,如蓝底白字。 |