OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5277|回复: 3

TFTLCD例程中填充方式显示字符函数缺损的问题

[复制链接]

63

主题

305

帖子

1

精华

高级会员

Rank: 4

积分
853
金钱
853
注册时间
2012-8-3
在线时间
79 小时
发表于 2012-8-9 21:42:04 | 显示全部楼层 |阅读模式
原子老大,stm32不完全手册中,TFTLCD显示实验部分写明使用的字符显示函数是通过开辟液晶gram区域,但是在光盘中拷出来的TFT显示的例程中已经不采用开辟gram区域的方法,而是采用逐点写地址再画点的方法,包括在论坛中下载的ALIENTEK MiniSTM32开发板例程_20120719.rar文件里也是一样,我想是原子老大疏忽了,更新程序的时候忘了保留区域填充的函数,请老大重新上传该例程,以便与手册教程对上号,谢谢!以下是光盘里的例程片段
void LCD_ShowChar(u16 x,u16 y,u8 num,u8 size,u8 mode)
{  
#if USE_HORIZONTAL==1
#define MAX_CHAR_POSX 312
#define MAX_CHAR_POSY 232 
#else     
#define MAX_CHAR_POSX 232
#define MAX_CHAR_POSY 312
#endif 
    u8 temp;
    u8 pos,t;
u16 x0=x;
u16 colortemp=POINT_COLOR;      
    if(x>MAX_CHAR_POSX||y>MAX_CHAR_POSY)return;    
//设置窗口   
num=num-' ';//得到偏移后的值
if(!mode) //非叠加方式
{
for(pos=0;pos<size;pos++)
{
if(size==12)temp=asc2_1206[num][pos];//调用1206字体
else temp=asc2_1608[num][pos]; //调用1608字体
for(t=0;t<size/2;t++)
   {                 
       if(temp&0x01)POINT_COLOR=colortemp;
else POINT_COLOR=BACK_COLOR;
LCD_DrawPoint(x,y);
temp>>=1; 
x++;
   }
x=x0;
y++;
}
}else//叠加方式
{
for(pos=0;pos<size;pos++)
{
if(size==12)temp=asc2_1206[num][pos];//调用1206字体
else temp=asc2_1608[num][pos]; //调用1608字体
for(t=0;t<size/2;t++)
   {                 
       if(temp&0x01)LCD_DrawPoint(x+t,y+pos);//画一个点     
       temp>>=1; 
   }
}
}
POINT_COLOR=colortemp;        
}
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-8-9 23:17:42 | 显示全部楼层
回复【楼主位】EDA3rd:
---------------------------------
填充方式有限制.
比如我们现在的LCD驱动有很多型号,93XX,1289,45XX,15XX等等.这些在开窗的时候,不尽相同,处理起来麻烦,为了简化操作,我们改为了画点,这样只需要修改画点函数,做到画点兼容即可实现所有驱动IC通吃...从而提高代码兼容性.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

63

主题

305

帖子

1

精华

高级会员

Rank: 4

积分
853
金钱
853
注册时间
2012-8-3
在线时间
79 小时
 楼主| 发表于 2012-8-12 14:54:46 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
嗯,理解
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2019-5-31
在线时间
42 小时
发表于 2019-5-31 16:33:47 | 显示全部楼层
正点原子 发表于 2012-8-9 23:17
回复【楼主位】EDA3rd:
---------------------------------
填充方式有限制.
比如我们现在的LCD驱动有很多 ...

原子哥,我显示字符串想显示个48*24的数字,显示出来的数字感觉被拉长了,是怎么回事呀
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 11:46

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表