目录
1.1、STC12C5A60S2+2.4寸TFT(ILI9341)
1.2、STM32F103C8T6+2.4寸TFT(ILI9341)
一、程序功能说明
单片机型号 | 测试条件 | 模块名称 | 代码功能 |
STC12C5A60S2 | 1.晶振11.0592M | 2.4寸TFT液晶屏 (ILI9341) |
|
STM32F103C8T6 |
| 2.4寸TFT液晶屏 (ILI9341) |
二、基本参数
1、模块参数
2、模块引脚说明
2.4寸TFT (ILI9341)引脚 | 引脚说明 |
VCC | VCC电源引脚,可接3.3V或5V |
GND | GND引脚接电源地,如果外接电源,一般必须共地 |
CS | 液晶屏片选信号,低电平使能 |
RESET | 液晶屏复位信号,低电平复位 |
DC/RS | 液晶屏寄存器/数据选择信号,高电平:寄存器,低电平:数据 |
SDA | SPI总线写数据信号 |
SCK | SPI总线时钟信号 |
LED | 背光控制,高电平点亮,如无需控制则接3.3V常亮 |
以下为触摸屏信号线接线 | |
T_CLK | 触摸SPI总线时钟信号 |
T_CS | 触摸屏片选信号,低电平使能 |
T_DIN | 触摸SPI总线输入 |
T_DO | 触摸SPI总线输出 |
T_IRQ | 触摸屏中断信号,检测到触摸时为低电平 |
三、通信协议说明
SPI
SPI写数据 A0(D/C)选择写数据或者写命令 高电平:寄存器,低电平:数据,CS位片选,低电平有效,详细可参考手册
写时序:
代码:
void SPIv_WriteData(uint8_t Data)
{
unsigned char i=0;
for(i=8;i>0;i--)
{
if(Data&0x80)
TFT_SDA_H; //输出数据
else TFT_SDA_L;
TFT_SCL_L;
TFT_SCL_H;
Data<<=1;
}
}
四、部分代码说明
1、接线说明
需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改
1.1、STC12C5A60S2+2.4寸TFT(ILI9341)
// TFTLCD部分引脚定义
sbit TFT_LED =P1^0;//接模块BL引脚,背光可以采用IO控制或者PWM控制,也可以直接接到高电平常亮BLE
sbit TFT_SCL =P1^1;//接模块CLK引脚,SCL,SCK
sbit TFT_SDA =P1^2;//接模块DIN/MOSI引脚,_SDA
sbit TFT_A0 =P1^3;//接模块D/C引脚,AO RS
sbit TFT_RESET =P1^4;//接模块RST引脚,_RES RESET
sbit TFT_CS =P1^5;//接模块CE引脚,_CS
// TFT触摸部分引脚定义
sbit TP_PEN_R =P2^0;//接模块BL引脚,背光可以采用IO控制或者PWM控制,也可直接接到高电平常亮BLE
sbit TP_DOUT_R =P2^1;//接模块CLK引脚,SCL,SCK
sbit TP_TDIN =P2^2;//接模块DIN/MOSI引脚,SDA
sbit TP_TCS =P2^3;//接模块D/C引脚,AO RS
sbit TP_TCLK =P2^4;//接模块RST引脚,RES RESET
1.2、STM32F103C8T6+2.4寸TFT(ILI9341)
// TFTLCD部分引脚定义
#define OLED_LED_APBxClock_CMD RCC_APB2PeriphClockCmd
#define OLED_LED_CLK RCC_APB2Periph_GPIOA
#define OLED_LED_PORT GPIOA
#define OLED_LED_PIN GPIO_Pin_0
//SCL//DO
#define OLED_SCL_APBxClock_CMD RCC_APB2PeriphClockCmd
#define OLED_SCL_CLK RCC_APB2Periph_GPIOA
#define OLED_SCL_PORT GPIOA
#define OLED_SCL_PIN GPIO_Pin_1
//SDA//DI
#define OLED_SDA_APBxClock_CMD RCC_APB2PeriphClockCmd
#define OLED_SDA_CLK RCC_APB2Periph_GPIOA
#define OLED_SDA_PORT GPIOA
#define OLED_SDA_PIN GPIO_Pin_2
//DC引脚 /A0
#define OLED_A0_APBxClock_CMD RCC_APB2PeriphClockCmd
#define OLED_A0_CLK RCC_APB2Periph_GPIOA
#define OLED_A0_PORT GPIOA
#define OLED_A0_PIN GPIO_Pin_3
//RES引脚
#define OLED_RES_APBxClock_CMD RCC_APB2PeriphClockCmd
#define OLED_RES_CLK RCC_APB2Periph_GPIOA
#define OLED_RES_PORT GPIOA
#define OLED_RES_PIN GPIO_Pin_4
//CS(NSS)引脚
#define OLED_CS_APBxClock_CMD RCC_APB2PeriphClockCmd
#define OLED_CS_CLK RCC_APB2Periph_GPIOA
#define OLED_CS_PORT GPIOA
#define OLED_CS_PIN GPIO_Pin_5
// TFT触摸部分引脚定义
//PEN引脚
#define TP_PEN_APBxClock_CMD RCC_APB2PeriphClockCmd
#define TP_PEN_CLK RCC_APB2Periph_GPIOB
#define TP_PEN_PORT GPIOB
#define TP_PEN_PIN GPIO_Pin_5
//DOUT//DO
#define TP_DOUT_APBxClock_CMD RCC_APB2PeriphClockCmd
#define TP_DOUT_CLK RCC_APB2Periph_GPIOB
#define TP_DOUT_PORT GPIOB
#define TP_DOUT_PIN GPIO_Pin_6
//TDIN//DI
#define TP_TDIN_APBxClock_CMD RCC_APB2PeriphClockCmd
#define TP_TDIN_CLK RCC_APB2Periph_GPIOB
#define TP_TDIN_PORT GPIOB
#define TP_TDIN_PIN GPIO_Pin_7
//TCS
#define TP_TCS_APBxClock_CMD RCC_APB2PeriphClockCmd
#define TP_TCS_CLK RCC_APB2Periph_GPIOB
#define TP_TCS_PORT GPIOB
#define TP_TCS_PIN GPIO_Pin_8
// TCLK
#define TP_TCLK_APBxClock_CMD RCC_APB2PeriphClockCmd
#define TP_TCLK_CLK RCC_APB2Periph_GPIOB
#define TP_TCLK_PORT GPIOB
#define TP_TCLK_PIN GPIO_Pin_9
五、相关资料链接
- STC89C52RC程序下载 直戳跳转(同STC12C5A60S2)
- STM32F103C8T6程序下载
- 串口下载 直戳跳转
- ST-LINK下载 直戳跳转
- J-LINK下载 直戳跳转
- DAP-LINK下载 直戳跳转
3.字符软件提取
4.图片提取
六、字符图片提取格式
文字格式:共阴——逐行式——逆向——C51——行前后缀括号去掉
七、图片提取
//水平扫描-16位真彩色-不包含图像头数据-高位在前
八、视频效果展示与程序资料获取
视频连接 直戳跳转
资料获取 ( 滑到最后添加群号看公告免费获取)
九、项目所有材料清单
STC12C5A60S2驱动方案 | 图片 | STM32F103C8T6驱动方案 | 图片 | 备注 K_A03_005 |
STC12C5A60S2系统板X1 | ![]() | STM32F103C8T6系统板X1 | ![]() | 1、STM32系统板两根Micro USB线一根用于J-LINK下载器,另一根用于给系统板供电 2、杜邦线建议不用太长的 |
2.4寸TFT (ILI9341)X1 | ![]() | 2.4寸TFT (ILI9341)X1 | ![]() | |
Micro USB线X1 | ![]() | Micro USB线X2 | ![]() | |
母母杜邦线X8根 | ![]() | 母母杜邦线X8根 | ![]() | |
J-LINK下载器 | ![]() |
十、注意事项
- VCC GND请勿接反,接反易烧
- 显示异常时,排除接线接触不良
- 同程序换其他同类屏幕后需要按单片机复位才会正常显示
- 下载后显示多出一些杂点的时候可以重新上电复位下
- 背光可IO口控制也可直接接3.3V
十一、接线表格
单片机型号 | 模块 | 对应引脚(上:模块引脚 下:单片机引脚) | |||||||
STM32F103 C8T6 | 2.4寸TFT (ILI9341) | VCC | GND | LED | SCL | SDA | A0 | RESET | CS |
3.3/5V | GND | PA0 | PA1 | PA2 | PA3 | PA4 | PA5 | ||
TP_IRQ | TP_DOUT | TP_TDIN | TP_TCS | TP_TCLK | |||||
PB5 | PB6 | PB7 | PB8 | PB9 | |||||
STC12C5A60S2 | 2.4寸TFT (ILI9341) | VCC | GND | LED | SCL | SDA | A0 | RESET | CS |
3.3/5V | GND | P1.0 | P1.1 | P1.2 | P1.3 | P1.4 | P1.5 | ||
TP_IRQ | TP_DOUT | TP_TDIN | TP_TCS | TP_TCLK | |||||
P2.0 | P2.1 | P2.2 | P2.3 | P2.4 |