- 积分
- 257
- 下载分
- 分
- 威望
- 点
- 原创币
- 点
- 下载
- 次
- 上传
- 次
- 注册时间
- 2013-7-19
- 精华
|
马上注册,获取阅读精华内容及下载权限
您需要 登录 才可以下载或查看,没有帐号?注册
x
2串LED背光的液晶屏需要超过6V的起辉电压,在3.3V-5V的单片机使用中需要升压才能点亮,若采用规范制式电路和器件来驱动会很嫌麻烦。但是你若不耻引用俺的招式,就会一下子简单易行、轻松愉快的搞定。
多次的科学实验证明了第一图最为简易而且靠谱。过亮时需要通过代码调整输出方波空宽比,详细运用尽可参见STC之PWN设置说明。
波形显示:脉冲周期180uS、上为LED端波形,其直流幅值4,8V+2.2V脉冲、下为STC的输出端波形波幅4.1V,空宽比4:2。
在电池供电时二极管压降损耗不能忽略,可考虑加3极管提升效率。
双口同步驱动减低损耗。
有的屏方便引出中点连线的话更为简单,这时需要电阻限流。
需要多倍升压时的电路,2口互为反相。但驱动电流小、效率低。
若为STC单片机而且有PWM功能则用以下代码就可用P2.7直接通过电容和二极管驱动背光。
void PWM_Init(void) //算法为f = fosc/12/256
{ 电脑A_USE_P24P25P26P27(); //切换输出引脚
CCON = 0; //初始化电脑A控制寄存器
电脑A_CLK_12T(); //fosc/12
电脑A_PWM2 = 0x00; //电脑A模块2工作于8位PWM,
CCAP2H = CCAP2L = 0xb0; //0x80时输出对称方波,增减可调空宽比。
CCAPM2 = 0x42; //电脑A模块2为6位PWM模式
CR = 1; //电脑A定时器开始工作 }
若单片机没有PWM功能,可用定时器间断来翻转I\O口驱动背光。
(若单片机没有推挽输出功能,则还需要加推挽输出管。)
timer0()interrupt 3 using 1
{ TR1 = 0;
TL1 = 0x00; //重设定时初值
TH1 = 0xC4; //重设定时初值
TR1 = 1; //定时器1开始计时
LCD_BG=~LCD_BG; }
void main()
{ P4M0 =0x10;
P3M0=0x20;
AUXR &= 0xBF; //定时器时钟12T模式
TMOD &= 0x0F; //设置定时器模式
TMOD |= 0x10; //设置定时器模式
TL1 = 0x00; //设置定时初值
TH1 = 0xC4; //设置定时初值
EA=1; //处理器开间断*/
ET1=1; //T0开间断*/
TF1= 0; //清除TF1标志
TR1 = 1; //定时器1开始计时
。。。。。
LED属于高速器件,这里用到5.5Khz,效果狠好、效率也高,还便于用较小电容驱动,蛮有利。
这彩屏实际观感比图片表达的要好很多。只是1.8寸小了点,达给低端单片机 还是很可以的。若用到俺的“flash”招式,还可以意外的“牛X”。
若你的实验板子是低存储空间的便宜芯片,也别泄气,参看俺的招式,或可以让这个屏有更多的发挥机会。
图为512RAM内存14K程序空间的IRC15W415的驱动情况,因为扩了flash,居然也给可以用彩图字符显示动态数据,和多样的彩图界面。
本文来自:头条号数码之家
|
|