LCD-TFT(液晶顯示器,薄膜晶體管)顯示器控制器提供并行數字 RGB (紅色、綠色、藍色)以及水平同步、垂直同步、像素時鐘和數據使能信號,這些信號直接輸出到不同 LCD和 TFT面板的接口。
主要功能:
24 位 RGB并行像素輸出;每像素 8 位 (RGB888)。
2個帶有專用 FIFO的顯示層(FIFO 深度 64x32位)。
查色表 (CLUT) ,每層高達 256 種顏色(256x24位)。
支持高達 XGA (1024x768) 的分辨率。
可針對不同顯示面板編程時序。
可編程背景色。
可編程 HSync、VSync 和數據使能信號的極性。
每層有多達 8 個輸入顏色格式可供選擇。
1、ARGB8888
2、RGB888
3、RGB565
4、ARGB1555
5、ARGB4444
6、L8(8位 Luminance或 CLUT )
7、AL44(4位 alpha + 4位 luminance )
8、AL88(8位 alpha + 8位 luminance )
每通道的低位采用偽隨機抖動輸出。紅色、綠色、藍色的抖動寬度為 2 位。
使用 alpha 值(每像素或常數)在兩層之間靈活混合。
色鍵(透明顏色) 。
可編程窗口位置和大小 。
支持薄膜晶體管 (TFT) 彩色顯示器 。
AHB 主接口支持 16個字的突發。
高達 4 個可編程中斷事件。
時鐘:
AHB 時鐘域 (HCLK) :用于將數據從存儲器傳輸到 FIFO層APB2時鐘域 (PCLK2):用于配置寄存器像素時鐘域 (LCD_CLK) :用于生成 LCD-TFT接口信號。LCD_CLK輸出應按照面板要求配置。LCD_CLK通過 PLLSAI進行配置(見 RCC部分)。
時鐘配置程序:
PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_LTDC; PeriphClkInitStruct.PLLSAI.PLLSAIN = 192; PeriphClkInitStruct.PLLSAI.PLLSAIR = 5; PeriphClkInitStruct.PLLSAIDivR = RCC_PLLSAIDIVR_4; HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct); 引腳
LCD-TFT最多可以使用28個引腳。
液晶時序配置
hltdc_F.Init.HorizontalSync = (RK043FN48H_HSYNC - 1); hltdc_F.Init.VerticalSync = (RK043FN48H_VSYNC - 1); hltdc_F.Init.AccumulatedHBP = (RK043FN48H_HSYNC + RK043FN48H_HBP - 1); hltdc_F.Init.AccumulatedVBP = (RK043FN48H_VSYNC + RK043FN48H_VBP - 1); hltdc_F.Init.AccumulatedActiveH = (RK043FN48H_HEIGHT + RK043FN48H_VSYNC + RK043FN48H_VBP - 1); hltdc_F.Init.AccumulatedActiveW = (RK043FN48H_WIDTH + RK043FN48H_HSYNC + RK043FN48H_HBP - 1); hltdc_F.Init.TotalHeigh = (RK043FN48H_HEIGHT + RK043FN48H_VSYNC + RK043FN48H_VBP + RK043FN48H_VFP - 1); hltdc_F.Init.TotalWidth = (RK043FN48H_WIDTH + RK043FN48H_HSYNC + RK043FN48H_HBP + RK043FN48H_HFP - 1);背景色配置:
hltdc_F.Init.Backcolor.Blue = 0; hltdc_F.Init.Backcolor.Green = 0; hltdc_F.Init.Backcolor.Red = 0;這里使用的hltdc_F 變量是一個LTDC_HandleTypeDef類型的結構體。
窗口配置,這里只顯示了一個圖層。
配置開始、結束的像素位置坐標,也就是整個屏幕。
pLayerCfg.WindowX0 = 0; pLayerCfg.WindowX1 = 480; pLayerCfg.WindowY0 = 0; pLayerCfg.WindowY1 = 272;像素格式配置成為RGB565。
pLayerCfg.PixelFormat = LTDC_PIXEL_FORMAT_RGB565;顯示圖像的起始地址:
pLayerCfg.FBStartAdress = (uint32_t)&RGB565_480x272;Alpha配置為255.
pLayerCfg.Alpha = 255;最后通過HAL_LTDC_ConfigLayer函數初始化TFT與配置圖層。
HAL_LTDC_ConfigLayer(&hltdc_F, &pLayerCfg, 1);
顯示結果。
-
液晶顯示器
+關注
關注
11文章
580瀏覽量
44037 -
圖像顯示
+關注
關注
0文章
22瀏覽量
10369 -
ltdc
+關注
關注
0文章
4瀏覽量
4824
發布評論請先 登錄
相關推薦
評論