stm32 2.4寸 TFT 触摸屏STM32驱动程序 2.4inch Arduino Display
今日为准备一项比赛,选购了一款2.4寸 8位并口通信的TFT触摸屏,此屏幕原本是专为arduino设计的,但同型号的屏幕都要四五十的价格,此款屏幕某宝仅需20出头,非常划算。欣喜之下果断购入。
买来是打算用STM32进行开发的,卖家也提供了STM32的测试例程,但是结果很令人痛疼,屏幕所有显示均是镜像的,这就非常尴尬了。使用arduino UNO测试,显示正常,但是用51 和32 测试,屏幕显示均是镜像的,非常令人抓狂。看了下卖家提供的数据手册近四百页,还是英文的,这也太不友好了。
本着钱也花了,不能浪费的精神,(主要是这款屏幕性价比太高了,8位并口通信,占用资源少,刷屏速度快)于是硬着头皮开始了漫长的修改屏幕驱动之路。
经过实验测试,屏幕整体的显示完全镜像,(正常的屏幕原点(0,0)在左上角扫描是从左往右,从上到下,使用51或32时原点在右上角,扫描方式为,从右到左,从上到下)心想,问题应该出在了屏幕初始化上,但历程中并无详细注释,无法得知是哪条指令控制屏幕显示方式,于是开始了苦逼的阅读数据手册之旅,经过一天一夜的苦战,并阅读对比arduino驱动源码,最后终于让我找到了问题所在,并且完美的修改了屏幕驱动。
现在可以实现正常显示,屏幕旋转显示。
目前只修改了STM32F103RCT6的驱动文件,32其他型号可参考本修改例程,主要参考主函数LCD初始化后添加的两句设置命令,和屏幕旋转函数。
后续可能会继续修改51版本的,如果有需求的话。
修改底层驱动花了不少时间,这里只贴CSDN下载链接,不直接放详细修改位置
修改不易,确保能用,主要是换点积分,不喜勿喷。
修改后的例程下载链接:
https://download.csdn.net/download/qq_43786163/15897108