|
使用安富莱7寸屏跑FREERTOS和UCGUI,想实现电脑上的屏幕保护功能,目的是为了节省电量,功能如下:
(1)、如果连续5分钟没有检测到某个开关量振动信号,则屏幕进入屏保状态,
使用LCD_DispOff()函数关闭屏幕显示,LCD_DispOff()函数用的是开发板上的函数。
(2)、如果屏幕已经进入屏幕保护,则连续3秒钟检测到某个开关量振动信号,则屏幕退出屏保状态,
使用LCD_DispOn();函数打开屏幕显示,LCD_DispOn()函数用的是开发板上的函数
(3)、现象如下:
进入屏保后屏幕黑屏,退出屏保后有时候屏幕正常显示,但是经常出现屏幕是黑屏现象,此后屏幕再也无法显示出画面了,但是程序却一直运行正常 。
/*
*********************************************************************************************************
* 函 数 名: LCD_DispOn
* 功能说明: 打开显示
* 形 参: 无
* 返 回 值: 无
*********************************************************************************************************
*/
void LCD_DispOn(void)
{
if (g_ChipID == IC_8875)
{
RA8875_DispOn();
}
else if (g_ChipID == IC_9488)
{
//ILI9488_DispOn();
}
else /* 61509, 5420, 4001 */
{
//SPFD5420_DispOn();
}
}
/*
*********************************************************************************************************
* 函 数 名: LCD_DispOff
* 功能说明: 关闭显示
* 形 参: 无
* 返 回 值: 无
*********************************************************************************************************
*/
void LCD_DispOff(void)
{
if (g_ChipID == IC_8875)
{
RA8875_DispOff();
}
else if (g_ChipID == IC_9488)
{
//ILI9488_DispOff();
}
else /* 61509, 5420, 4001 */
{
//SPFD5420_DispOff();
}
} |
|