接上篇:
【RA-Eco-RA0E1-32PIN-V1.0开发板试用】开发环境搭建及流水灯(附踩坑记录) - 瑞萨单片机论坛 - 电子威廉希尔官方网站
论坛 - 广受欢迎的专业电子论坛! (elecfans.com)
搞定基本的GPIO,就可以上TFT屏幕,本次基于软件SPI驱动。
首先介绍下本次使用的TFT屏幕。
主控是ILI9225,基于SPI协议。


核心驱动IO有,与RA开发板的接线方式为:
CS——》P208
RST——》P207
RS——》P201
SDA——》P109
CLK——》P110
对应5个IO口全部设置为输出。

TFT驱动文件主要为TFT.c和TFT.h
主函数在hal_entry.c中。
Lcd_Init();
delayms(1);
Lcd_Clear(black );
while(1)
{
Show_RGB(0,0,176,44,blue);
Show_RGB(0,44,176,88,green);
Show_RGB(0,88,176,132,magenta);
Show_RGB(0,132,176,176,red);
Show_RGB(0,176,176,220,yellow);
Show_RGB(0,0,176,44,yellow);
Show_RGB(0,44,176,88,red);
Show_RGB(0,88,176,132,blue2);
Show_RGB(0,132,176,176,green);
Show_RGB(0,176,176,220,blue);
}
模拟SPI协议的接口定义在TFT.c中。

核心模拟SPI函数为以下:
voidSPIv_WriteData(unsignedchar Data)
{
unsignedchar i=0;
for(i=8;i>0;i--)
{
if(Data&0x80)
{SDA_1;}
else {SDA_0;}
CLK_0;
CLK_1;
Data<<=1;
}
}
一次性烧写演示成功!
下一节再学习硬件SPI驱动。