硬汉嵌入式论坛

 找回密码
 立即注册
查看: 30|回复: 1
收起左侧

[LTDC] stm32h7使用HAL库无法进入行中断疑问

[复制链接]

4

主题

1

回帖

13

积分

新手上路

积分
13
发表于 5 小时前 | 显示全部楼层 |阅读模式

关于stm32h7使用HAL库的行中断疑问,今天移植lvgl时卡死在lv_timer_handle(),排查后发现ltdc竟然无法进入行中断,原来代码是这样的,
在bsp里我对
[C] 纯文本查看 复制代码


void bsp_init(void)
{
	mpu_config();
    SCB_EnableICache();
    SCB_EnableDCache();

    HAL_Init();
    SystemClock_Config();
    PeriphCommonClock_Config();
   // SystemCoreClockUpdate();
    HAL_Delay(1);
		
    bsp_led_init(LED1_PORT, LED1_PIN);
    ibsp_debug_uart_dma_init()
    bsp_sdram_init(&sdram_handle,&sdram_cmd);
    bsp_rgb_lcd_init();
    bsp_ltdc_nvic_config();
    bsp_lcd_bl_init();	
	
	#if LTDC_TEST == 1
		bsp_rgb_lcd_test();
	#endif
}


static void bsp_ltdc_nvic_config(void)
{
	HAL_NVIC_SetPriority(LTDC_IRQn,2,0);
	HAL_NVIC_EnableIRQ(LTDC_IRQn);
	
	HAL_LTDC_ProgramLineEvent(<dc_handle, RGB_LCD_HIGH - 1);
}

static void bsp_dma2d_naiv_config(void)
{
	HAL_NVIC_SetPriority(DMA2D_IRQn, 1, 0);
    HAL_NVIC_EnableIRQ(DMA2D_IRQn);
}


void HAL_LTDC_LineEventCallback(LTDC_HandleTypeDef *hltdc)
{
	fps++;
	ltdc_lineinterrupt_callback();
	HAL_LTDC_ProgramLineEvent(&ltdc_handle, 480 - 1);
}

void LTDC_IRQHandler(void)
{
    HAL_LTDC_IRQHandler(&ltdc_handle);
}



这样子无法进入行中断,但是不用hal的ltdc的irqn直接如下,配置寄存器又可以了,请问这是啥问题,是配置的不对吗?

[C] 纯文本查看 复制代码
extern LTDC_HandleTypeDef ltdc_handle;
extern void ltdc_lineinterrupt_callback(void);
static volatile uint16_t fps = 0;

//void HAL_LTDC_LineEventCallback(LTDC_HandleTypeDef *hltdc)
//{
//	fps++;
//	ltdc_lineinterrupt_callback();
//	HAL_LTDC_ProgramLineEvent(<dc_handle, 480 - 1);
//}

void LTDC_IRQHandler(void)
{
	LTDC->ICR = (uint32_t)LTDC_IER_LIE;
	//LOG_I("Achieve the lin interrupt!");
	ltdc_lineinterrupt_callback();
    //HAL_LTDC_IRQHandler(<dc_handle);
}

回复

使用道具 举报

1万

主题

7万

回帖

12万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
121892
QQ
发表于 3 小时前 | 显示全部楼层
供参考,硬件双缓冲模式是基于LTDC行中断的。

基于V5,V6和V7的LVGL模板,驱动支持单缓冲,双缓冲和配合硬件消隐的双缓冲,以及电容和电阻触摸全支持(2023-07-19)
https://forum.anfulai.cn/forum.p ... 0161&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2026-4-2 15:50 , Processed in 0.453352 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表