You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
3.4 KiB
129 lines
3.4 KiB
2 years ago
|
/* USER CODE BEGIN Header */
|
||
|
/**
|
||
|
******************************************************************************
|
||
|
* @file ltdc.c
|
||
|
* @brief This file provides code for the configuration
|
||
|
* of the LTDC instances.
|
||
|
******************************************************************************
|
||
|
* @attention
|
||
|
*
|
||
|
* Copyright (c) 2022 STMicroelectronics.
|
||
|
* All rights reserved.
|
||
|
*
|
||
|
* This software is licensed under terms that can be found in the LICENSE file
|
||
|
* in the root directory of this software component.
|
||
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||
|
*
|
||
|
******************************************************************************
|
||
|
*/
|
||
|
/* USER CODE END Header */
|
||
|
/* Includes ------------------------------------------------------------------*/
|
||
|
#include "ltdc.h"
|
||
|
|
||
|
/* USER CODE BEGIN 0 */
|
||
|
|
||
|
/* USER CODE END 0 */
|
||
|
|
||
|
LTDC_HandleTypeDef hltdc;
|
||
|
|
||
|
/* LTDC init function */
|
||
|
void MX_LTDC_Init(void)
|
||
|
{
|
||
|
|
||
|
/* USER CODE BEGIN LTDC_Init 0 */
|
||
|
|
||
|
/* USER CODE END LTDC_Init 0 */
|
||
|
|
||
|
LTDC_LayerCfgTypeDef pLayerCfg = {0};
|
||
|
|
||
|
/* USER CODE BEGIN LTDC_Init 1 */
|
||
|
|
||
|
/* USER CODE END LTDC_Init 1 */
|
||
|
hltdc.Instance = LTDC;
|
||
|
hltdc.Init.HSPolarity = LTDC_HSPOLARITY_AL;
|
||
|
hltdc.Init.VSPolarity = LTDC_VSPOLARITY_AL;
|
||
|
hltdc.Init.DEPolarity = LTDC_DEPOLARITY_AL;
|
||
|
hltdc.Init.PCPolarity = LTDC_PCPOLARITY_IPC;
|
||
|
hltdc.Init.HorizontalSync = 0;
|
||
|
hltdc.Init.VerticalSync = 0;
|
||
|
hltdc.Init.AccumulatedHBP = 1;
|
||
|
hltdc.Init.AccumulatedVBP = 1;
|
||
|
hltdc.Init.AccumulatedActiveW = 201;
|
||
|
hltdc.Init.AccumulatedActiveH = 481;
|
||
|
hltdc.Init.TotalWidth = 202;
|
||
|
hltdc.Init.TotalHeigh = 482;
|
||
|
hltdc.Init.Backcolor.Blue = 0;
|
||
|
hltdc.Init.Backcolor.Green = 0;
|
||
|
hltdc.Init.Backcolor.Red = 0;
|
||
|
if (HAL_LTDC_Init(&hltdc) != HAL_OK)
|
||
|
{
|
||
|
Error_Handler();
|
||
|
}
|
||
|
pLayerCfg.WindowX0 = 0;
|
||
|
pLayerCfg.WindowX1 = 200;
|
||
|
pLayerCfg.WindowY0 = 0;
|
||
|
pLayerCfg.WindowY1 = 480;
|
||
|
pLayerCfg.PixelFormat = LTDC_PIXEL_FORMAT_RGB565;
|
||
|
pLayerCfg.Alpha = 255;
|
||
|
pLayerCfg.Alpha0 = 0;
|
||
|
pLayerCfg.BlendingFactor1 = LTDC_BLENDING_FACTOR1_PAxCA;
|
||
|
pLayerCfg.BlendingFactor2 = LTDC_BLENDING_FACTOR2_PAxCA;
|
||
|
pLayerCfg.FBStartAdress = 0xC0000000;
|
||
|
pLayerCfg.ImageWidth = 200;
|
||
|
pLayerCfg.ImageHeight = 480;
|
||
|
pLayerCfg.Backcolor.Blue = 0;
|
||
|
pLayerCfg.Backcolor.Green = 0;
|
||
|
pLayerCfg.Backcolor.Red = 0;
|
||
|
if (HAL_LTDC_ConfigLayer(&hltdc, &pLayerCfg, 0) != HAL_OK)
|
||
|
{
|
||
|
Error_Handler();
|
||
|
}
|
||
|
/* USER CODE BEGIN LTDC_Init 2 */
|
||
|
|
||
|
/* USER CODE END LTDC_Init 2 */
|
||
|
|
||
|
}
|
||
|
|
||
|
void HAL_LTDC_MspInit(LTDC_HandleTypeDef* ltdcHandle)
|
||
|
{
|
||
|
|
||
|
if(ltdcHandle->Instance==LTDC)
|
||
|
{
|
||
|
/* USER CODE BEGIN LTDC_MspInit 0 */
|
||
|
|
||
|
/* USER CODE END LTDC_MspInit 0 */
|
||
|
/* LTDC clock enable */
|
||
|
__HAL_RCC_LTDC_CLK_ENABLE();
|
||
|
|
||
|
/* LTDC interrupt Init */
|
||
|
HAL_NVIC_SetPriority(LTDC_IRQn, 5, 0);
|
||
|
HAL_NVIC_EnableIRQ(LTDC_IRQn);
|
||
|
/* USER CODE BEGIN LTDC_MspInit 1 */
|
||
|
|
||
|
/* USER CODE END LTDC_MspInit 1 */
|
||
|
}
|
||
|
}
|
||
|
|
||
|
void HAL_LTDC_MspDeInit(LTDC_HandleTypeDef* ltdcHandle)
|
||
|
{
|
||
|
|
||
|
if(ltdcHandle->Instance==LTDC)
|
||
|
{
|
||
|
/* USER CODE BEGIN LTDC_MspDeInit 0 */
|
||
|
|
||
|
/* USER CODE END LTDC_MspDeInit 0 */
|
||
|
/* Peripheral clock disable */
|
||
|
__HAL_RCC_LTDC_CLK_DISABLE();
|
||
|
|
||
|
/* LTDC interrupt Deinit */
|
||
|
HAL_NVIC_DisableIRQ(LTDC_IRQn);
|
||
|
/* USER CODE BEGIN LTDC_MspDeInit 1 */
|
||
|
|
||
|
/* USER CODE END LTDC_MspDeInit 1 */
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* USER CODE BEGIN 1 */
|
||
|
|
||
|
/* USER CODE END 1 */
|