OpenEdv-开源电子网

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

为什么LCD不能再设定的区域内显示,行列地址都设置了,但就是没效果,求原子哥解疑!!!

[复制链接]

2

主题

13

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2013-8-5
在线时间
0 小时
发表于 2013-8-5 20:35:28 | 显示全部楼层 |阅读模式
那四个命令我都写了,但显示就不按照我设定的区域来显示,不知为什么,好像那几个命令无效似的,无解啊!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-8-5 21:02:48 | 显示全部楼层
回复【楼主位】紫尘小奇:
---------------------------------
研究数据手册啊。
呵呵,你用的什么LCD?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

13

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2013-8-5
在线时间
0 小时
 楼主| 发表于 2013-8-6 20:11:10 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
就是买的开发板上带的那个2.8英寸的那个啊
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-8-6 20:41:22 | 显示全部楼层
回复【3楼】紫尘小奇:
---------------------------------
你的设定区域再显示是指??
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

13

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2013-8-5
在线时间
0 小时
 楼主| 发表于 2013-8-9 21:22:25 | 显示全部楼层
void LCD_Set_Window(u16 sx,u16 sy,u16 ex,u16 ey)   
{
u8 hsareg,heareg,vsareg,veareg;
u16 hsaval,heaval,vsaval,veaval;
hsaval=sx;
heaval=ex;
vsaval=sy;
veaval=ey;
hsareg=0X50;heareg=0X51;//水平方向窗口寄存器
vsareg=0X52;veareg=0X53;//垂直方向窗口寄存器    
LCD_WriteReg(hsareg,hsaval);
LCD_WriteReg(heareg,heaval);
LCD_WriteReg(vsareg,vsaval);
LCD_WriteReg(veareg,veaval);
}
void main()
{      u16 p;
    LCD_Set_Window(150,20,200,70);
LCD_SetCursor(150,20);
LCD_WriteRAM_Prepare();
for(p=0;p<2601;p++)
{
 LCD->LCD_RAM=RED;
}
}
代码如上,但显示结果不是个正方形,去掉这个LCD_Set_Window函数没有用,显示结果不改变,真是不知道这个开窗到底是怎么回事,手册甚都看了,但就是没有效果,无语死了,希望原子哥给一个代码看看啊!!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-8-9 21:24:16 | 显示全部楼层
回复【5楼】紫尘小奇:
---------------------------------
我已经放弃开窗的方式了,呵呵.
不好做通用,所以没怎么研究了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

13

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2013-8-5
在线时间
0 小时
 楼主| 发表于 2013-8-9 21:28:42 | 显示全部楼层
回复【6楼】正点原子:
---------------------------------
额,发现了,你那个LCD_Fill()函数就没有用开窗来做了。但我在(110,,100)处显示120*160的图片,只得用下面的程序:
 for(i=100;i<=259;i++)
{
  LCD_SetCursor(110,i);
  LCD_WriteRAM_Prepare();
  for(j=0;j<=119;j++)
  {
    colour=m[t];
colour<<=8;
t++;
colour|=m[t];
LCD->LCD_RAM=colour;
t++;
  }
}
没有开窗来的简洁啊,但一直就是不成功,不知道怎么回事,困扰我好几天了,十分不爽!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-15 15:17

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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