- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《高级流水灯--水滴效果(渐变带拖尾效果)实现和讲解.》.pdf
简介 简介 简简介介 学习嵌入式第一个例子通常都是控制一个 LED 亮灭,然后是花样繁多的流水灯,但不管灯 的花样如何变化,单个LED 的亮度没有变化,只有亮、灭两个状态,本章我们实现如何控制 LED 的亮度。 1 什么是PWM 1 什么是PWM 11 什什么么是是PPWWMM 脉冲宽度调制(Pulse Width Modulation,简称PWM),是利用微处理器的数字输出来 对模拟电路进行控制的一种技术。在本章的应用中可以认为PWM 就是一种方波。比如图1: 图1 方波 是周期为10ms,占空比为 60%的PWM。 占空比:高电平在一个周期之内所占的时间比率。 2 硬件设计 2 硬件设计 22 硬硬件件设设计计 在例说51 单片机的第三章,我们讲过如何控制开发板上 LED 的亮灭。首先译码器输出端 LEDS6为低,T10 导通,给8 个LED 供电,然后通过缓冲器8 个输出端 BD0~BD7的控制 LED 的亮灭(低亮高灭)。 图2 LED 硬件连接 如果BD 口输出高低不断变化,则 LED 会闪烁;如果这种高低电平变化非常快,由于人的视觉 暂留现象,LED 就会出现不同的亮度。 3 软件设计 3 软件设计 33 软软件件设设计计 3.1 PWM 能否控制亮度 3.1 PWM 能否控制亮度 33..11PPWWMM 能能否否控控制制亮亮度度 下面我们就用实践验证PWM 是否能够控制LED 的亮度,测试代码如下: 程序清单L1: 验证PWM 能否控制LED的亮度 程序清单L1: 验证PWM 能否控制LED的亮度 程程序序清清单单LL11:: 验验证证PPWWMM 能能否否控控制制LLEEDD的的亮亮度度 #include reg52.h #include my_type.h #include hw_config.h void main(void) { u8 i = 0; //使能独立 LED 的供电,即LEDS6 输出低电平 LEDEN = 0; ADDR0 = 0; ADDR1 = 1; ADDR2 = 1; ADDR3 = 1; //第一个 LED 亮 P0 = 0xFE; while(1) { for(i=0; i250; i++) //第22 行 { if(i10) { P0 = 0xFD; //第二个灯亮 } else { P0 |= 0x02; //第二个灯灭 } } //第 32 行 } } L1(22-32):这段代码实现P0.1 输出占空比为96%的方波,而 P0.0 恒为低。 P0.1 输出如图3 所示(受纸张限制,图中高低电平长度比例和实际有偏差)。 图 3 下载验证:从开发板上可以看到运行效果,D1 比D2亮。(这里说明一点:当P0输出低电平时, LED 亮,所以,PWM 的占空比越小越亮)。 3.2 产生 8 个亮度级别 3.2 产生 8 个亮度级别 33..22 产产生生 88个个亮亮度度级级别别 3.1 节的例子证实了我们的设想,PWM 可控制 LED 的亮度,下面我们设计几组占空比不 同的PWM,看看对 LED 亮度的控制效果。代码如下: 程序清单L2:不同占空比对LED亮度的控制 程序清单L2:不同占空比对LED亮度的控制 程程序序清清单单LL22::不不同同占占空空比比对对LLEEDD亮亮度度的的控控制制 #include reg52.h #include hw_config.h #include my_type.h //亮度级别表 code u8 LightLevel[8]={0,1,2,4,8,16,32,64}; void main(void) { u8 i = 0; u8
您可能关注的文档
最近下载
- 一种新型功交换式能量回收装置.pdf VIP
- 生猪屠宰兽医卫生检疫人员考试题库答案.pdf VIP
- 生猪屠宰兽医卫生检疫人员考试题及答案.doc VIP
- 《仲景食品公司应收账款管理现状、问题及对策》6000字.doc VIP
- 2024《仲景食品公司应收账款精益化管理研究》9100字.docx VIP
- 2024《调味配料企业应收账款管理问题及对策—以仲景食品公司为例8600字》.docx VIP
- 2024《企业应收账款管理的现状分析—以仲景食品公司为例》8400字.doc VIP
- 生猪屠宰兽医卫生检验人员理论考试题库及答案.pdf VIP
- 仲景食品有限公司应收账款风险分析与防范.docx VIP
- 仲景食品有限公司应收账款风险分析与防范.docx VIP
文档评论(0)