① 本人初次使用HT1621B驱动4位8段LCD,请问高手用单片机怎样控制其中的D0~D3,A0~A5各表示意思谢谢
D0-D3是显示数据,1显示0不显示,A0-A5是芯片内置的RAM地址。
1621B最多带32SEGx4COM,128段。显示数据与显示内容是这样对应的:一个8位二进制数对应2根SEG线上的8个段码,1为显示,0不显。
例如seg0上的内容是ABCD四个段码,SEG1上的内容是EFGH四个段码,背电极COM上,C0连AE2个段码,C1连BF,C2连CG,C3连DH,按此显示逻辑输入“01100011”时,高4位对应SEG1,低4位对应SEG0,将同时显示FGAB四个段码。
主要特点编辑
1、工作电压2.4~ 5.2V。
2、内嵌256KHz RC 振荡器。
3、可外接32KHz晶片或256KHz频率源输入。
4、 可选1/2或1/3偏压和1/2 1/3 或1/4 的占空比。
5、片内时基频率源。
6、 蜂鸣器可选择两种频率。
7、节电命令可用于减少功耗。
8、内嵌时基发生器和看门狗定时器WDT。
9、 时基或看门狗定时器溢出输出。
10、 八个时基/看门狗定时器时钟源。
11、 一个32*4 的LCD驱动器。
12、 一个内嵌的32*4 位显示RAM 内存。
13、 四线串行接口。
14、 片内LCD 驱动频率源。
15、软件配置特征。
16、 数据模式和命令模式指令。
17、 三种数据访问模式。
18、提供VLCD管脚用于调整LCD操作电压。
② 单片机直接驱动段码LCD,有的段亮,有的段暗怎么回事
应该是驱动能力不足造成的,可以加驱动电路。也有可能是你的延时时间不对,有的延时很长,有的很短!
③ 单片机直接驱动LCD液晶屏
利用视觉暂留,采用分段扫描方式。用定时器产生频率信号给com脚,再依次给需要显示段对应的pin脚电平信号。
④ LCD段码屏可以不用驱动芯片,直接单片机驱动吗
段码屏可以直接用单片机驱动,但是要选有自带液晶驱动功能的单片机才行。 目前单片机直接驱动的应用越来越多了,特别是用于民用产品,毕竟少了一颗驱动芯片,成本降低了。水、电、气三表的液晶屏基本都是直接单片机驱动。
⑤ 段码LCD液晶屏应该怎么驱动
大家平常在生活之中见到最多的可能就是段码液晶屏了,它有着普通数码管的特征,又有着点阵液晶屏的特征,已经固定的图形,既省成本而且又好看,那么,我们今天来一起试一试!
首先,大家都不要以为使用单片机来驱动,就以为是断码屏直流驱动的了,其实呢,段码屏它是交流驱动的,什么是交流驱动呢?例如矩形波、正弦波等等。大家可能会经常的使用驱动芯片来玩,例如HT1621等等,但是有一些段式屏的IO口是比较少的,或者说是IO口充足的情况之下,也懒得在再去写控制器的驱动了。但是,IO的模拟驱动,段式液晶是有一个前提条件的,就是IO必须要是三态,
为什么?下面我们就一起细细的道来:
第一步:段码液晶屏最重要的参数:占空比、工作电压、偏压比。这三个参数都是非常重要的,都必须要满足。
第二步:驱动的方式:我们根据 LCD 的驱动原理可以知道,LCD的像素点上面只能够加上 AC的电压,LCD显示器的对比度则是由 COM脚上的电压值减去 SEG 脚上的电压值来决定,当这个电压差在大于 LCD 饱和电压时就能够打开像素点,小于 LCD 阈值电压时就能关闭像素点了,LCD 型的MCU 已经由内建的 LCD 驱动电路自动产生出LCD驱动信号了,因此只需要 I/O 口能仿真输出该驱动的信号,就能够完成 LCD 的驱动了。
段码液晶屏主要是有两种引脚,COM和SEG,和数码管比较像,但是,压差必须要是交替变化的,例:第一时刻是正向的3V,那么第二时刻就必须要是反向的3V,注意一点,如果你给段码液晶屏通直流电,那么不用多久这个屏幕就会报废,所以千万要注意。下面我们就来考虑如何模拟COM口的波形,我们以1/4D,1/2B为例子:
段码LCD屏的驱动方法
只要模拟出以上的波形,你的液晶屏就已经成功了一大半。
void display_sub(u8 y) //lcd display subroutine
{
switch(y) //4*com,VDD and -VDD LCD display,so 8 timebase interrupt one sacn period
{
case 1:
{com1_output_high();break;}
case 2:
{com1_output_low();break;}
case 3:
{com2_output_high();break;}
case 4:
{com2_output_low();break;}
case 5:
{com3_output_high();break;}
case 6:
{com3_output_low();break;}
case 7:
{com4_output_high();break;}
case 8:
{com4_output_low();break;}
default:
{LCDPluseStep=0;
get_display_code(AD_Value,KeyScanRetVal);
break;}
}
}
复制代码
如上图代码所示,定时到2ms,让4个COM交替的输出波形就可以了。
文章转载于LCD液晶屏:http://www.hzjingxian.com,转载请注明出处
同时我们还要注意,在COM的输出较高的时候,如果要屏幕亮,那么SEG就要输出低,那么在COM输出低的时候,SEG就要输出高了,保证COM和SEG的压差大于1/2B工作电压就可以正常显示了
下面我们看其中一个com口输出时的函数
static void seg1_output(void) //seg1 output subroutine
{
if(1 == (LCDPluseStep%2)) //com_pulse is odd,com output high (VDD)
{
if(0 == (DisplayCode1&0x10))
{SEG1=1;}
else
{SEG1=0;}
}
else //com_pulse is even,com output low (VSS)
{
if(0 == (DisplayCode1&0x10))
{SEG1=0;}
else
{SEG1=1;}
}
}
复制代码
必须时刻让SEG电平跟COM的电平成反向,那么驱动段式液晶就不会有多大的难度了
段码液晶屏:http://www.hzjingxian.com
文章原创于http://www.hzjingxian.com/zixun/xydt/822.html,转载请注明出处
⑥ 段码LCD液晶屏应该怎么驱动
段码LCD液晶屏的驱动电压一般为3-5V,段码屏是微功耗产品,电流为10微安左右。
线路图可以参考HT1621B
线路图仅供参考