




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文库 欢迎下载 石家庄铁道大学四方学院石家庄铁道大学四方学院 集中实践报告书集中实践报告书 课题名称课题名称节日彩灯控制器设计节日彩灯控制器设计 姓姓 名名吴春慧吴春慧 学学 号号20137762 系、系、 部部电气工程系电气工程系 专业班级专业班级方方 1353-2 指导教师指导教师牛晓燕牛晓燕 2016 年年 7 月月 6 日日 20132013 级级 单片机接口设计课程设计单片机接口设计课程设计 精品文库 欢迎下载 一、设计任务及要求:一、设计任务及要求: 设计任务:设计任务: 设计一个节日彩灯控制器,通过按钮控制彩灯的各种变化。 设计要求:设计要求: 1.设计 4 个按键 S0、S1、S2、S3, S0开始按此键则灯开始流动(由上而下); S1停止,按此键则停止流动,所有灯为暗; S2上,按此键则灯由上向下流动; S3下,按此键则灯由下向上流动。 2.由按键控制功能的流水灯,其中的 LED 采取共阳极接法,通过依次向连接 LED 的 I/O 口送出低电平,可实现题目要求的功能。 3.要求做出实物。 二、指导教师评语:二、指导教师评语: 三、成绩三、成绩 指导教师签名: 年 月 日 精品文库 欢迎下载 目 录 第 1 章 设计目的1 第 2 章 设计要求1 第 3 章 硬件电路设计1 3.1 系统结构框图1 3.2 STC89C52 单片机2 3.3 总电路图3 第 4 章 软件设计4 4.1 主程序设计4 4.2 LED 灯子程序设计6 4.2 延时子程序设计6 4.3 源程序7 第 5 章 结论9 参考文献10 精品文库 欢迎下载 第 1 章 设计目的 1、掌握单片机实际系统的开发步骤。 2、熟悉节日彩灯控制器的工作原理。 3、加深对单片机汇编语言的认识和理解,并会编程。 第 2 章 设计要求 1、设计 4 个按键 S0、S1、S2、S3, S0开始按此键则灯开始流动(由上而下); S1停止,按此键则停止流动,所有灯为暗; S2上,按此键则灯由上向下流动; S3下,按此键则灯由下向上流动。 2、由按键控制功能的流水灯,其中的 LED 采取共阳极接法,通过依次向连接 LED 的 I/O 口送出低电平,可实现题目要求的功能。 3、要求做出实物。 第 3 章 硬件电路设计 3.1 系统结构框图 节日彩灯控制系统主要由单片机、LED 显示器、开关及电源组成。其结构 框图如图 3-1 所示。 图 3-1 系统结构框图 八个 LED 灯显示器 开关单片机最小系统5V 电源 精品文库 欢迎下载 3.2 STC89C52 单片机 89C52 本质是一种低耗高性能的微控制器。它的主要特性是拥有 8K 字节 的程序存储空间;512 字节的数据存储空间;内带 4K 字节的 EEPROM 存储空 间和可直接使用串行口下载。此外,它还是增强型的 80C51 单片机,有 6 时钟/ 机器周期和 12 时钟/机器周期可以任意选择,同时它的指令代码完全兼容传统 80C51 单片机。 89C52 共有四个八位的并行双向口,即有 32 根输入输出口线。各口的每一 位均由锁存器、输出驱动器和输入缓冲器组成。STC89C52 芯片有 40 个引脚, 引脚图如图 3-2 所示,各引脚功能介绍如下: VCC(40 引脚):电源电压。 VSS(20 引脚):接地。 P1 端口(P1.0P1.7,18 引脚):P1 口是一个带内部上拉电阻的 8 位双向 I/O 口。P1 的输出缓冲器可驱动 4 个 TTL 负载。对端口写入 1 时,通过内部的 上拉电阻把端口拉到高电位,这是可用作输入口。P1 口作输入口使用时,因为 图 3-2 STC89C52 引脚图 精品文库 欢迎下载 有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。P1 口特点是输出锁 存器,输出时没有条件。输入缓冲,输入时有条件,即需要先将该口设为输入 状态,先输出 1。此外,P1.0 和 P1.1 是多功能的。P1.0 还可以作为定时器/计数 器 2 的外部输入端 T2。P1.1 还可以作为定时器/计数器 2 的外部控制端 T2EX。 P3 端口(P3.0P3.7,1017 引脚):P3 是一个带内部上拉电阻的 8 位双向 I/O 端口。P3 的输出缓冲器可驱动 4 个 TTL 负载。对端口写入 1 时,通过内部 的上拉电阻把端口拉到高电位,这时可用作输入口。P3 做输入口使用时,因为 有内部的上拉电阻,那些被外部信号拉低的引脚会输入一个电流。P3 口除作为 一般 I/O 口外,还有其他一些复用功能如下: P3.0-RXD,串行输入口。 P3.1-TXD,串行输出口。 P3.2-INT0,外部中断 0 的请求。 P3.3-INT1,外部中断 1 的请求。 P3.4-T0,定时器/计数器 0 外部计数脉冲。 P3.5-T1,定时器/计数器,1 外部计数脉冲。 P3.6-WR,外部数据存储器写选通。 P3.7-RD,外部数据存储器读选通。 RST(9 引脚):复位输入。当输入连续两个机器周期以上高电平时为有效, 用来完成单片机单片机的复位初始化操作。 ALE(30 引脚):地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低 8 位地址的输出脉冲。 XTAL1(19 引脚)):振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2(18 引脚):振荡器反相放大器的输入端。 3.3 总电路图 在总电路图中,复位电路与晶振电路是单片机最小系统中包括的电路,复 位连在 AT89C52 的 9 引脚,而晶振电路的两条接线分别与 18、19 引脚相连。 对于本次设计,还需要将 8 个 LED 灯接入电阻中,并且分别与 8 个限流电阻相 连保护发光二极管,与单片机的 P1 口相连。4 个按键 S0、S1、S2、S3 分别连 单片机的 P3.4、P3.5、P3.3 和 P3.1 由这四个按键来控制灯的启动、停止、由上 而下、由下而上。 由按键控制功能的 LED 工作的方式,其中的 LED 采取共阳极接法,通过 依次向连接 LED 的 I/O 口送出低电平,可实现题目要求的功能。 精品文库 欢迎下载 节日彩灯控制器的总电路图如图 3-5 所示。 图 3-3 总电路图 第 4 章 软件设计 4.1 主程序设计 节日彩灯控制器设计的功能是:当在没有任何按键按下时,8 个 LED 灯均 呈现灭灯的状态,并一直在等待按键的按下。当按下开始键 S0 键后,8 个 LED 灯自上而下循环流动,检测有没有按下停止键即 S1,若按下停止键 S1 则立即 停止流动,否则检测是否按下按键 S2 或者按键 S3,若都没有按下则灯继续保 持原先的状态流动。当按键 S3 被按下,灯自下而上流动,同样也要检测是否按 下停止键 S1,按下则停止,否则灯将继续自下而上流动。同理,当按键 S2 被 按下时,灯自上而下流动,如果按下停止键 S1,按下则停止,否则灯将继续自 上而下流动。当既按下 S2 又按下 S3 时,灯将先自上而下流动,后自下而上流 动。通过四个键 S1、S2、S3、S4 的控制,实现彩灯的亮、灭和彩灯的流动显 示,以及在不同情况下的彩灯的流动变换。这是整个节日彩灯的完整控制与流 动过程。 精品文库 欢迎下载 节日彩灯控制器的主程序流程图如图 4-1 所示 图 4-1 主程序流程图 Y Y Y N Y N 开始 键 1 接下? N 调用 san 子程序 键 2 接下? 灯灭 键 3 接下? 调用 san 子程 序 键 4 接下? 调用 wu 子程序 精品文库 欢迎下载 返回 初始化 8 次是否循环完? 给 P1 赋值对应灯亮 延时 开始 4.2 LED 灯子程序设计 在本设计中的 LED 灯的流动有两个方向,分别为自上而下和自下而上,无 论是哪种方式,其 LED 灯的子程序都是一样的过程。 首先赋初值,取表中的数,将数值给 P1 口,然后判断 LED 灯是否循环完 了 8 次。如果循环完 8 次则对应 LED 灯亮,并延时输出。如果没有循环完 8 次, 将返回原处重新开始。因而得到流程图为图 4-2 所示。 图 4-2 LED 灯子程序流程图 4.2 延时子程序设计 对于 LED 灯循环显示程序来说,由于单片机运行速度非常快,以至于当灯 亮时人眼看不见,不方便检测与监控,因此在程序中需要添加延时子程序。同 时延时子程序还可以有效的防止抖动。延时子程序运用了两个 for 循环嵌套, 外循环执行一次,内循环执行 z 次,因此延时时间为 100z。 精品文库 欢迎下载 延时子程序的流程图如图 4-3 所示。 4.3 源程序 #include #define uint unsigned int #define uchar unsigned char void san(); void wu(); void delay(uint); 给 y 赋初值为 z y0? y 自减一x 自减一 结束 开始 定义无符号整型数 x、y 给 x 赋初值 为 100 x0? 图 4-3 子程序流程图 精品文库 欢迎下载 sbit key2=P35;/关闭彩灯的开关 sbit key1=P34;/启动彩灯的开关 sbit key3=P33;/控制彩灯右移的开关 sbit key4=P31;/控制彩灯左移的开关 uchar temp;/定义一个无符号字符型数据变量 uchar temp1;/定义一个无符号字符型数据变量 uchar temp2;/定义一个无符号字符型数据变量 uint a; int c; void main()/主程序 while(1)/判断哪个开关被按下 if(key1=0) san(); if(key2=0) P1=0 xff; if(key3=0) san(); if(key4=0) wu(); void san() uchar table=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f;/定义一个数组 for(a=0;a0;x-) for(y=z;y0;y-); void wu() uchar table1=0 xfe,0 xfd,0 xfb,0 xf7,0 xef,0 xdf,0 xbf,0 x7f;/定义一个数 组 for(c=7;c-1;c-) temp1=table1c;/将数组赋值给变量temp1 P1=temp1; delay(300);/延时 第 5 章 结论 在本次课程设计中,我们用的是 Multisim 软件画图,然后经过不断地仿真、 调试成功。最后根据本设计做出实物并与计算机相连,完成整个设计。本设计 做的是实物,我主要负责软件部分,但是我也参与了硬件部分,利用我们编好 的程序成功写入到了单片机当中,然后实现了 LED 灯的从上往下,从下往上, 以及反复往返流动。 本次设计主要运用 C 语言对单片机进行编程控制。只需要节日彩灯的程序 分为三部分即可:主程序、LED 灯的程序,延时程序。主程序要根据题目要求 画出主程序框图,依据主电路图及主流程图编程。LED 灯的程序分两个流动方 向,设置不同的初值及移动的方向就
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 柠檬进口协议书
- 标准投资协议书
- 2025年中级技师试题及答案
- 2025年粤卫人才新冠试题及答案
- 2025年生管人员试题及答案
- 2025年中国茶文化试题及答案
- 2025年放射科考试试题及答案
- 2025年电子竞技赛事赞助市场分析报告:品牌合作策略与市场机遇分析
- 元宇宙社交平台虚拟现实与虚拟现实旅游融合报告
- 标牌安装协议书
- 术后患者腹胀护理
- 术后伤口的观察及护理
- 2025至2030中国自动点胶机行业发展分析及竞争格局与发展趋势分析与未来投资战略咨询研究报告
- 联营扣点商户管理制度
- 2025至2030中国新闻出版行业发展现状及前景趋势与投资报告
- 生产现场改善方案(3篇)
- 施工动火作业方案(3篇)
- 护理组长竞聘课件
- 价格监测工作课件
- 外研版 选择性必修 第三册Unit 4 A glimpse of the future Developing ideas Reading课件(内嵌视频)
- 公司社会责任管理制度
评论
0/150
提交评论