本帖最后由 lcdvision 于 2024-7-12 16:02 編輯
文章導引:
(1)
STC8H8K64U搭配RA8889如何控制TFT彩屏(附SPI4源碼)
(2)
51單片機(STC8H8K64U)加上RA8889可以點高分辨率TFT彩屏(附I2C源碼下載)
(3)
51單片機(STC8H8K64U/STC8051U34K64)_RA8889_8080參考代碼(v1.3)
單片機實際不限,這里采用的STC最新、主推的型號,比如STC8H8K64U、STC8051U34K64進行實驗測試,您可以換用不同型號。目前測試這兩個系列,顯示速度均相當不錯,軟件設計也是極為簡單。各篇文章下方均提供源碼供參考下載。
本例提供并口SPI-4通信代碼,下方簡單做一下介紹。
硬件:STC8051U34K64/STC8H8K64U + RA8889開發板(硬件跳線變更為SPI-4模式,PS=101,R143,R141短接,R142不接)
STC8051U34K64是STC最新推出來的單片機,主要用于替換傳統的8051單片機,與標準的8051指令集兼容,同時又是內建超高速32位8051內核(1T)。
其內部集成2+32KB的SRAM,以及64KB的大容量程序存儲空間,具有更寬的工作電壓:1.9~5.5V,更寬的工作溫度:-40℃~125℃。
RA8889是RAIO推出來的一款集成度很高的液晶控制芯片,最大可支持1366*2048分辨率大小的TFT彩屏。
其內建JPEG硬件解碼引擎,可以顯示JPG、AVI文件,解碼速度超快!
該芯片內建128Mbit的顯存,使得UI緩存相當充裕,軟件代碼使用簡單易用,開發會十分高效!
本程序結合該MCU進行驅動TFT彩屏的測試,同時提供移植好的代碼供大家使用!
實物連接圖:
RA8889開發板硬件跳線:
單片機-RA8889連接電路:
代碼說明:
(1)該代碼采用SPI-4,通信接口定義:
P2.7 SPI_SS RA8889片選 DB[4] (XnSCS)
P2.6 SPI_MISO 接RA8889的SDO DB[5] (XSSDO)
P2.5 SPI_MOSI 接RA8889的SDI DB[6] (XSSDI)
P2.4 SPI_SCK SPI時鐘 DB[7] (XSSCL)
P2.3 RA8889_RST RA8889硬件復位
(2)使用J-Link等工具將RA8889_Demo文件夾內的RA8889_Demo_F103_SPI_firmware.hex燒錄到RA8889開發板上,將F103與RA8889的接線設定為高阻態。
(3)核心文件存放在RA8889_01_Kernel文件夾下:
RA8889_51.c 為底層接口文件
RA8889_API_51.c 為用戶層接口文件
RA8889_MCU_IF.c 為單片機接口文件(通信接口定義及通信函數)
UserDef.h 為用戶自定義參數文件
delay.c 延遲函數,請根據單片機的主頻修正
(4)演示以下常用功能:
Introduction(); //文字介紹
Geometry_Demo(); //幾何繪圖演示
Show_JPG(); //調用FLASH的JPG圖片顯示
Show_BMP(); //調用FLASH的BMP圖片顯示
Fade_in_Fade_out(); //圖片淡入淡出演示
Show_AVI(); //調用FLASH的AVI影片播放
Show_PNG(); //調用FLASH的PNG圖片顯示
源碼下載:
視頻演示及代碼說明(STC8051U34K64和STC8H8K64U相近):
https://www.bilibili.com/video/BV18Wh4ecEyQ/?share_source=copy_web&vd_source=c0cd4c87f6dcc19bcebab2f4cf3c40db