搜索
bottom↓
回复: 14

TFT屏驱动问题

[复制链接]

出0入0汤圆

发表于 2020-4-7 09:41:21 | 显示全部楼层 |阅读模式
请教下论坛里的大神,我把1.29寸128*96分辨率的oled屏换成1.3寸240*240的TFT屏,现在驱动成功,总算能显示东西了,但我发现字体变小了,原来12号宋体的字变小了很多,现在用24号宋体才能勉强达到原来的效果。我想应该是分辨率变化的问题,原来的单个像素点很大,现在像素点很小,会把字体变小,但我改了很多次都不行,还请大神们指教下。如下图所示

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2020-4-7 09:46:35 | 显示全部楼层
我贴下代码,单片机是PIC18F87K22,大神帮我分析下。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入16汤圆

发表于 2020-4-7 09:57:46 来自手机 | 显示全部楼层
正常啊,就比如你电脑用高分屏的话,显示的图标也很小

出0入0汤圆

 楼主| 发表于 2020-4-7 10:20:22 | 显示全部楼层
howmoney 发表于 2020-4-7 09:57
正常啊,就比如你电脑用高分屏的话,显示的图标也很小

有没有办法把字体改大,现在字体太小,看不清楚

出0入0汤圆

 楼主| 发表于 2020-4-7 10:21:59 | 显示全部楼层
gswubo 发表于 2020-4-7 10:20
有没有办法把字体改大,现在字体太小,看不清楚

用24号字体,我所有界面都要重新变,并且存储空间也不够

出0入0汤圆

发表于 2020-4-7 10:27:38 | 显示全部楼层
内存不够加片flash 做字库吧,240*240刷屏也要慢很多了。

出0入0汤圆

发表于 2020-4-7 10:52:51 | 显示全部楼层
本帖最后由 lcw_swust 于 2020-4-7 11:07 编辑

简单的说其实就是要把图像放大?
自己写个函数处理一下吧.

10
00
变成
1100
1100
0000
0000
就是复制像素点,一个点变成四个点.
我乱写了个函数,试一试:
//8*8图像变16*16
void fd(U8 *src, U8 *dist)
{
        U16 x,y;
        for(y=0;y<16;y++)
        {
                for(x=0;x<16;x++)
                {
                        dist[y*16+x]=src[y*4+x/2];
                }
        }
}

出0入0汤圆

 楼主| 发表于 2020-4-7 11:08:35 | 显示全部楼层
jumpjet 发表于 2020-4-7 10:27
内存不够加片flash 做字库吧,240*240刷屏也要慢很多了。

也就是说除了增大字号的方法,没有其它办法增大字体了。改驱动也不行吗?优先考虑软件的办法

出0入0汤圆

 楼主| 发表于 2020-4-7 11:12:49 | 显示全部楼层
lcw_swust 发表于 2020-4-7 10:52
简单的说其实就是要把图像放大?
自己写个函数处理一下吧.

非常感谢,试试

出0入0汤圆

发表于 2020-4-7 11:58:54 | 显示全部楼层
其实7楼道方法简单有效,改动量最少,
就是稍稍有那么一点点粗糙,
显示数字、字母比原来的区别不大,仍是强烈推荐。

出0入8汤圆

发表于 2020-4-7 12:02:56 | 显示全部楼层
gswubo 发表于 2020-4-7 11:12
非常感谢,试试

还是要换字库,这种放大,不太能保证适应全部。

出50入0汤圆

发表于 2020-4-7 12:15:26 | 显示全部楼层
7楼得做法最简单,1个点写到2*2的4个点,就是有锯齿,不过屏幕小无所谓,效果差不多的。

出0入0汤圆

发表于 2020-4-7 13:09:34 | 显示全部楼层
本帖最后由 lcw_swust 于 2020-4-7 13:13 编辑
gswubo 发表于 2020-4-7 11:12
非常感谢,试试


不好意思,好像有BUG:
src[y*4+x/2]应改为src[y/2*8+x/2]

先前以为 y/2*8 就等于 y*4 ,越想越觉得不对,现在才反应过来.
当然,程序较粗糙,效率低,实际上还可以优化的,这里的程序只是一个思路.
比如:y的乘法处理可放在x循环之前;
比如使用二维数组会更方便,由于两行内容相同,第二行可直接复制第一行.

出0入0汤圆

 楼主| 发表于 2020-4-7 14:00:40 | 显示全部楼层
lcw_swust 发表于 2020-4-7 13:09
不好意思,好像有BUG:
src[y*4+x/2]应改为src[y/2*8+x/2]

谢谢,我这边试试

出140入158汤圆

发表于 2020-4-7 17:23:04 | 显示全部楼层
原来绘一点,现在绘2x2点就可以嘛,而且您原来128*2=256,您现在屏幕240,也差不多了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 17:38

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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