if (intStatus & kELCDIF_CurFrameDone)
{
if (s_LCDpendingBuffer >= 0)
{
/* Send a confirmation that the given buffer is visible */
GUI_MULTIBUF_Confirm(s_LCDpendingBuffer);//应在挂起的前置缓冲器成为可见之后立即调用
s_LCDpendingBuffer = -1;
}
}
__DSB();
}
case LCD_X_SHOWBUFFER:
{
pData = (LCD_X_SHOWBUFFER_INFO *)p;
/* Calculate address of the given buffer */
addr = VRAM_ADDR + VRAM_SIZE * pData->Index;//此处的地址应该是显示的地址,显存
/* Make the given buffer visible */
ELCDIF_SetNextBufferAddr(LCDIF, addr);//将显存中的数据显示出来
//
// Remember buffer index to be used by ISR
//
s_LCDpendingBuffer = pData->Index;
while (s_LCDpendingBuffer >= 0)
;
return 0;
}