Chinaunix首页 | 论坛 | 博客
  • 博客访问: 330690
  • 博文数量: 85
  • 博客积分: 3433
  • 博客等级: 中校
  • 技术积分: 844
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-29 01:11
文章分类

全部博文(85)

文章存档

2013年(1)

2012年(12)

2011年(13)

2010年(59)

我的朋友

分类: LINUX

2010-08-31 09:02:28

最近一个月在做何态的LCD显示,辛苦一个月显示终于正常了,下面是我的小节,算是留作纪念告慰自己。
HT1626是一个专为I/O口型微控制器设计的液晶显示驱动芯片. HT1626的最大驱动显示能力为512 段 (64x8). HT1626支持串行接口, HT1626同时支持蜂鸣器输出, HT1626还内建看门狗定时器或时基定时器。 HT1626是一个内存映射和多功能的LCD控制器. 通过软件配置功能后的HT1626能适合于多种应用场合,包括液晶显示器、液晶显示模块和显示子系统。用于连接主控制器和HT1626的数据通讯线只需要3根,HT1626还有一个节电命令用于降低系统功耗。
HT1626显示屏的特点是,他里面有个RAM,里面存储的信息以点阵的方式实现,LCD上的每个点对应RAM上的每个信息。简单来说就是RAM里面存储了LCD一个屏的信息。
我的做法是把所有需要显示的字符,在一个表中用ASCI码表示出来,这样显示屏要显示的字符就可以用数组来表示,每个字符用5*5的点阵表示。分别用两个buf存储(当然根据LCD上面各种数据的不用用不同的buf存储,但是点阵只有两个buf,一个存每个字符的点阵表示,另一个存储的值和lcd上面RAM一样(01编码,0表示这个点灭,1表示亮),这样每次往LCD上写数据的时候都把BUF的数据刷到LCD上面去),蜂鸣器输出命令也是在同样的IO口输出,但是它们不存放在BUF里面,否则就刷到LCD上面去了,刷新的时候记得需要把LCD的模式设置成输出模式。
贴上部分代码:

阅读(1793) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~