欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    51单片机(呼吸灯~)C语言版.doc

    • 资源ID:584600       资源大小:274.50KB        全文页数:16页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    51单片机(呼吸灯~)C语言版.doc

    |基于单片机与 PWM 的呼吸灯设计实训指导教师: 班 级: 设 计 人姓名: 设 计 日 期: 设 计 地 点: 完 成 时 间: 摘 要|本设计是基于单片机的原理与接口设计,采用单片机 I/O 口,加以 C语言编程实现 LED 渐亮再渐暗类似人的呼吸一样的效果。关 键 词AT89C51,PWM(脉宽调制)一、设计要求:呼吸灯就是让 LED 灯的闪烁像呼吸一样,时呼时吸,时亮时暗,利用 LED 的余辉和人眼的暂留效应,看上去和人的呼吸一样。二、设计原理:用 C 语言编程实现 PWM(脉宽调制)输出驱动 LED,逐渐增加 PWM 的占空比从而实现 LED 模拟呼吸的过程,即渐亮再渐暗再渐亮再渐暗如此往复,再利用 LED 的余辉和人眼的暂留效应,看上去就和人的呼吸一样。三、整体方案设计8 个 LED 按照顺序逐个实现呼吸效果。加以其他闪烁花样增加更炫彩的效果。四、实验元件及器材(1)元件: LED(发光二极管) 8 个1K 电阻 8 个1nf 电容 2 个晶振 1 个AT89C51 芯片 1 个|(2)器件:Atmega128 开发板 1 块计算机 1 台5、硬件原理(1)主电路:8 个 LED 分别连接 AT89C51 的 P1 口,使用共阳方式,并加以 1k 的电阻接入电源。(2)时钟电路:外部时钟方式是使用外部振荡脉冲信号。|6、软件设计及系统仿真调试(1)调试方法:利用 keil 软件进行 C 语言程序编写及调试,再利用Proteus 仿真软件进行仿真实验。(2)调试过程所遇问题:1、由于呼吸灯的程序在仿真软件 Proteus 中实现的效果不明显,很难辨别 LED 是否具有呼吸的效果。所以边用 keil 调试程序边用 STC 烧写软件直接写入开发板,从而很明显看出 LED 是否具有呼吸效果;2、程序运行时,出现 LED 闪烁过快,由于人眼的暂留效应看似 LED 全部一直亮着,经调试,修改延时时间,实现呼吸效果。七、结论与心得在本次设计中,C 语言程序在开发板中得以实现应有的功能。在调试过程中,发现很多问题都是由于不细心导致的,因此在以后的设计方案中,要集中精力,莫粗心大意。再者就是知识量的不足,虽然是一个小小的设计方案,但是查阅了很多相关资料,在日后,要多充足自己的知识量,保证 C 程序的编写质量。|参考文献1郭天祥, 新概念 51 单片机 C 语言教程 ,电子工业出版社,2009年 1 月2徐爱钧,单片机高级语言C51应用程序设计,电子工业出版社,2000年5月附件 A:呼吸灯设计电路图|附件 B:C 语言程序清单#include /*-定义单片机引脚-*/sbit LED0=P10;sbit LED1=P11;sbit LED2=P12;sbit LED3=P13;sbit LED4=P14;sbit LED5=P15;sbit LED6=P16;sbit LED7=P17;void Delay(unsigned int t); /函数声明unsigned int z,y;void main (void)/主函数|unsigned int CYCLE=500,PWM_LOW=0;/定义周期并赋值while (1) /主循环/*-整排 LED 灯呼吸-*/P1=0x00;Delay(500); /加延时,可以看到熄灭的过程(下面程序同理)for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) /与逐渐变亮相反的过程P1=0x00; /点亮 LED Delay(PWM_LOW);|P1=0xff; /熄灭 LEDDelay(CYCLE-PWM_LOW); /主循环中添加其他需要一直工作的程序,延时长度,600 次循环中从 599 减至 1/*-第一颗 LED 灯呼吸-*/LED0=1;Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) LED0=0;Delay(PWM_LOW);LED0=1;|Delay(CYCLE-PWM_LOW); /*-第二颗 LED 灯呼吸-*/LED1=1;Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) LED1=0;Delay(PWM_LOW);LED1=1;Delay(CYCLE-PWM_LOW);|/*-第三颗 LED 灯呼吸-*/LED2=1;Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-)LED2=0;Delay(PWM_LOW);LED2=1;Delay(CYCLE-PWM_LOW); /*-第四颗 LED 灯呼吸-*/

    注意事项

    本文(51单片机(呼吸灯~)C语言版.doc)为本站会员(小**)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开