- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
最简单PWM技术应用--渐明渐暗的LED灯.
浅谈最简单PWM技术应用--渐明渐暗的LED灯:
控制简单的LED灯貌似没什么难度,但是你会不会感觉到太单调,总是同一个频率在闪烁,总是同一个亮度在闪烁。大家有否想过能让LED灯由暗逐渐变亮,然后再由亮变暗该从什么地方入手呢?这里就不得不提到PWM技术。
这里着重注意最后面对所给完整程序的分析。
在开始我们的工程之前,首先来了解一个概念:PWM。
PWM是脉冲宽度调制的英文单词的缩写。脉冲宽度调制(PWM)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。脉宽调制是开关型稳压电源中的术语。这是按稳压的控制方式分类的,除了PWM型,还有PFM型和PWM、PFM混合型。脉宽调制式开关型稳压电路是在控制电路输出频率不变的情况下,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。
读起来有点晦涩难懂。其实简单的说来,PWM技术就是通过调整一个周期固定的方波的占空比,来调节输出电压的平均当电压,电流或者功率等被控量。我们可以用个一水龙头来类比,把1s时间分成50等份,即每一个等份20ms。在这20ms时间里如果我们把水龙头水阀一直打开,那么在这20ms里流过的水肯定是最多的,如果我们把水阀打开15ms,剩下的5ms关闭水阀,那么流出的水相比刚才20ms全开肯定要小的多。同样的道理,我们可以通过控制20ms时间里水阀开启的时间的长短来控制流过的水的多少。那么在1s内平均流出的水流量也就可以被控制了。
当我们调整PWM的占空比时,就会引起电压或者电流的改变,LED的明暗状态就会随之发生相应的变化,听起来好像可以通过这种方法来实现我们想要的渐明渐暗的效果。让我们来试一下吧。
大家都知道人眼有一个临界频率,当LED的闪烁频率达到一定的时候,人眼就分辨不出LED是否在闪烁了。为了让我们的LED在变化的过程中,我们感觉不到其在闪烁,可以将其闪烁的频率定在50Hz以上。同时为了看起来明暗过渡的效果更加明显,我们在这里定义其变化范围为0~99(100等分).即最亮的时候其灰度等级为99,为0的时候最暗,也就是熄灭了。
于是乎我们定义PWM的占空比上限为99, 下限定义为0。
#define LED_PWM_LIMIT_MAX 99
#define LED_PWM_LIMIT_MIN 0
假定我们LED的闪烁频率为50Hz,而亮度变化的范围为0~99共100等分。则每一等分所占用的时间为 1/(50*100)=200us 即我们在改变LED的亮灭状态时,应该是在200us整数倍时刻时。在这里我们用单片机的定时器产生200us的中断,同时每20ms调整一次LED的占空比。这样在20ms *100=2s的时间内LED可以从暗逐渐变亮,在下一个2s内可以从亮逐渐变暗,然后不断循环。
由于大部分的内容都可以在中断中完成,主函数中除了初始化之外,就是一个空的死循环。
下面附完整程序代码,然后具体分析:
#includereg52.h
#define LED P1 //定义LED接口
#define uchar unsigned char
#define uint unsigned int
#define LED_ON() LED = 0x00 ; //所有LED亮
#define LED_OFF() LED = 0xff ; //所有LED熄灭
Uchar TimeCounter = 0 ; //中断计数
bit LedDirection = 0 ; //LED方向控制 0:渐亮 1:渐灭
char LedPWMCounter = 0 ; //LED占空比
char PWMCounter = 0 ; //占空比
void Timer0Init(void) //定时器初始化
{
TMOD=0x01; //定时器0工作方式1
TH0=0xff ; //定时器初始值(200us中断一次)
TL0=0x47 ;
EA=1;
ET0=1;
TR0=1;
}
void main()
{
Timer0Init();
while(1);
}
void Time0Isr(void) interrupt 1
{
static uint PWMCounter = 0 ; //声明静态变量的只能被初始化一次
TH0=0xff ; //定时器重新赋初值
TL0=0x47 ;
TimeCounter++;
if(TimeCounter 100) //每20MS调整一下LED的占空比
{
TimeCounter = 0 ;
//如果
您可能关注的文档
- 最有效的windows系统修复与优化方法..doc
- 最有效的时间管理..doc
- 最有教育意义的动画片排行榜..doc
- 最有用的中文成语..doc
- 最权威最齐全的PCR汇总及其原理,程序..doc
- 最标准工程预算表,非网络..doc
- 最有用的真假水晶鉴别法..doc
- 最标准最完善的物业《管理规约》范文..doc
- 最流行的100个管理词汇..doc
- 最流行的5大网站Web服务器开源日志分析工具..doc
- 2025年传统企业数字化转型案例精选与未来趋势.docx
- 2025年全球钠离子电池产业链上下游企业合作模式白皮书.docx
- 2025年新能源电动叉车租赁在电子元器件物流市场拓展策略研究.docx
- 智慧医院建设现状分析:2025年信息化升级路径探索报告.docx
- 2025年农业机械化应用报告:智慧农业数据平台助力农机装备智能化升级.docx
- 激光雷达固态化在智能安防2025年成本控制策略分析.docx
- 2025年医疗影像AI诊断技术在神经影像领域的应用前景报告.docx
- 餐饮行业2025年供应链食品安全风险评估与预警报告.docx
- 2025年绿色建筑示范项目资金申请与绿色建筑项目风险评估报告.docx
- 跨境电商平台用户流失原因及解决方案分析.docx
最近下载
- 成本费用管理制度(最终版).pdf VIP
- 3海港总体设计规范_培训讲义-航道、锚地分析报告.pdf VIP
- 电力设备预防性试验规程QCSG114002-2011版资料.doc VIP
- Legally Blonde Scripts 律政俏佳人(中英对照).pdf VIP
- 浙江省消防技术规范难点问题操作技术指南-2025修订稿(定稿).pdf VIP
- 中华人民共和国民法典系列第七编侵权责任解读PPT课件.pptx VIP
- OWASP大语言模型人工智能应用Top10安全威胁2025.docx
- 530601-高职工商企业管理专业教学标准.pdf VIP
- 种植土覆土绿化施工方案.docx
- 2025年阿里云客服专项客服条件检测认证考试试题及答案.docx VIP
文档评论(0)