当前位置:新励学网 > 秒知问答 > 段码LCD液晶屏应该怎么驱动

段码LCD液晶屏应该怎么驱动

发表时间:2024-07-11 16:00:06 来源:网友投稿

大家平常在生活之中见到最多的可能就是段码液晶屏了,它有着普通数码管的特征,又有着点阵液晶屏的特征,已经固定的图形,既省成本而且又好看,那么我们今天来一起试一试!

首先大家都不要以为使用单片机来驱动,就以为是断码屏直流驱动的了,其实呢,段码屏它是交流驱动的,什么是交流驱动呢?例如矩形波、正弦波等等。大家可能会经常的使用驱动芯片来玩,例如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屏的驱动方法

只要模拟出以上的波形,你的液晶屏就已经成功了一大半。

voiddisplay_sub(u8y)//lcddisplaysubroutine

{

switch(y)//4*com,VDDand-VDDLCDdisplay,so8timebaseinterruptonesacnperiod

{

case1:

{com1_output_high();break;}

case2:

{com1_output_low();break;}

case3:

{com2_output_high();break;}

case4:

{com2_output_low();break;}

case5:

{com3_output_high();break;}

case6:

{com3_output_low();break;}

case7:

{com4_output_high();break;}

case8:

{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口输出时的函数

staticvoidseg1_output(void)//seg1outputsubroutine

{

if(1==(LCDPluseStep%2))//com_pulseisodd,comoutputhigh(VDD)

{

if(0==(DisplayCode1&0x10))

{SEG1=1;}

else

{SEG1=0;}

}

else//com_pulseiseven,comoutputlow(VSS)

{

if(0==(DisplayCode1&0x10))

{SEG1=0;}

else

{SEG1=1;}

}

}

复制代码

必须时刻让SEG电平跟COM的电平成反向,那么驱动段式液晶就不会有多大的难度了

段码液晶屏:http://www.hzjingxian.com

文章原创于http://www.hzjingxian.com/zixun/xydt/822.html,转载请注明出处

免责声明:本站发布的教育资讯(图片、视频和文字)以本站原创、转载和分享为主,文章观点不代表本网站立场。

如果本文侵犯了您的权益,请联系底部站长邮箱进行举报反馈,一经查实,我们将在第一时间处理,感谢您对本站的关注!