基于openwrt的SPI TFT触摸屏程序

屏幕为spi接口,9341的芯片,有点坑,ID都读不出来,据说读时序都是错的,更不用说读屏幕上的点了。图形叠加什么的不好做。

已实现JPG和BMP格式图片的解码及显示,GIF图片显示还有BUG没解决。

效果图

基于openwrt的SPI TFT触摸屏程序_第1张图片

基于openwrt的SPI TFT触摸屏程序_第2张图片

已实现触摸功能,widora的gpio基本上用完了。模拟SPI的速度上不来,示波器测出来时钟频率只有4.5MHz,有明显的刷屏痕迹。尝试了一下硬件SPI,速度可以提高到96MHz,但是spi驱动有个bug,一次传输不能超过36字节,这个注意一下。这个频率在国产示波器下已捕获不到时钟信号,刷速度大概测了一下,单色刷屏一秒大约有17帧,如果有DMA来传输,估计播放视频都没问题,然而坑比较大,等大佬填好再说。


显示屏接口接到MT7688的硬件SPI上面,触摸板接到普通IO,用IO模拟SPI通信。

以下是硬件连接示意图

基于openwrt的SPI TFT触摸屏程序_第3张图片

运行可执行文件之前,先把库文件libiconv.so.2拷贝到/usr/lib,把中文字库gbk12.fon,gbk16.fon,gbk24.fon,以及测试图片文件和可执行文件放在同一目录下。

附源码链接,爱折腾的一起交流交流

 https://github.com/MagicPrince666/spi-tft.git

你可能感兴趣的:(嵌入式,嵌入式,TFT)