- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五 笔段型LCD的静态驱动
单片机驱动笔段型LCD掌握笔段型LCD的静态驱动技术
图5-1 液晶显示模块 图5-2 静态驱动连接
静态驱动法是获得最佳显示质量的最基本的方法,静态驱动法的电路实现见图5-3(b)。振荡器的脉冲信号经分频后直接施加在液晶显示器件的背电极BP上,而段电极的脉冲信号是由显示选择信号A与时序脉冲通过逻辑异或合成产生,异或逻辑的真值表如表5-1所示。
当某位显示像素被显示选择时,A=1,该显示像素上两电极的脉冲电压相位相差180°,在显示像素上产生2V的电压脉冲序列,使该显示像素呈现显示特性;当某位显示像素为非显示选择时,A=0,该显示像素上两电极的脉冲电压相位相等,在显示像素上合成电压脉冲为0V,从而实现显示效果。这就是静态驱动法,驱动波形如图5-3(C)。为了提高显示的对比度,适当地调整脉冲的电压即可。
图5-3 静态驱动法原理
本次实验所用液晶显示模块为大连东显EDS801A,实物图如图5-4,图5-5为引脚图及结构图,液晶必须采用交流驱动方式。当液晶显示器的字符笔划电极与背电极(BP)呈等电位时,液晶不显示(消隐);当二者存在电位差时,液晶方可显示。通常是把两个频率与幅度相同而相位相反的方波电压分别加于笔画引出端与BP端之间,利用二者电位差来驱动该笔画字符发光。一般选择频率为50~60Hz,幅度为4~6V的方波电压。
图5-4 EDS801A实物图
图5-5 EDS801A引脚及结构图
四、实验内容
(1)焊接EDS801A外围驱动板,即在把模块各管脚引出,并在IO口和模块之间焊上限流电阻。
(2)使用单片机驱动笔段型LCD测量笔段型LCD的驱动波形信号笔段型LCD的驱动波形信号对像素点的灰度控制;
#include reg52.h
void delay_ms(unsigned int );
unsigned char Dat;
/*将EDS801A的管脚映射到IO口控制,程序中dig4a~dig4h为第四个数码管的各个段,别的以此类推,digcol,digh,digA,digs分别为EDS801A模块中数字外的控制*/
sbit com=P3^6;
.......
sbit digS=P3^5;
/*____________________*/
void init()//定时器初始化
{
TMOD=0x11;//定时器1, 16位工作方式
TR1=1; //启动定时器1
ET1=1; //打开定时器1中断
EA=1; //打开总中断
}
void display()
{
unsigned char j;
for(j=0;j100;j++)
{
digcol=com;
dig1h=com;
digh=digA=digs=com;
Dat=0xf9;//显示位
if(Dat==0xf9)
dig1bc=~com;
else
dig1bc=com;
Dat=0xa4;//显示百位
if(Dat0x01)
dig2a=com;
else
dig2a=~com;
if(Dat0x02)
dig2b=com;
else
dig2b=~com;
if(Dat0x04)
dig2c=com;
else
dig2c=~com;
if(Dat0x08)
dig2d=com;
else
dig2d=~com;
if(Dat0x10)
dig2e=com;
else
dig2e=~com;
if(Dat0x20)
dig2f=com;
else
dig2f=~com;
if(Dat0x40)
dig2g=com;
else
dig2g=~com;
if(Dat0x80)
dig2h=com;
else
dig2h=~com;
Dat=0xb0;//显示十位
if(Dat0x01)
dig3a=com;
else
dig3a=~com;
if(Dat0x02)
dig3b=com;
else
dig3b=~com;
if(Dat0x04)
dig3c=com;
else
dig3c=~com;
if(Dat0x08)
dig3d=com;
else
dig3d=~com;
文档评论(0)