|

楼主 |
发表于 2018-1-9 10:07:24
|
显示全部楼层
你好,这个 貌似没有看懂啊 ,查找最终的调用,貌似都是使用的函数指针的形式调用的,
BytesPerLine 这个参数表示的每行的总字节数还是整幅图片的字节数啊 ??
/*
*********************************************************************************************************
* 函 数 名: _LCD_DrawBitmap16bpp
* 功能说明: 16bpp位图绘制
* 形 参: --
* 返 回 值: 无
*********************************************************************************************************
*/
static void _LCD_DrawBitmap16bpp(int LayerIndex, int x, int y, U16 const * p, int xSize, int ySize, int BytesPerLine) {
U32 BufferSize, AddrDst;
int OffLineSrc, OffLineDst;
BufferSize = _GetBufferSize(LayerIndex);
AddrDst = _aAddr[LayerIndex] + BufferSize * _aBufferIndex[LayerIndex] + (y * _axSize[LayerIndex] + x) * _aBytesPerPixels[LayerIndex];
OffLineSrc = (BytesPerLine / 2) - xSize; // 还有这个地方为何需要 /2 ??????????????
OffLineDst = _axSize[LayerIndex] - xSize;
_DMA_Copy(LayerIndex, (void *)p, (void *)AddrDst, xSize, ySize, OffLineSrc, OffLineDst);
}
|
|