HT液晶显示驱动详细原理及程序.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Ht1621 液晶显示详细驱动使用说明以及程序 概述 HT162混128点内存映象和多功能的LCtM动器,HT162酌软件配置特性使它适用于多 种LC必用场合,包括LCDI块和显示子系统。用于连接主控制器和 HT162酌管脚只有4或5 条,HT162处有一个节电命令用于降低系统功耗。 在虎风所做的这个系统中ht1621用于驱动一个静态的LCD(晶显示器。液晶显示的方式 分为静态显示和动态显示。静态与动态的区别在于静态显示是持续供电的,而动态显示是 利用人的视觉停留效果,快速扫描数码管各个段,让人在视觉上感觉到数码管是同时显示 的。 HT1621接线原理图 静态LCD吉构图 几个曾经纠结的概念 Time base:时基,即时间基准,可以用来输出,作为外部时钟的时间基准。 占空比:将所有公共电极(COM各施加一次扫描电压的时间叫一帧,单位时间内扫描 多少帧的频率叫帧频,将扫描公共电极(COM选通的时间与帧周期之比叫占空比。通常占 空比等于公共电极数N的傕J数,即1/N。这就是说假如你要驱动4个液晶,就需要4个COM那 么你的占空比就要设定为 1/4 。 偏压比:指的是液晶的偏压系数,可以看看专业技术文章,偏压目的是克服交叉效应, 通过把半选择点与非选择点的电压平均,适度提高非选择点的电压来抵消半选择点上的一 部分电压,使半选择点上的电压下降,从而提高显示对比度;最终行半选择点和非选择点 上的电压均为显示电压的 1/a , 1/a 就称为偏压系数,也称为偏压。此方法称为 1/a 偏压的平 均电压法,简称为 1/a 偏压法。 VLCD(LCD1动电压):LCD的驱动电压为加在点亮部分的段电压与公共电压之差 (峰- 峰值 ) 。 关于RAMfe址映射的概念 为了这个问题困扰了很久,虎风太愚钝啦…… Ht1621有一个32*4的LCD驱动,映射到32*4的RAMt址。 上图中写命令101后面跟6位RAM*址,那么这个地址是如何确定的呢?其实说白了 也很简单,RAM地址就是SEG的序号。我们要点亮一段液晶管需要给他提供一个电站,而 这个电平是由SEGI脚提供的,SEGf脚电平的输出又取决于对应 RAM*址中的值。 驱动一个8段数码管的顺序是A,B,C,D,E,F,G,DP ,我们认为前面LCM构图中的数码 管3为我们要显示的低位,那么连接原理图中 A3的是SEG12我们就说此时的RAM4址为 0b001100,连接B3的是SEG11对应的RAMft址为0b001011,依次类推,第一个数码管的所 有地址为: 0b001100,0b001011,0b001010,0b001001,0b001000,0b001101,0b001110,0b000111〃DP2; 其余地址类似,在此不再解释。 程序 Unsigned char LCD_ADD[]={0000000 0000000b0000000b0 0000000,00; void HT1621_Dis_Char(unsigned char d,unsigned char d_loca) { unsigned char j; unsigned char seg_cnt=8 ; if (d_loca==(HT1621_DATA_NUM-1)) seg_cnt=7; // 送3位模式码101及6位首地址000000 0b000000101 for (j=0; jseg_cnt; j++) // 送 cache_size 组数据 { HT1621_PORT=~_BV(HT1621_CS); HT1621_Send_Bits(0x05,3); // 送写命令代码 101,高到低 HT1621_Send_Bits(LCD_ADD[d_loca*8+j],6); // 送每段对应的地址 HT1621_Send_Bits(d0x01,4); // 送数据,com0对应的低位,低到高 d=d1;//右移位 HT1621_PORT|=_BV(HT1621_CS); } /*=========显示小数点 ========= 输入参数: Poi_loca, 为小数点的位置( 0 是第一位, 1 是第二位 ) */ void HT1621_Pri_Point(unsigned char

文档评论(0)

139****7971 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档