/****************************************************************************<br />* 名称:GUI_Point()<br />* 功能:在指定位置上画点。<br />* 入口参数: x 指定点所在列的位置<br />* y 指定点所在行的位置<br />* color 显示颜色(对于黑白色LCM,为0时灭,为1时显示)<br />* 出口参数:返回值为1时表示操作成功,为0时表示操作失败。(操作失败原因是指定地址超出有<br />* 效范围)<br />****************************************************************************/<br />uint8 GUI_Point(uint32 x, uint32 y, TCOLOR color)<br />{ /* 参数过滤 */<br /> if(x>=GUI_LCM_XMAX) return(0);<br /> if(y>=GUI_LCM_YMAX) return(0);<br /> <br /> /* 设置缓冲区相应的点 */<br /> if( (color&0x01) != 0 ) gui_disp_buf[y][x>>3] |= DCB_HEX_TAB[x&0x07];<br /> else gui_disp_buf[y][x>>3] &= (~DCB_HEX_TAB[x&0x07]);<br /><br /> /* 刷新显示 */<br /> LCD_UpdatePoint(x, y);<br /> return(1);<br />}<br /><br />DCB_HEX_TAB[8] = {0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01}<br />请问 在液晶驱动中 这个数组是干什么用的 <br /> if( (color&0x01) != 0 ) gui_disp_buf[y][x>>3] |= DCB_HEX_TAB[x&0x07];<br /> else gui_disp_buf[y][x>>3] &= (~DCB_HEX_TAB[x&0x07]);<br />这个又是什么意思? |
|