课程设计(论文)-节日彩灯控制器设计_第1页
课程设计(论文)-节日彩灯控制器设计_第2页
课程设计(论文)-节日彩灯控制器设计_第3页
课程设计(论文)-节日彩灯控制器设计_第4页
课程设计(论文)-节日彩灯控制器设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 i探 探 探 探 探 探 探2013 级单片机接口设计课程设计探 探 探 探 探 探 探石家庄铁道大学四方学院集中实践报告书课题名称节日彩灯控制器设计姓名学号系、部电气工程系专业班级方1353-2指导教师2016年7月6日 一、设计任务及要求:设计任务:设计一个节日彩灯控制器,通过按钮控制彩灯的各种变化。设计要求:1.设计4个按键SO、S1、S2、S3,开始按此键则灯开始流动(由上而下);停止,按此键则停止流动,所有灯为暗;上,按此键则灯由上向下流动;下,按此键则灯由下向上流动。2由按键控制功能的流水灯,其中的LED采取共阳极接法,通过依次向连接LED 的I/O 口送出低电平,可实现题目要求

2、的功能。3要求做出实物。二、指导教师评语:二、成绩指导教师签名:年月 日 TOC o 1-5 h z HYPERLINK l bookmark14 o Current Document 第1章设计目的2 HYPERLINK l bookmark16 o Current Document 第2章设计要求2 HYPERLINK l bookmark18 o Current Document 第3章硬件电路设计2 HYPERLINK l bookmark20 o Current Document 系统结构框图 2STC89C52单片机3 HYPERLINK l bookmark22 o Curren

3、t Document 总电路图 4 HYPERLINK l bookmark24 o Current Document 第4章软件设计5 HYPERLINK l bookmark26 o Current Document 主程序设计 5 HYPERLINK l bookmark28 o Current Document LED灯子程序设计 7 HYPERLINK l bookmark30 o Current Document 延时子程序设计 7源程序 8 HYPERLINK l bookmark32 o Current Document 第5章结论10 HYPERLINK l bookmark

4、34 o Current Document 参考文献11第1章设计目的1、掌握单片机实际系统的开发步骤。2、熟悉节日彩灯控制器的工作原理。3、加深对单片机汇编语言的认识和理解,并会编程。第2章设计要求1、设计4个按键SO、S1、S2、S3,开始按此键则灯开始流动(由上而下);停止,按此键则停止流动,所有灯为暗;上,按此键则灯由上向下流动;下,按此键则灯由下向上流动。2、由按键控制功能的流水灯,其中的 LED采取共阳极接法,通过依次向连接 LED的I/O 口送出低电平,可实现题目要求的功能。3、要求做出实物。第3章硬件电路设计3.1 系统结构框图节日彩灯控制系统主要由单片机、LED显示器、开关及

5、电源组成。其结构 框图如图3-1所示。图3-1系统结构框图STC89C5单片机89C52本质是一种低耗高性能的微控制器。它的主要特性是拥有 8K字节的 程序存储空间;512字节的数据存储空间;内带4K字节的EEPROM存储空间和 可直接使用串行口下载。此外,它还是增强型的 80C51单片机,有6时钟/机器 周期和12时钟/机器周期可以任意选择,同时它的指令代码完全兼容传统 80C51 单片机。89C52共有四个八位的并行双向口,即有 32根输入输出口线。各口的每一 位均由锁存器、输出驱动器和输入缓冲器组成。 STC89C52芯片有40个引脚, 引脚图如图3-2所示,各引脚功能介绍如下:T2/P

6、1.0 匚140J vccT2EX/P11 L239J PO O/ADOP1-2 匚338PO.1/AD1P1-3 匚437P0.2/AD2P1-4 匚536J P0.3/AD3P15匚635P0.4/AD4P1-6 匚734j P0.5/AD5P1.7 L833P0.6/AD6RST Lg32PO.7/AD7RXD/P3.0 匚1031E7WPPTxD/P3.1 匚1130ALE/PROGINT0/P3.2 1229PSENiNTi/P3 3 E1328P27/A15T0/P3.4 匸1427J P2.6/A14T1/P3 5 匸1526P25/A13WR/P3.6 1625P2.4/A12

7、RD/P3.7 匸1724J P2.3/A11XTAL2 匚1823J P2,2/A10XTAL1 1922J P2.1/A9GND匚2021J P2 0/A8图3-2 STC89C52引脚图VCC(40引脚):电源电压。VSS(20弓I脚):接地。P1端口(P1.0P1.7, 18引脚):P1 口是一个带内部上拉电阻的 8位双向I/O 口。P1的输出缓冲器可驱动4个TTL负载。对端口写入1时,通过内部的上拉 电阻把端口拉到高电位,这是可用作输入口。 P1 口作输入口使用时,因为有内部上拉电阻,那些被外部拉低的引脚会输出一个电流。P1 口特点是输出锁存器,输出时没有条件。输入缓冲,输入时有条件

8、,即需要先将该口设为输入状态,先 输出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.0RXD,串行输入口。P3.1TXD,串行输出口。P3.2I

9、NT0,外部中断0的请求。P3.3INT1,外部中断1的请求。P3.4T0,定时器/计数器0外部计数脉冲。P3.5T1,定时器/计数器,1外部计数脉冲。P3.6WR,外部数据存储器写选通。P3.7RD,外部数据存储器读选通。RST(9引脚):复位输入。当输入连续两个机器周期以上高电平时为有效,用来完成单片机单片机的复位初始化操作。ALE(30引脚):地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低 8位地址的输出脉冲。XTAL1(19引脚):振荡器反相放大器和内部时钟发生电路的输入端。XTAL2(18引脚):振荡器反相放大器的输入端。3.3 总电路图在总电路图中,复位电路与晶振电路是单

10、片机最小系统中包括的电路,复位连在AT89C52的9引脚,而晶振电路的两条接线分别与18、19引脚相连。对于本次设计,还需要将8个LED灯接入电阻中,并且分别与 8个限流电阻相连保 护发光二极管,与单片机的P1 口相连。4个按键S0、S1、S2、S3分别连单片机 的P34 P3.5、P3.3和P3.1由这四个按键来控制灯的启动、停止、由上而下、 由下而上。由按键控制功能的LED工作的方式,其中的LED采取共阳极接法,通过依 次向连接LED的I/O 口送出低电平,可实现题目要求的功能。节日彩灯控制器的总电路图如图3-5所示R1严R3AR41/Rf1产一卢 /- 戸 产一卢一 产 一一PIOPll

11、P12Pl?P16P17?TP30P31P32P33F34P2I?35P22P36P23P37P24KTAI4KTAL1P242NDP27393S37恥35343332313029轴z?262524232221图3-3总电路图第4章软件设计4.1主程序设计节日彩灯控制器设计的功能是:当在没有任何按键按下时,8个LED灯均呈现灭灯的状态,并一直在等待按键的按下。当按下开始键SO键后,8个LED灯自上而下循环流动,检测有没有按下停止键即 S1,若按下停止键S1则立即停 止流动,否则检测是否按下按键 S2或者按键S3,若都没有按下则灯继续保持原 先的状态流动。当按键S3被按下,灯自下而上流动,同样也

12、要检测是否按下停 止键S1,按下则停止,否则灯将继续自下而上流动。同理,当按键S2被按下时, 灯自上而下流动,如果按下停止键 S1,按下则停止,否则灯将继续自上而下流 动。当既按下S2又按下S3时,灯将先自上而下流动,后自下而上流动。 通过四 个键S1、S2、S3、S4的控制,实现彩灯的亮、灭和彩灯的流动显示,以及在不 同情况下的彩灯的流动变换。这是整个节日彩灯的完整控制与流动过程。节日彩灯控制器的主程序流程图如图4-1所示LED灯子程序设计在本设计中的LED灯的流动有两个方向,分别为自上而下和自下而上,无 论是哪种方式,其LED灯的子程序都是一样的过程。首先赋初值,取表中的数,将数值给P1

13、口,然后判断LED灯是否循环完了8次。如果循环完8次则对应LED灯亮,并延时输出。如果没有循环完 8次, 将返回原处重新开始。因而得到流程图为图 4-2所示。图4-2 LED灯子程序流程图4.2延时子程序设计对于LED灯循环显示程序来说,由于单片机运行速度非常快,以至于当灯 亮时人眼看不见,不方便检测与监控,因此在程序中需要添加延时子程序。同时 延时子程序还可以有效的防止抖动。延时子程序运用了两个for循环嵌套,外循环执行一次,内循环执行z次,因此延时时间为100z。延时子程序的流程图如图4-3所示图4-3 子程序流程图源程序#in clude#defi ne uint un sig ned

14、int#defi ne uchar un sig ned char void san();void wu();void delay(ui nt);sbit key2=P3p关闭彩灯的开关sbit key仁P3M;/启动彩灯的开关sbit key3=P3A3;/控制彩灯右移的开关 sbit key4=P3A1;/控制彩灯左移的开关 uchar temp;/定义一个无符号字符型数据变量 uchar tempi;/定义一个无符号字符型数据变量 uchar temp2;/定义一个无符号字符型数据变量 uint a;int c;void ma in() 主程序while(1)/判断哪个开关被按下if(k

15、ey 仁=0) sa n();if(key2=0) P1=0 xff; if(key3=0) sa n();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;/将数组赋值给变量temp1P

16、仁 temp1;delay(300);延时第5章结论在本次课程设计中,我们用的是 Multisim软件画图,然后经过不断地仿真、 调试成功。最后根据本设计做出实物并与计算机相连,完成整个设计。本设计做的是实物,我主要负责软件部分,但是我也参与了硬件部分,利用我们编好的程 序成功写入到了单片机当中,然后实现了 LED灯的从上往下,从下往上,以及 反复往返流动。本次设计主要运用C语言对单片机进行编程控制。只需要节日彩灯的程序 分为三部分即可:主程序、LED灯的程序,延时程序。主程序要根据题目要求 画出主程序框图,依据主电路图及主流程图编程。LED灯的程序分两个流动方向,设置不同的初值及移动的方向就可以获得。 而延时程序根据延时时间利用for 循环来实现。编程之后,修改错误,进行调试。这次设计灯的流动方式是可以有好多种的,但是时间有限,我们只完成了老师给的任务。在这次课程设计的过程 中,我们既锻炼了自己的思考能力,又加强了我们思考问题的完整性和与实际生 活联系的可行性。参考文献高峰.单片微型计算机原理与接口技术M.科学出版社,2007张志良单片机原理与控制技术M.机械工业出版社,2007谭浩强.C程序设计清华大学出版社,

温馨提示

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

评论

0/150

提交评论