登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
51单片机论坛
›
LED亮度控制
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版
LED亮度控制
[复制链接]
5110
1
ad***
管理员
发表于 2012-9-2 23:45:43
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
LED亮度控制的学习
本来想用52
单片机
定时器2来写这几个程序,但是对52的定时器2不太熟悉,就依然用了定时器0。
学习中参考了
论坛
上第一届比赛的帖子, 在此谢谢电子工程师之家论坛。
使用的是论坛上的学习板
1.有些灯亮 有些灯暗
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dm=P1^4;
sbit wm=P1^5;
sbit led_cs=P1^6;
unsigned char k=0;
init()
{
TMOD = 0x02; //定时器0,工作方式2,自动重装
TH0 = 256-50;
TL0 = 256-50;
ET0 = 1;
EA = 1;
TR0 = 1;
}
time0() interrupt 1 using 0
{
k++;
}
main()
{
dm=0;
wm=0;
led_cs=1;
init();
while (1)
{
while ( k<20)
{
P0 = 0x00;
}
while ( k>=20&&k<=255)
{
P0 = 0x55;
}
}
}
说一下编程思想:程序运行后,定时0开始工作(主要任务是 使 k增1)当k小于20的时候所用等全亮,当k大于等于20且小于255的时候灯单数熄灭,双数继续亮。
由于while ( k>=20&&k<=255)
{
P0 = 0x55;
}
这段程序占用的时间比while ( k<20)
{
P0 = 0x00;
}多
所以单数灯熄灭的时间比亮的时间上,整体上就比较暗。同时由于双数灯一直都亮,整体上就比较亮。
学习中想过会不会 两 个while()程序段都不运行,其实不会,因为当k值增到255的时候再加1就变为0了,就会进入第一个while()程序段中
2.所有的LED由暗变亮
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dm=P1^4;
sbit wm=P1^5;
sbit led_cs=P1^6;
uchar m=0;
time0init()
{
TMOD = 0x02; //定时器0,工作方式2,自动重装
TH0 = 256-50;
TL0 = 256-50;
ET0 = 1;
EA = 1;
TR0 = 1;
}
time0() interrupt 1 using 0
{
m++;
}
void main()
{
uchar k= 0;
dm=0;
wm=0;
led_cs=1;
time0init();
while(1)
{
k = 0;
while(k!=255)
{
if( m == 0) // 点亮
{
P0 = 0x00;
}
if(m== k) // 熄灭
{
P0= 0xff;
}
if( m== 255)
{
k++;
}
}
}
在这个程序中运用的原理和上边程序的原理一样(当亮的时间(P0口为0的时间)比暗的时间(P0口为1的时间)短时LED灯就比较暗,反之就比较亮)
要实现动态的变化(由暗变亮)就需要让开始的时候暗,随着时间的变化增亮
程序中刚开始m值很容易就等于k值 ,但是随着k值的增加m值要等于k值就需要一定的时间了,即为LED由亮着变为熄灭需要时间长了。
在此也请教一下各位52 定时器2的使用方法 谢谢
[ 此贴被电子隐者在2009-07-18 14:35重新编辑 ]
定时器
相关帖子
永兴牌DYB50电压力锅原理与维修
三角牌YWS-65型电压力锅原理与维修
哪位高手哪位高手帮我看一下这个程序,用定时器0的CTC模式产生方波,波形从PB3口输出
PIC单片机快速入门(新手必读)
设计单片机硬件系统应遵循的原则
51单片机入门教程源码,猿始部落官方代码正式版,第四课,定时器使用。
为什么我用T1定时器比T0定时器,LED要闪烁快很多呢?
基于555定时器的简易频率-电压转换电路
定时器怎么不走了
请教定时器初值计算问题,小白
举报
回复
1 个评论
meigu***
新手上路
发表于 2013-3-9 12:22:17
|
显示全部楼层
采用了PWM原理
举报
回复
支持
反对
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
数显驱动器原厂-数显LED显示驱动芯片VK1620
VK1620B是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、 数据锁
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
产品品牌:永嘉微电/VINKA 产品型号:VK1618 封装形式:SOP18/DIP18 概述 VK161
更多
精华推荐
抗干扰LED数码管显示屏驱动芯片/3线串行接
抗干扰能力强/点阵数显LED屏驱动/数码管驱
可支持14×4的点阵LED显示面板数码管LED驱
数显驱动器原厂-数显LED显示驱动芯片VK1620
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
VK1616 SOP16/DIP16点阵LED数显驱动芯片/数
点阵数显驱动芯片/LED数码管显示屏驱动VK16
数显驱动电路LED显示驱动芯片VK1650 SOP16/
更多
社区学堂
抗干扰LED数码管显示屏驱动芯片/3线串
抗干扰能力强/点阵数显LED屏驱动/数码
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
可支持14×4的点阵LED显示面板数码管LED驱
VK1624是一种数码管或点阵LED驱动控制专用芯片,内部集成有3线串行接口、数据锁 存
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表