标题: SC95F8616核心板驱动TFT2.4寸彩屏 [打印本页]
作者: jinglixixi 时间: 2020-7-2 10:03
标题: SC95F8616核心板驱动TFT2.4寸彩屏
TFT2.4寸彩屏是一款可以显示字符、图形及图片的显示屏,它与外部通讯是提供SPI接口。
SC95F8616核心板可以通过GPIO口来模拟SPI接口来驱动TFT彩屏,为此所定义相关引脚输出高低电平的语句如下:
#define LCD_LED_High() GPIO_WriteHigh(GPIO2,GPIO_PIN_7); // P27
#define LCD_SCK_High() GPIO_WriteHigh(GPIO2,GPIO_PIN_4); // P24
#define LCD_SCK_Low() GPIO_WriteLow(GPIO2,GPIO_PIN_4);
#define LCD_SDI_High() GPIO_WriteHigh(GPIO2,GPIO_PIN_5); // P25
#define LCD_SDI_Low() GPIO_WriteLow(GPIO2,GPIO_PIN_5);
#define LCD_DC_High() GPIO_WriteHigh(GPIO2,GPIO_PIN_2); //P22
#define LCD_DC_Low() GPIO_WriteLow(GPIO2,GPIO_PIN_2);
#define LCD_REST_High() GPIO_WriteHigh(GPIO2,GPIO_PIN_6); //P26
#define LCD_REST_Low() GPIO_WriteLow(GPIO2,GPIO_PIN_6);
#define LCD_CS_High() GPIO_WriteHigh(GPIO2,GPIO_PIN_3); //P23
#define LCD_CS_Low() GPIO_WriteLow(GPIO2,GPIO_PIN_3);
配置相关引脚为输出功能的函数为:
- void GPIO_Configuration(void)
- {
- GPIO_Init(GPIO2,GPIO_PIN_7,GPIO_MODE_OUT_PP);
- GPIO_Init(GPIO2,GPIO_PIN_6,GPIO_MODE_OUT_PP);
- GPIO_Init(GPIO2,GPIO_PIN_5,GPIO_MODE_OUT_PP);
- GPIO_Init(GPIO2,GPIO_PIN_4,GPIO_MODE_OUT_PP);
- GPIO_Init(GPIO2,GPIO_PIN_3,GPIO_MODE_OUT_PP);
- GPIO_Init(GPIO2,GPIO_PIN_2,GPIO_MODE_OUT_PP);
- LCD_LED_High();
- }
复制代码
TFT
彩屏的初始化函数为:- void Lcd_Init(void)
- {
- LCD_REST_Low();
- mdelay(20);
- LCD_REST_High();
- mdelay(20);
- LCD_CS_Low();
- LCD_WR_REG(0xCB);
- LCD_WR_DATA8(0x39);
- LCD_WR_DATA8(0x2C);
- LCD_WR_DATA8(0x00);
- LCD_WR_DATA8(0x34);
- LCD_WR_DATA8(0x02);
- LCD_WR_REG(0xCF);
- LCD_WR_DATA8(0x00);
- LCD_WR_DATA8(0XC1);
- LCD_WR_DATA8(0X30);
- LCD_WR_REG(0xE8);
- LCD_WR_DATA8(0x85);
- LCD_WR_DATA8(0x00);
- LCD_WR_DATA8(0x78);
- LCD_WR_REG(0xEA);
- LCD_WR_DATA8(0x00);
- LCD_WR_DATA8(0x00);
- LCD_WR_REG(0xED);
- LCD_WR_DATA8(0x64);
- LCD_WR_DATA8(0x03);
- LCD_WR_DATA8(0X12);
- LCD_WR_DATA8(0X81);
- LCD_WR_REG(0xF7);
- LCD_WR_DATA8(0x20);
- LCD_WR_REG(0xC0); //Power control
- LCD_WR_DATA8(0x23); //VRH[5:0]
- LCD_WR_REG(0xC1); //Power control
- LCD_WR_DATA8(0x10); //SAP[2:0];BT[3:0]
- LCD_WR_REG(0xC5); //VCM control
- LCD_WR_DATA8(0x3e);
- LCD_WR_DATA8(0x28);
- LCD_WR_REG(0xC7); // VCM control2
- LCD_WR_DATA8(0x86); // --
- LCD_WR_REG(0x36); // Memory Access Control
- LCD_WR_DATA8(0x48); // C8
- LCD_WR_REG(0x3A);
- LCD_WR_DATA8(0x55);
- LCD_WR_REG(0xB1);
- LCD_WR_DATA8(0x00);
- LCD_WR_DATA8(0x18);
- LCD_WR_REG(0xB6); // Display Function Control
- LCD_WR_DATA8(0x08);
- LCD_WR_DATA8(0x82);
- LCD_WR_DATA8(0x27);
- LCD_WR_REG(0xF2); // 3Gamma Function Disable
- LCD_WR_DATA8(0x00);
- LCD_WR_REG(0x26); // Gamma curve selected
- LCD_WR_DATA8(0x01);
- LCD_WR_REG(0xE0); // Set Gamma
- LCD_WR_DATA8(0x0F);
- LCD_WR_DATA8(0x31);
- LCD_WR_DATA8(0x2B);
- LCD_WR_DATA8(0x0C);
- LCD_WR_DATA8(0x0E);
- LCD_WR_DATA8(0x08);
- LCD_WR_DATA8(0x4E);
- LCD_WR_DATA8(0xF1);
- LCD_WR_DATA8(0x37);
- LCD_WR_DATA8(0x07);
- LCD_WR_DATA8(0x10);
- LCD_WR_DATA8(0x03);
- LCD_WR_DATA8(0x0E);
- LCD_WR_DATA8(0x09);
- LCD_WR_DATA8(0x00);
- LCD_WR_REG(0XE1); //Set Gamma
- LCD_WR_DATA8(0x00);
- LCD_WR_DATA8(0x0E);
- LCD_WR_DATA8(0x14);
- LCD_WR_DATA8(0x03);
- LCD_WR_DATA8(0x11);
- LCD_WR_DATA8(0x07);
- LCD_WR_DATA8(0x31);
- LCD_WR_DATA8(0xC1);
- LCD_WR_DATA8(0x48);
- LCD_WR_DATA8(0x08);
- LCD_WR_DATA8(0x0F);
- LCD_WR_DATA8(0x0C);
- LCD_WR_DATA8(0x31);
- LCD_WR_DATA8(0x36);
- LCD_WR_DATA8(0x0F);
- LCD_WR_REG(0x11); //Exit Sleep
- mdelay(120);
- LCD_WR_REG(0x29); //Display on
- LCD_WR_REG(0x2c);
- }
复制代码
实现色彩擦除屏幕的函数为:- void LCD_Clear(uint16_t Color)
- {
- char VH,VL;
- uint16_t i,j;
- VH=Color>>8;
- VL=Color;
- Address_set(0,0,LCD_W-1,LCD_H-1);
- for(i=0;i<LCD_W;i++)
- {
- for (j=0;j<LCD_H;j++)
- {
- LCD_WR_DATA8(VH);
- LCD_WR_DATA8(VL);
- }
- }
- }
复制代码
实现显示效果的函数为:- void xianshi()
- {
- LCD_Clear(RED);
- BACK_COLOR=RED;
- POINT_COLOR=WHITE;
- LCD_ShowString(20,80,160,16,16,"SC95F8616 TEST");
- LCD_ShowString(20,120,200,16,16,"2.4 SPI_TFT 240*320");
- LCD_ShowString(20,240,160,16,16,"jinglxixi ");
- LCD_ShowString(20,280,200,16,16,"2020.6.22 ");
- }
复制代码
运行的主程序为:- void main(void)
- {
- mdelay(200);
- GPIO_Configuration();
- Lcd_Init();
- LCD_Clear(RED);
- xianshi();
- while(1);
- }
复制代码
TFT2.4彩屏显示效果
作者: 51hei团团 时间: 2020-7-2 12:50
好东东 楼主能分享一下源码工程包吗?
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |