3433|2

70

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

菜鸟求教LCD刷屏问题 [复制链接]

各位大侠求教求教
我大四了,菜鸟一只在做综合课程设计。快要验收了。杯具。
负责的是接口,做了个鼠标和屏,想连起来的但是发现屏刷起来有问题。
那屏是640×480的,如果把像素值都存在RAM里就太大了,想单独给鼠标像素弄个模块,然后刷屏的时候当刷到鼠标位置的时候再把像素取出来。

但是问题出现了:譬如说水平刷屏的时候要到位置200的时候变个像素值,再到300的时候变个像素值,就可以。
                                     但是如果把两者距离变小从200到250整个逻辑就乱掉了。。
                             很奇怪,感觉这个屏应该是你数到那个点就可以变到哪个点的哈。泪。

不知有没有做过液晶屏的大侠在?这究竟是因为所写代码的问题导致时序混乱还是本来就不容许这样子换来换去刷屏的?难道必须要整个RAM这样刷么?可是这样占内存又太大了哈。

先谢下各位了。

下面是刷屏水平 竖直 和行有效的Verilog代码:(换的时候我是直接判断HCount的大小然后给颜色端口赋值的)
always @(posedge TLcdClk or negedge RST)
begin
  if(!RST )
   HCount <= 0;
  else
   begin
   HCount <= HCount+1;
   if(HCount == HDCount -1)
    HSync <= #1 1'b1;
   else if(HCount == HTCount -1)
    begin
    HSync <= #1 1'b0;
    HCount <=#1 'b0;
       end
   end
  
end

always @(posedge HSync or negedge RST)
begin
  if(!RST)
   VCount <= 0;
  else
   begin
   VCount <= VCount + 1;
   if(VCount == VDCount -1)
    begin
    VSync <= #1 1'b1;
    end
   else if(VCount == VTCount - 1)
    begin
    VSync <= #1 1'b0;
    VCount <= #1 'b0;
    end
   end
end

always @( posedge TLcdClk or negedge RST  )
begin
if(!RST)
  EnCount <= 0;
else if (!HSYNC)
   EnCount <= 0;
   else
   begin
   EnCount <= EnCount+1;
   if(EnCount == EnDCount - 1)
    Enab <= #1 1'b1;
   else
    if(EnCount == EnTCount -1)
    begin
    Enab <= #1 1'b0;
    EnCount <= #1 'b0;
    end
   end
end

最新回复

大部分都是采用MCU或者ARM 实现LCD的显示; 至于楼主所说的刷屏,且仅刷新部分内容,我一般采取的方法是: 先修改需要变动的地方的数据,然后把修改后,所以的数据都从新显示一次,即相当整屏刷新。 当然部分刷新,肯定是可以实现,但是我当时实现的时候,容易出现背影。  详情 回复 发表于 2010-1-11 18:12
点赞 关注

回复
举报

55

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
看别人做过屏,不是用vhdl,而是用mcu通过spi甩数据的方法,你的屏是怎么显示数据的?是否图像跨越了不同的逻辑段?
 
 

回复

58

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
大部分都是采用MCU或者ARM 实现LCD的显示;

至于楼主所说的刷屏,且仅刷新部分内容,我一般采取的方法是:
先修改需要变动的地方的数据,然后把修改后,所以的数据都从新显示一次,即相当整屏刷新。

当然部分刷新,肯定是可以实现,但是我当时实现的时候,容易出现背影。
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表