技术文章

HT1621B LCD控制芯片使用详解


 1. 引脚特别说明
 1).osci/osco:晶体震荡32.768KHZ输入口,另外可以使用片内的震荡器,或外部提供的系统时钟信号
 2).vcld:LCD电源控制,具体参数要看玻璃片的要求
 3).上拉电阻:在部分引脚上手册上介绍需要接上拉电阻,其实没有这个必要
2. 堪误
 1621B的参数手册上有错,英文板**页上的dip应为ddip,中文板上第四页上的供应电压-0.3V~0.5V,应为--0.3V~5.5V。
3.lcd的频率:时钟频率0.25khz  COM0/1/2/3=0.256KZH/n (我们取n=4)
            数据输入的时钟Fclk*大为500KHZ,无*小值和经典值
4. sysdis控制命令:其作用是停止系统的时钟和将SEG输出关闭,使用条件是1621使用片内RC震荡器或外部晶震。如果使用的外部时钟信号,就需要通过关闭该时钟信号来实现类似的功能。
5. 功耗计算: 5V电源
  *大待机功耗  5V*0.6mA=3mW
  每个COM口驱动的时候的功耗 5V*0.2mA*12=12mW
  不开BEEP的时候*大功耗  15mW
  BEEP功耗 *小典型值1.3V*2.6mA=3.38mW  *大典型值4.5V*1.8mA=8.1mW
  整个部分(计算)功耗是 6mW~23mW
6. LCD OFF关闭LCD显示输出
7.真值表 
 使用4位管的时候: 0AFH,0A0H,0CBH,0E9H,0E4H,06DH,06FH,0A8H,0EFH,0EDH,00H,040H,04FH,042H,00H
  ;   0   1   2   3  4    5    6    7   8   9    AN  -   E   r    AN
 使用6位管的时候:
 0EBH,60H,0C7H,0E5H,06CH,0ADH,0AFH,0E0H,0EFH,0EDH,10H,04H,08FH,06H,00H
   ; 0    1   2  3    4    5   6    7     8  9   dp   -   E  r   an
8.pin和seg的对应问题
  使用4管的时候
 SEG:31 30 29 28 27 26 25 24 23 COM0 COM1 COM2 COM3
  PIN:  5   6  7   8  9 10  11  12  13  COM1  COM2 COM3  COM4
  使用6管的时候
  SEG: 31  30  29  28  27 26 25  24  23  22  21  20 COM0 COM1COM2COM3
  PIN: 12   11  10  09 08 07  06  05  04  03  02  01COM1 COM2COM3 COM4
9.新旧系统占用I/O口资源
  原考勤中使用到
  rck_led  p1.1  sclk_led  p1.0 beep  p1.4   ser_led p1.3    en_led  p1.2
  原水控中使用到
  srclk   p2.1    rrclk p2.2     ser p2.0     beep  p3.6
  新水控中对应的I/O (已经通过测试)
  csb   p2.0    datum p2.1     wrb p2.2   backcon  p3.6    rb  暂时没有分配
  新考勤对应的I/O (需要考虑走线的问题)
  csb   p1.1    datum p1.0     ser  p1.4   backcon  p1.3    rb  p1.2
10.新开RAM以及使用到原有RAM的统计
   考勤不详
   水控中的情况如下:
复用:使用到待显示码存储区dispbuf0~4  (5B)从其中获得待显示的码,调用NEWDECODE获得显示玛。同时复用了rcount,disp_time其作用是计时,使的不取卡1.5S后关背光,连续待机10分钟后关显示。
新开:1)num0,num1测试显示的时候做存放初值使用,应用dispbuf0,dispbuf1代替         2)code_datum,code_count,seg_add_S 分别是待显示的码显示循环计数1621寄存器地址
3) f_closeback,f_closeLCD 分别是关背光标志和关LCD显示输出标志

11.新旧显示程序部分的主要不同之处
  1)考勤不详
  2)原水控中使用到显示的子程序有3个分别是:
disp_name  :显示机器号  disp_money 显示消费金额和剩余金额  disp 显示错误代码
旧程序在获得显示数后进行BCD码转换,然后逐管读DECODE获得显示码,并调用write_595写如一个数码管只到全部写入。每次write_595执行过后需要对rrclk进行底跳变的操作。
 3)新水控中仍然保留这个子程序的名字,使用相同的dispbuf也进行bcd转换,同样逐位读NEWdecode,并调用write1621写如一个数码管。基本流程是一致的。在写1621RAM的时候伴随着P2.0 P2.1 P2.2引脚电瓶的变化。
   新水控中在开始的地方必须对1621进行初始化。调用inintial_B进行初始化,同时在需要关闭的时候调用close_B来关闭显示。当然在次打开显示的时候必须再次调用初试化程序。
(在初试化程序中插入了个插clrflash子程序将个ram都写成0*初显示暗码。这个是过程中的需要,目前仍然考虑这个子程序存在有必要没)
12.新水控常用子程序的简单介绍
1)initial_B写如1621的基本参数  close_B关闭1621显示  clr_flash清空所有的1621显示RAM  test_loop显示板完整性的测试 write1621_test每次写多个管 write1621_testB显示1234 2345 3456 …… send_command写控制命令 write1621 写指定单元的显示RAM  read1621读出指定单元的RAM

上一页123456...13下一页
上一页下一页
上海霖叶微电子有限公司    电话:021-64788392    传真:021-64788625    邮编:201101
地址:上海市中春路8888弄47号