| 1# jeff_xanthus 
 其实你把该函数改成下面这样就可以了
 其中(x0,y0)是像素的起点坐标(左上角)复制代码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
            }
    }
}
 |