NT35510的屏,读点函数

2019-07-20 20:32发布




F4上用的屏IC是NT35510,在运行程序中调用读点函数后,屏幕不工作,注释掉读点函数,屏幕又工作了。
程序如下,我看了NT35510的PDF,读pixel时的寄存器是2E00h , 程序应该没问题,
想问下,是否还有其他什么需要注意的地方忽略了?



void opt_delay(u8 i)
{
        while(i--);
}
//读取个某点的颜 {MOD}值         
//x,y:坐标
//返回值:此点的颜 {MOD}
u16 LCD_ReadPoint(u16 x,u16 y)
{
        u16 r,g,b =0;
        if(x>=lcddev.width||y>=lcddev.height)return 0;        //超过了范围,直接返回                  
        LCD_SetCursor(480-x,y);         
       
        LCD_WR_REG(0X2E00);
       
        r = LCD_RD_DATA();                                                                        //dummy Read
       
        opt_delay(2);          
        r=LCD_RD_DATA();                                                                    //实际坐标颜 {MOD}
       
        opt_delay(2);          
        b=LCD_RD_DATA();
        g=r&0XFF;                //对于nt35510,第一次读取的是RG的值,R在前,G在后,各占8位
        g<<=8;
       
        return (((r>>11)<<11)|((g>>10)<<5)|(b>>11));
       
}                         





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。