1. 关于GD32F2系列的TFT-LCD驱动器
TFT(LCD)显示接口提供并行数字RGB(红色,绿色,蓝色)以及水平同步,垂直同步,像素时钟和时钟使能信号,这些信号直接输出到不同的LCD(液晶显示屏)和TFT面板(薄膜晶体管)的接口。
GD32E5内置TFT-LCD驱动器特性
24位并行像素输出;每像素8位(RGB888)
2个带有专用FIFO的显示层(64x32位)
查色表(CLUT)每层达到256种颜色(256x24位)
支持高达SVGA(800x600)的分辨率
可针对不同显示面板编程时序
可编程背景色
可编程HSync,VSync和数据使能信号的极性
每层多达8种输入颜色格式可供选择
每通道的低位采用伪随机抖动输出
使用alpha值(每像素或常数)在两层之间灵活的混合
色键(透明颜色)
可编程窗口位置和大小
图像分辨率达800x600
当一层使能ARGB格式时像素时钟和HCLK一样快
总体来讲,作为当前市场最高性能的基于Cortex-M3内核的MCU产品,GD32F2系列提供了卓越的闪存缓存和连接能力方案。GD32E5系列MCU以先进的缓存架构配置了两个独立的SRAM存储器,可支持不同的总线上的主设备同时访问。
首次配备的支持访问外部SDRAM内存的32位总线接口EXMC,能够以更高的性价比灵活方便的进行大容量数据缓冲扩展与高级界面控制。GD32E5还内置了TFTLCD控制器从而直接驱动液晶屏,最高可以支持SVGA7吋800x600像素的RGBTFT显示。另外还集成了8位至14位的Camera视频接口,便于连接数字摄像头并实现图像采集与传输。
驱动采用官方自带的历程进行:
1. LCD初始化:
/* configure the EXMC access mode */
exmc_lcd_init();
/* initialize the LCD */
lcd_init();
2. 显示字符串:
/* clear the LCD screen */
lcd_clear(LCD_COLOR_WHITE);
uint8_t len_s;
char *str;
uint16_t i;
char_format_struct char_format;
char error_string[]="Hello,EEWORLD!";
/* draw character on LCD screen */
len_s = sizeof(error_string)-1;
str = error_string;
/* configure char format */
char_format.char_color = LCD_COLOR_BLUE;
char_format.bk_color = LCD_COLOR_WHITE;
char_format.direction = CHAR_DIRECTION_VERTICAL;
char_format.font = CHAR_FONT_16_24;
for (i = 0; i < len_s; i++)
{
lcd_char_display((16*i), 10, *str++, char_format);
}
显示效果:
我今天也要写一篇,有屏幕的开发板就是好,都不用自己外接屏幕哈!
引用: caizhiwei 发表于 2021-1-15 21:25 共同学习进步
哈哈,我也写了一篇,不过没有改代码,讲解的例程。
谢谢分享,官方附带了LCD 跟ram的驱动示例代码,简直不要太方便。