51单片机(呼吸灯)C语言版要点

上传人:siy****11 文档编号:43936988 上传时间:2021-12-05 格式:DOC 页数:16 大小:250.50KB
收藏 版权申诉 举报 下载
51单片机(呼吸灯)C语言版要点_第1页
第1页 / 共16页
51单片机(呼吸灯)C语言版要点_第2页
第2页 / 共16页
51单片机(呼吸灯)C语言版要点_第3页
第3页 / 共16页
资源描述:

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

1、基于单片机与PW啲呼吸灯设计 实训指导教师 : 班 级: 设 计 人: 设 计 日 期: 设 计 地 点: 宀 完 成 时 间: (1)元件:LED (发光二极管) 1K Q电阻 8个 8个 本设计是基于单片机的原理与接口设计,采用单片机 I/O 口,加以 C 语言编程实现LED渐亮再渐暗类似人的呼吸一样的效果。 关键词 AT89C51,PWM水宽调制) 一、设计要求: 呼吸灯就是让LED灯的闪烁像呼吸一样,时呼时吸,时亮时暗,利用 LED的余辉和人眼的暂留效应,看上去和人的呼吸一样。 二、设计原理: 用C语言编程实现PWM脉宽调制)输出驱动LED逐渐增加PWM勺占空 比从而实现LED模拟呼吸

2、的过程,即渐亮再渐暗再渐亮再渐暗如此往 复,再利用LED的余辉和人眼的暂留效应,看上去就和人的呼吸一样。 三、整体方案设计 8个LED按照顺序逐个实现呼吸效果。加以其他闪烁花样增加更炫彩 的效果。 四、实验元件及器材 1nf 电容 2 个 晶振 1 个 AT89C51 芯片 1 个 (2)器件: Atmega128 开发板 1 块 计算机 1 台 五、硬件原理 (1)主电路:8个LED分别连接AT89C51的P1 口,使用共阳方式,并加以 1kQ的电阻接入电源。19 g 闿 TE LLOVV. 1k! b cTEXF a R2 - l 卜 1 k - R3 r 1 卜 1 k k R5 1 k

3、 - XT- R6 - 1 k - - - ;TEXT- R7 , 1k- R8 gg-YELLOW. -YELLOW. YELLOW. J-YELLOW. -YELLOW. g-YELLOW. LED-YELLOW. 迫 30 5 6 7 B (2)时钟电路:外部时钟方式是使用外部振荡脉冲信号 Inf 丨 :JE: J - I 1 r - r - r CRYSTAL - U1 D1 C2 1R PSFr .0T.2.3.4.5E7 11 41- 1- 11 1TEH: 六、软件设计及系统仿真调试 (1)调试方法:利用keil软件进行C语言程序编写及调试,再利用Proteus 仿真软件进行仿真

4、实验。 ( 2)调试过程所遇问题: 1、 由于呼吸灯的程序在仿真软件 Proteus 中实现的效果不明显, 很难辨别 LED是否具有呼吸的效果。所以边用 keil调试程序边用STC烧写软件直接 写入开发板,从而很明显看出 LED是否具有呼吸效果; 2、 程序运行时,出现LED闪烁过快,由于人眼的暂留效应看似 LED全部一 直亮着,经调试,修改延时时间,实现呼吸效果。 七、结论与心得 在本次设计中,C语言程序在开发板中得以实现应有的功能。在调试 过程中, 发现很多问题都是由于不细心导致的, 因此在以后的设计方案中, 要集中精力,莫粗心大意。再者就是知识量的不足,虽然是一个小小的设 计方案,但是查

5、阅了很多相关资料,在日后,要多充足自己的知识量,保 证C程序的编写质量。 参考文献 1 郭天祥,新概念51单片机C语言教程,电子工业,2009年1月 2 徐爱钧,单片机高级语言 C51 应用程序设计,电子工业, 2000 年5月 附件A:呼吸灯设计电路图 rtj-YELLWV LED-fELLJOW 19 Sz 31 XFAL1 PO 0/ADD F鮎阿1 PD 2ffiD3 XTA12 毗 ZflD3 P0.4/AD4 PO .6/ADS PO RST F&.7/AD7 HZ 於 Pkt損 卩 2.2/A1O PSEM Pi 3/A11 吃肿住 P2.6/A13 PS.6/A14 P27/A

6、15 PtO PK1 P3 0用) P3J/TXD Pt.3 P3.3/iMT0 PLS PJJVINn Fl .4 P3.4JTD PI .5 P3.5/T1 PI ,6 P3.6WVR Pt.7 P3.7ffiD 9 1 7 芦 ra忡 :TF?T 2i 35 21 22 23 26 4 9 H 10 T 11 _1 . 15 卫 17 附件 B: C语言程序清单 #include /* - 定义单片机引脚 - */ sbit LED0=P1A0; sbit LED 仁 P1A1; sbit LED2=P1A2; sbit LED3=P1A3; sbit LED4=P1A4; sbit L

7、ED5=P1A5; sbit LED6=P1A6; sbit LED7=P1A7; void Delay(unsigned int t); / 函数声明 unsigned int z,y; void main (void)/ 主函数 unsigned int CYCLE=500,PWM_LOW=0;/ 定义周期并赋值 while (1) / 主循环 - 整排LED灯呼吸 - P1=0 x00;/* */ for(PWM_LOW=1;PWM_LOW0;PWM_LOW-与逐渐变亮相反 的过程 P1=0 x00; / 点亮 LED Delay(PWM_LOW); P1=0 xff; / 熄灭 LED

8、 Delay(CYCLE-PWM_LOW); / 主循环中添加其他需要 一直工作的程序,延时长度, 600 次循环中从 599 减至 1 Delay(500); 程(下面程序同理) / 加延时,可以看到熄灭的过 /* 第一颗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-

9、) 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灯呼吸 - */ LED3=1; Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) LED3=0; Delay(PWM_LOW); LED3=1; Delay(CYCLE-

10、PWM_LOW); /* - 第五颗LED灯呼吸 - */ LED4=1; Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) LED5=0; LED4=0; Delay(PWM_LOW); LED4=1; Delay(CYCLE-PWM_LOW); /* - 第六颗LED灯呼吸 - */ LED5=1; Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) Delay(PWM_LOW); LED5=1; Delay(CYCLE-PWM_LOW); /* - 第七颗LED灯呼吸 - */ LED6=1; Delay(50

11、0); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) LED6=0; Delay(PWM_LOW); LED6=1; Delay(CYCLE-PWM_LOW);P1=0 x00; /* - 第八颗LED灯呼吸 - */ LED7=1; Delay(500); for(PWM_LOW=1;PWM_LOW0;PWM_LOW-) LED7=0; Delay(PWM_LOW); LED7=1; Delay(CYCLE-PWM_LOW); for(z=500;z0;z-) for(y=110;y0;y-); P1=0 xff; for(z=500;z0;z-) for(y=110;y0;y-); P1=0 x00; for(z=500;z0;z-) for(y=110;y0;y-); P1=0 xff; for(z=500;z0;z-) for(y=110;y0;y-); void Delay(unsigned int t) while(-t);

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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