OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8574|回复: 1

Ili0x9486 横屏清屏问题

[复制链接]

5

主题

6

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-3-16
在线时间
6 小时
发表于 2015-3-25 13:46:14 | 显示全部楼层 |阅读模式
5金钱
我使用Ili9486 驱动的3.5TFT(480*320) 初始化成功,ID也可以读取,在竖屏使用时候LCDClear()清屏没有问题,如下图

,但是横屏使用时,清屏就不能完全清楚,如下图,但是显示文字的像素坐标是对的

,这时必须把TFT的大小设置成480X350 才能全部清楚屏幕,这是什么情况
下面是初始化 设置光标和清屏代码
(1)初始化ILI9486

LCD_WR_REG(0xFF);   
LCD_WR_REG(0xFF);
delay_ms(5);
LCD_WR_REG(0xFF);
LCD_WR_REG(0xFF);
LCD_WR_REG(0xFF);
LCD_WR_REG(0xFF);
delay_ms(10);

LCD_WR_REG(0xB0);
LCD_WR_DATA(0x00);
LCD_WR_REG(0x11);
delay_ms(150);

LCD_WR_REG(0xB3);
LCD_WR_DATA(0x02);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x00);

LCD_WR_REG(0xC0);
LCD_WR_DATA(0x10);//13
LCD_WR_DATA(0x3B);//480
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x02);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x01);
LCD_WR_DATA(0x00);//NW
LCD_WR_DATA(0x43);

LCD_WR_REG(0xC1);
LCD_WR_DATA(0x10);//LCD_WR_DATA(0x08);
LCD_WR_DATA(0x10);//LCD_WR_DATA(0x16);//CLOCK
LCD_WR_DATA(0x08);
LCD_WR_DATA(0x08);

LCD_WR_REG(0xC4);
LCD_WR_DATA(0x11);
LCD_WR_DATA(0x07);
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x03);

LCD_WR_REG(0xC6);
LCD_WR_DATA(0x00);

LCD_WR_REG(0xC8);//GAMMA
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x13);
LCD_WR_DATA(0x5C);
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x07);
LCD_WR_DATA(0x14);
LCD_WR_DATA(0x08);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x21);
LCD_WR_DATA(0x08);
LCD_WR_DATA(0x14);
LCD_WR_DATA(0x07);
LCD_WR_DATA(0x53);
LCD_WR_DATA(0x0C);
LCD_WR_DATA(0x13);
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x21);
LCD_WR_DATA(0x00);

LCD_WR_REG(0x35);
LCD_WR_DATA(0x00);

LCD_WR_REG(0x36);
LCD_WR_DATA(0x48);

LCD_WR_REG(0x3A);
LCD_WR_DATA(0x55);

LCD_WR_REG(0x44);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x01);

LCD_WR_REG(0xD0);
LCD_WR_DATA(0x07);
LCD_WR_DATA(0x07);//VCI1
LCD_WR_DATA(0x1D);//VRH

LCD_WR_REG(0xD1);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x03);//VCM
LCD_WR_DATA(0x00);//VDV

LCD_WR_REG(0xD2);
LCD_WR_DATA(0x03);
LCD_WR_DATA(0x14);
LCD_WR_DATA(0x04);

LCD_WR_REG(0x29);
delay_ms(30);
LCD_WR_REG(0x2A);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x01);
LCD_WR_DATA(0x3F);//320

LCD_WR_REG(0x2B);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x00);
LCD_WR_DATA(0x01);
LCD_WR_DATA(0xDF);//480
LCD_WR_REG(0xB4);
LCD_WR_DATA(0x00);
delay_ms(100);
//LCD_WR_REG( 0x0021);  
LCD_WR_REG(0x2C);

LCD_LED=1;//????±???  
LCD_Display_Dir(1);
LCD_Clear(WHITE);
}  
(2)设置光标
#if HORIZONTAL
  LCD_WR_REG(0x002A);   //setxcmd
LCD_WR_DATA(Ypos>>8);
  LCD_WR_DATA(0x00FF&Ypos);                 //横
  LCD_WR_DATA(0x0001);
LCD_WR_DATA(0x003F);

  LCD_WR_REG(0x002B);   //setYcmd
LCD_WR_DATA((480-Xpos)>>8);
  LCD_WR_DATA(0x00FF&(480-Xpos));           //?è?¨Y×?±ê
  LCD_WR_DATA(0x0001);
LCD_WR_DATA(0x00df);
#else
LCD_WR_REG(0x002A);   //setxcmd
LCD_WR_DATA(Xpos>>8);
  LCD_WR_DATA(0x00FF&Xpos);                  //?è?¨X×?±ê
  LCD_WR_DATA(0x0001);
LCD_WR_DATA(0x003F);

  LCD_WR_REG(0x002B);     //setycmd
LCD_WR_DATA(Ypos>>8);
  LCD_WR_DATA(0x00FF&Ypos);                  //?è?¨Y×?±ê
  LCD_WR_DATA(0x0001);
LCD_WR_DATA(0x00df);
#endif
(3)清楚TFT
u32 index=0;      
u32 totalpoint=lcddev.width;
totalpoint*=lcddev.height; //????×?????

for(index=0;index<totalpoint;index++)
{
LCD->LCD_RAM=color;   
}

这是什么原因,

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-3-25 22:52:04 | 显示全部楼层
查下数据手册的指令说明吧,看看是不是什么地方没设置对
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-24 10:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表