打印
[PIC®/AVR®/dsPIC®产品]

【CuriosityNano测评报告】02.驱动TFT1.8彩色显示屏

[复制链接]
8865|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hu9jj|  楼主 | 2021-8-21 17:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
#申请原创#

    以前我的测试过程都是使用LCD单色液晶显示屏,本次则换了一块1.8寸的TFT彩色液晶显示屏,屏幕的外形如下:


    购买屏幕时商家提供了C51和SMT32的范例代码,需要移植到PIC18单片机中来。根据资料介绍,此屏采用SPI通讯协议,开始我就在MCC中配置了SPI,可在配置管脚时,我准备将SPI的MISO引脚改作彩屏的D/C引脚,即由原来的数据输入改为数据输出,却发现无法在MCC中修改,若在程序代码中修改的话又担心影响SPI通讯,于是只好放弃硬件SPI,改为代码模拟SPI操作。岂料取消硬件SPI后,项目编译出错,提示缺少SPI.h文件:


    反复通过MCC配置多次都没有解决问题,只好重新建立一个新项目来解决。测试了几天,在一次修改主频后,新项目也出现了相同的编译错误,难道又得新建项目不成!于是我尝试将一个SPI.h文件复制到项目中来“欺骗”编译器,竟然获得了成功,编译不再出错了。

    软件模拟SPI通讯,首先需要了解彩屏的SPI通讯参数,于是在相关的数据手册中找到时序图并进行分析,将时序要求标注好(见下图),准备调试时使用:


    花费了几天的时间将商家的示例移植好并编译通过后,发现之前的时序分析有点多余,出乎我的预料,显示屏居然正确显示出了字符,令我高兴万分,用不着拿出逻辑分析仪来抓取时序进行分析和调整了。


    不过其中的清屏函数有问题,屏幕背景成了大花脸,反复修改代码都没有解决问题,最后只好暂时用画线的代码来代替。


    下图为屏幕显示的特写:


    参照以前的实验,我添加了单双字节混合的字符串显示函数,得到比较理想的结果:


    我开始设置的时钟频率为16M,清屏和显示的过程其慢无比,于是乎只好将时钟频率配置为最高的64M,显示效果才稍有好转。但就是这一改动却引来了前面所述的编译出错,尚不清楚为何如此。
    目前已经完成字符显示,图形显示的代码尚未测试完成,清屏的代码也没有调试成功,有待于后续测试。
    下面是本次测试的项目文件压缩包:
Text2.X.rar (1.57 MB)

使用特权

评论回复
沙发
kkzz| | 2021-9-1 21:39 | 只看该作者
可以移植gui吗?      

使用特权

评论回复
板凳
hudi008| | 2021-9-1 21:40 | 只看该作者
spi的接口吧      

使用特权

评论回复
地板
lzmm| | 2021-9-1 21:40 | 只看该作者
这个的驱动芯片是什么呢   

使用特权

评论回复
5
minzisc| | 2021-9-1 21:40 | 只看该作者
是否支持触摸控制         

使用特权

评论回复
6
selongli| | 2021-9-1 21:40 | 只看该作者
这个是楼主自己的外设板子吗   

使用特权

评论回复
7
fentianyou| | 2021-9-1 21:41 | 只看该作者
硬件spi ?                  

使用特权

评论回复
8
xiaoyaodz| | 2021-9-1 21:41 | 只看该作者
以前用过oled做显示的。      

使用特权

评论回复
9
febgxu| | 2021-9-1 21:41 | 只看该作者
期待楼主移植一个ucgui到芯片上。   

使用特权

评论回复
10
sdlls| | 2021-9-1 21:41 | 只看该作者
可以画图吗?   

使用特权

评论回复
11
pixhw| | 2021-9-1 21:41 | 只看该作者
彩色TFT比较占用资源的。  

使用特权

评论回复
12
minzisc| | 2021-9-1 21:42 | 只看该作者
谢谢楼主。   

使用特权

评论回复
13
mintspring| | 2024-7-21 22:53 | 只看该作者
大佬有空试试MCC配置硬件的SPI啊。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:Microchip
简介:让我们来为您提供帮助。我们可提供各种资源来帮助您解决一切问题。是否需要与我们的客户支持团队联系?您可以通过电话、在线聊天功能或电子邮件与他们联系。

151

主题

1059

帖子

11

粉丝