1# jeff_xanthus
其实你把该函数改成下面这样就可以了- void Paint_Bmp(int x0,int y0,int h,int l,unsigned char bmp[])
- {
- int x,y;
- U32 c;
- int p = 0;
-
- for( y = y0 ; y <y0+l ; y++ ) //这里本来是y=y0,y<l,y++
- {
- for( x = x0 ; x<x0+h ; x++ ) //x=x0,x<h,x++
- {
- c = bmp[p+1] | (bmp[p]<<8) ;
- if ( ( (x) < SCR_XSIZE_TFT) && ( (y) < SCR_YSIZE_TFT) ) //(x0+x) < SCR_XSIZE_TFT) && ( (y0+y) < SCR_YSIZE_TFT)
- LCD_BUFFER[y][x] = c ; //原来是LCD_BUFFER[y0+y][x0+x] = c
-
- p = p +2; //这里本来是p=p+2
- }
- }
- }
复制代码 其中(x0,y0)是像素的起点坐标(左上角) |