中级会员
 
- 积分
- 280
- 金钱
- 280
- 注册时间
- 2019-5-8
- 在线时间
- 81 小时
|
清屏函数能用,画点函数画不出点,请求大佬们指导下
/*
****************************************************************
*功能: 清屏函数
*参数: 填充的颜色和位置
****************************************************************
*/
void LCD_Clear(u16 color)
{
u16 x=0,y=0;
u32 index=0;
u32 totalpoint = lcd_dev.width;
totalpoint *= lcd_dev.height;
LCD_WR_REG(0X2A00); /* column address control set */
LCD_WR_DATA((x>>8)& 0xFF);
LCD_WR_REG(0X2A01);
LCD_WR_DATA(x&0xff);
LCD_WR_REG(0X2A02);
LCD_WR_DATA(((lcd_dev.width-1) >>8)& 0xFF);
LCD_WR_REG(0X2A03);
LCD_WR_DATA((lcd_dev.width-1) &0xff);
LCD_WR_REG(0X2B00); /* page address control set */
LCD_WR_DATA((y>>8)& 0xFF);
LCD_WR_REG(0X2B01);
LCD_WR_DATA(y&0xff);
LCD_WR_REG(0X2B02);
LCD_WR_DATA(((lcd_dev.height-1) >>8)& 0xFF);
LCD_WR_REG(0X2B03);
LCD_WR_DATA((lcd_dev.height-1) &0xff);
LCD_WR_REG(0x2C00);
for( index=0;index < totalpoint; index++ )
{
LCD_WR_DATA( color );
}
}
/*
****************************************************************
*功能: 画点
*参数: 横纵坐标值
****************************************************************
*/
void LCD_DrawPoint(u16 x,u16 y)
{
BlockWrite(x,x+1,y,y+1); //设置光标位置
LCD->LCD_RAM = POINT_COLOR ;
}
void BlockWrite(unsigned int Xstart,unsigned int Xend,unsigned int Ystart,unsigned int Yend)
{
WriteComm(0x2a00); WriteData(Xstart>>8);
WriteComm(0x2a01); WriteData(Xstart&0xff);
WriteComm(0x2a02); WriteData(Xend>>8);
WriteComm(0x2a03); WriteData(Xend&0xff);
WriteComm(0x2b00); WriteData(Ystart>>8);
WriteComm(0x2b01); WriteData(Ystart&0xff);
WriteComm(0x2b02); WriteData(Yend>>8);
WriteComm(0x2b03); WriteData(Yend&0xff);
WriteComm(0x2c00);
}
|
|