《51单片机(呼吸灯)C语言版》由会员分享,可在线阅读,更多相关《51单片机(呼吸灯)C语言版(16页珍藏版)》请在人人文库网上搜索。

1、基于单片机和PWM的呼吸灯设计培训讲师:类级别:设置米名称:设定计划期间:设置米点:在时间之间:摘要信息该设计基于单片机的原理和接口,通过单片机I/O端口、c语言编程实现了LED变亮、类似人的呼吸变淡等效果。关联语AT89C51,脉冲宽度调制(PWM)一、设计要求:呼吸照明是使LED像呼吸一样闪烁,呼吸时,亮时暗,利用LED的余辉和人眼的持续性效果,使其看起来像人的呼吸。第二,设计原则:通过对PWM(脉宽调制)输出驱动器LED进行c语言编程,逐步增加PWM的工作比,LED模拟呼吸的过程,即明亮、再次变暗和再次变暗.这样往复,再次利用LED的余辉和人眼的持续性效果,看起来像是在呼吸人的呼吸。三、。

2、总体方案设计8个指示灯依次产生呼吸效果。添加其他闪烁图案以增强更加耀眼的效果。四、实验要素和设备(1)组件:8个发光二极管(LED)8个1k电阻2个1nf电容器1个晶振一个AT89C51芯片(2)设备:Atmega128开发板1块一台电脑5、硬件原理(1)主电路:8个指示灯分别连接到AT89C51上的P1端口,共双向使用,将1k的电阻连接到电源。(2)时钟电路:外部时钟方式使用外部振荡脉冲信号。6、软件设计和系统仿真调试(1)调试方法:使用keil软件进行c语言编程和调试,然后使用Proteus模拟软件进行模拟实验。(2)调试过程问题:1、呼吸灯程序在模拟软件pro teus中实现的效果不明显。

3、,因此很难分辨LED是否有呼吸的效果。因此,在使用keil调试器的同时,使用STC刻录软件直接写入开发主板,可以清楚地知道LED是否具有呼吸效果。2、如果程序运行时LED闪烁得太快,人眼挂起效果看起来LED都亮了,因此调试后修改延迟时间可以达到呼吸效果。七、结论和经验在此设计中,c语言程序在开发板中执行适当的功能。调试过程中发现很多问题都是由于粗心,以后的设计方案中要集中注意,不要粗心大意。另外,知识量不足是一个小设计,但是要多研究相关资料,以后确保自己的知识量有多大,保证c程序编写的质量。参考文献1郭天祥,新概念51单片机C语言教程,电子工业出版社,2009年1月2徐爱俊,单片机高级语言C5。

4、1应用程序设计,电子产业出版社,2000年5月附件a:呼吸灯设计电路图附件B:C语言程序列表#include/*-单芯片针脚定义- */Sbit led 0=P1 0Sbit LED1=P1 1Sbit led 2=P1 2Sbit led 3=P1 3Sbit led 4=P1 4sbit le D5=P1 5;Sbit led 6=P1 6Sbit led 7=P1 7void Delay(unsigned int t);/函数声明Unsigned int z,y;Void main (void)/主函数Unsigned int CYCLE=500,PWM _ LOW=0;/定义和分配生命。

5、周期While (1) /主循环/*-全LED照明呼吸- */P1=0x00delay(500);/添加延迟后,您可以看到关闭的过程(以下过程相同)for(PWM _ LOW=1;PWM _ LOW0Pwm _ low-)/逐渐出道的过程P1=0x00启用/LEDdelay(PWM _ LOW);P1=0xff/关闭LEDdelay(CYCLE-PWM _ LOW);/在主循环中添加必须继续工作的其他程序,以推迟长度,并将600个循环从599减少到1/*-第一个LED灯光呼吸- */led 0=1;delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)L。

6、ED0=0delay(PWM _ LOW);led 0=1;delay(CYCLE-PWM _ LOW);/*-第二个LED灯光呼吸- */LED1=1delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)led 1=0;delay(PWM _ LOW);LED1=1delay(CYCLE-PWM _ LOW);/*-第三个LED灯光呼吸- */led 2=1;delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)led 2=0;delay(PWM _ LOW);led 2=1;delay(CYCLE-PWM _ 。

7、LOW);/*-第四个LED灯光呼吸- */led 3=1;delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)led 3=0;delay(PWM _ LOW);led 3=1;delay(CYCLE-PWM _ LOW);/*-第五个LED呼吸- */led 4=1;delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)led 4=0;delay(PWM _ LOW);led 4=1;delay(CYCLE-PWM _ LOW);/*-第六个指示灯呼吸- */led 5=1;delay(500);for(PWM。

8、 _ LOW=1;PWM _ LOW0PWM_LOW -)led 5=0;delay(PWM _ LOW);led 5=1;delay(CYCLE-PWM _ LOW);/*-第七个LED呼吸- */led 6=1;delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)led 6=0;delay(PWM _ LOW);led 6=1;delay(CYCLE-PWM _ LOW);/*-第八个LED灯光呼吸- */led 7=1;delay(500);for(PWM _ LOW=1;PWM _ LOW0PWM_LOW -)led 7=0;delay(PWM _ LOW);led 7=1;delay(CYCLE-PWM _ LOW);P1=0x00for(z=500;z0;Z-)for(y=110;y0;y-);P1=0xfffor(z=500;z0;Z-)for(y=110;y0;y-);P1=0x00for(z=500;z0;Z-)for(y=110;y0;y-);P1=0xfffor(z=500;z0;Z-)for(y=110;y0;y-);Void Delay(unsigned int t)while(-t。

简易呼吸灯c语言程序,51单片机(呼吸灯)C语言版相关推荐

  1. 电子时钟单片机c语言程序,51单片机电子时钟C语言程序

    本程序基于ATM89系列单片机的电子时钟C语言程序,能显示月日时分秒,同时还能调节其值!显示方式用六个8段数码管! #include//头文件 #define uchar unsigned char/ ...

  2. pmw调光c语言程序,51单片机led灯渐变PWM调光(渐亮渐灭)C语言和汇编源程序

    ; PWM 控制 LED 灯渐亮渐灭程序 ; 适用 ME500 开发系统 ; 晶振为11.0592M ; 利用定时器控制产生占空比可变的 PWM 波 ; 按K1,PWM值增加,则占空比减小,LED 灯 ...

  3. c51数字钟c语言程序,51单片机电子时钟C语言程序

    51最基础简单易懂的单片机,差不多一个月的时间,断断续续地学习,终于算是学完了,下个目标是飞思卡尔s12x和k60 也就是ARM crotex-M4架构. 51最核心的部分,我觉得是中断的使用,一个项 ...

  4. 8255A红绿灯c语言程序,51单片机外接8255A做成的交通灯程序及PROTEUS仿真结果(附对应C语言程序).doc...

    51单片机外接8255A做成的交通灯程序及PROTEUS仿真结果(附对应C语言程序) 51单片机外接8255A做成的交通灯程序及PROTEUS仿真结果(附对应C语言程序)2010-04-21 22:0 ...

  5. 单片机交通灯数码管c语言程序,51单片机C语言实现交通灯(红绿灯)源程序.doc

    51单片机用C语言实现交通灯(红绿灯)源程序 2009-10-29 23:00 交通灯,红黄绿灯交替亮,怎样实现呢?其实就是根据单片机定时器及倒计时的程序修改. 源程序如下: /*1.程序目的:使用定 ...

  6. 单片机交通灯灯c语言程序,51单片机用C语言实现交通灯(红绿灯)源程序

    51单片机用C语言实现交通灯(红绿灯)源程序 2009-10-29 23:00 交通灯,红黄绿灯交替亮,怎样实现呢?其实就是根据单片机定时器及倒计时的程序修改. 源程序如下: /* 1.程序目的:使用 ...

  7. 单灯闪烁c语言程序,51单片机,C语言编程,控制指示灯闪烁的频率

    c51单片机,c语言编程,关于指示灯定时闪烁的. P1.0 P1.1 P1.2 P1.3上面各接有一个指示灯,P2.0接一个外接按键. 要求: 按一下按键P1.0以1Hz的频率闪烁 半周期为500ms ...

  8. 洗衣机洗涤部分c语言程序,51单片机洗衣机控制板及C语言程序

    51单片机洗衣机控制板及C语言程序,该控制板单片机采用AT89C51单片机,所设计全自动洗衣机功能有:标准洗衣.经济洗衣.单独洗衣以及排水四种洗衣等四种方式,有强洗.弱洗及运行/暂停.显示及报警功能, ...

  9. 51单片机蜂鸣器演奏《小苹果》C语言程序,51单片机C语言蜂鸣器发声生日快乐播放程序...

    <51单片机C语言蜂鸣器发声生日快乐播放程序>由会员分享,可在线阅读,更多相关<51单片机C语言蜂鸣器发声生日快乐播放程序(4页珍藏版)>请在人人文库网上搜索. 1.按键发音/ ...

  10. 单片机汉字点阵c语言程序,51单片机C语言多种点阵屏驱动程序(开发软件为keil C...

    51单片机C语言多种点阵屏驱动程序(开发软件为keil C 2016-08-23 1 0 0 暂无评分 其他 1 积分下载 如何获取积分? 51单片机C语言多种点阵屏驱动程序(开发软件为keil C ...

最新文章

  1. OpenCV读写视频文件解析
  2. 深入了解iSCSI的2种多路径访问机制
  3. MariaDB 数据库迁移
  4. 5月18发布会,这次TDSQL又有什么大动作?
  5. spring启动执行_执行器的Spring启动和安全性事件
  6. github 代理_GitHub访问提速方法
  7. 你会快速裂变顾客吗?
  8. 区块链 以太坊 每个区块可以包含多少个交易
  9. 使用Coverity进行代码检测,构建C#报错,The Web-app security checkers are fully suppored only on Windwds.
  10. 一文解读KANO模型
  11. java DFS与BFS算法
  12. Collecting Coins
  13. 方维众筹网站源码V1.71 PC+WAP+商业版
  14. 硬盘驱动安装完成,但是没有显示?
  15. React中文文档 9. 表单
  16. Java面试题大全(2021版)
  17. 基于Mysql+Servlet+JSP的作业提交系统
  18. FPGA_Verilog学习之旅(3)---VGA贪吃蛇游戏
  19. 计算方法 7.数值积分计算方法
  20. 马有千里之行,无人不能自往。人有冲天之志,无运不能自通

热门文章

  1. fiddler中文乱码解决
  2. Excel为图表添加趋势线和公式
  3. 极域电子书包课堂管理系统_朝阳群众说小康 | 从黑板课本到VR互动课堂、电子书包,朝阳的课堂如此有趣!...
  4. Java常见设计模式总结
  5. j2me游戏改成android,将j2me移植成android
  6. struts2 中 Actionsupport类的作用
  7. OD调试2----破解序列号验证程序
  8. 计算机应用教程卢湘鸿,计算机应用教程
  9. galleryview-3.0b3使用小记
  10. TigerGraph入门