基于AT-89C51单片机课程设计彩灯控制器_第1页
基于AT-89C51单片机课程设计彩灯控制器_第2页
基于AT-89C51单片机课程设计彩灯控制器_第3页
基于AT-89C51单片机课程设计彩灯控制器_第4页
基于AT-89C51单片机课程设计彩灯控制器_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

黄河科技学院课程设计(论文) 单位代码 学号1201050052 分 类 号 密 级 单片机应用技术课程设计 院(系)名称 专业名称 学生姓名 指导教师 2015 年 10 月 27 日黄河科技学院课程设计(论文) 摘要 随着人民生活水平的提高和对身边产品要求多样话的增强,简单的单一彩灯已经不能满足人民的需要。新型LED彩灯控制器讲会解决LED下等单一的情况。而这需要借助于我们市场上的单片机,单片机即微型计算机,是集CPU、 RAM、ROM、定时器、计数器、和多种借口于一体的微控制器。LED彩灯控制器将会用到,起定时计数的功能,在单片几中我们常见的就是51系列的单片机,它是单片机中最为典型和最有代表性的一种,广泛应用于各个领域。 本课题设计用单片机8951结合LED制作了一种新型的LED彩灯控制系统的设计方法,以AT-89C51单片机作为主控核心,与按键、显示器等较少的辅助硬件电路相结合,利用软件实现对LED彩灯进行控制。本系统具有体积小、硬件少、电路结构简单及容易操作等优点。 关键字:LED彩灯;AT89C51单片机;彩灯控制器;模块设计 第 页 目 录 1、 绪 论.11.1 课题简介.1 1.2 设计目的. .22、总体设计. . 32.1 设计思路. .32.2 原件清单.43、硬件设计.43.1 AT89C51.4 3.2 控制原理.73.3 程序框图.84、设计步骤 .84.1 硬件设计.84.2 单片机时钟电路.84.3 复位电路.94.4 控制电路.94.5 工作电路.95、软件设计.11 5.1 设计要求.11 5.2 软件的流程图.11 5.3 程序设计.126、软件调试.18结束语.16致谢.17参考文献.17 第 16 页 1绪论1.1 课题简介单片机全称叫单片微型计算机(Single Chip Microcomputer),是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴: 1.在智能仪器仪表上的应用 :,例如精密的测量设备2.在工业控制中的应用 :用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。 3.在家用电器中的应用可从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。 5.单片机在医用设备领域中的应用 :例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。 6.在各种大型电器中的模块化应用 :如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原理。本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。本系统就是充分利用了8051芯片的I/O引脚。系统以采用MCS-51系列单片机Intel8051为中心器件来设计LED流水灯系统,实现8个LED霓虹灯的左、右循环显示,并实现循环的速度可调。1.2 设计目的1.学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设计步骤,培养综合设计与调试能力。2.掌握汇编语言程序设计方法。3.培养实践技能,提高分析和解决实际问题的能力。1.3 设计任务及要求1彩灯用8个发光二极管代替。2电路具有控制彩灯点亮右移、左移、全亮及全灭等功能(用按键切换彩灯状态)3、彩灯两点移动时间间隔为0.5秒。2总体设计思路2.1设计思路本课题使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。如果要让接在P1.0口的LED1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反,如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,接在P1.1P1.7口的其他7个LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能,我们只要将发光二极管LED1LED8依次点亮、熄灭,8只LED灯便会一亮一暗的做流水灯了。同样的道理,可以让8个灯左移点亮,全亮、全灭。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。在此基础上,增加外扩设备,利用74LS373和8255扩展成24个LED灯循环显示。 2.2.原件清单元件名称型号数量/个用途单片机AT89S511控制核心晶振12MHZ1晶振电路电容30pF2晶振电路电阻Respack88上位电阻电阻10k4开关电阻电阻10k1复位电路电源+5v1提供电源拨码开关BUTTON4发出信号LEDLed_red3显示电路Led_blue3Led_green23硬件设计3.1 AT89C511.芯片由UNTITLEDISISPROFESSIONAL实验系统提供(AT89C51) 1)主要特性: 与MCS-51兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz24Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内震荡器和时钟电路2)管脚说明:电源引脚 Vcc(40脚):典型值5V。 Vss(20脚):接低电平。外部晶振 XTAL1、XTAL2分别与晶振两端相连接。输入输出口引脚: P0口:I/O双向口。作输入口时,应先软件置“ 1”。 P1口:I/O双向口。作输入口时,应先软件置“ 1”。 P2口:I/O双向口。作输入口时,应先软件置“ 1”。 P3口:I/O双向口。作输入口时,应先软件置“ 1”。控制引脚: RST、ALE/-PROG、-PSEN、-EA/Vpp组成了MSC-51的控制总线。 RST(9脚):复位信号输入端(高电平有效)。 ALE/-PROG(30脚):地址锁存信号输出端。 第二功能:编程脉冲输入。 -PSEN(29脚):外部程序存储器读选通信号。 -EA/Vpp(31脚):外部程序存储器使能端。 第二功能:编程电压输入端(+21V)。3)AT89C51单片机的P口特点: P0口:是一个8位漏极开路输出型双向I/O端口。作为输出端口时,每位能以吸收电流的方式驱动8 个TTL输入,对端口写1时,又可作高阻抗输入端用。在访问外部程序或数据存储器时,它是时分多路转换的地址(低8位)/数据总线,在访问期间将激活内部的上拉电阻。 P1口:P1口是一个带有内部上拉电阻的8位双向I/O端口。P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。P2口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil)。 P2口:P2口是一个带有内部上拉电阻的8位双向I/O端口。P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。P2口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil)。在访问外部程序存储器时和16位外部地址的外部数据存储器(如执行 MOVX DPTR)时,P2口送出高8位地址。在访问8位地址的外部数据存储器(如执行 MOVX RI)时,P2口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容),在整个访问期间不会改变。 P3口:P3口是一个带有内部上拉电阻的8位双向I/O端口。P3口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。P3口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil)。(2)排阻的作用所谓排阻就是若干个参数完全相同的电阻,它们的一个引脚都连到一起,作为公共引脚。其余引脚正常引出。所以如果一个排阻是由n个电阻构成的,那么它就有n+1只引脚,一般来说,最左边的那个是公共引脚。它在排阻上一般用一个色点标出来。排阻一般应用在数字电路上,比如:作为某个并行口的上拉或者下拉电阻用。使用排阻比用若干只固定电阻更方便。 32、控制原理新型LED彩灯分为2部分,即彩灯控制器(主控模块)和管内LED板模块(受控模块)。彩灯控制器可直接与220 V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为管内LED模块提供12 V工作电源,另一方面为主控模块单片机系统(彩灯控制器)提供5 V工作电源。整个系统工作由软件程序控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯时间和灯光闪动频率。上电后系统经过初始化,查询是否有功能切换键按下:有,则进入用户设定模式状态;无,则进入默认缺省工作状态。在用户设定模式状态下,用户可以根据个人爱好及不同场合的需要来指定调用哪些模式,同样如果想进入用户设定模式状态,只需按下功能切换键即可。LED板模块设计主要器件有LED彩灯(红、绿、蓝)、移位触发模块芯片CD4076等。根据实际应用彩灯长度需要,可将不同数量的该管内LED模块实现级连,组成一个完整的LED彩灯。考虑到功率损耗,LED板模块之间接口处用信号正向驱动模块芯片MC4049连接。每个LED板模块上均匀分布3种颜色 LED灯,在实际制作PCB时采用红、绿、蓝3色互隔焊接方式,在电路板上把LED发光管按顺序L1(红)、L2(绿)、L3(蓝)、L4(红)、L5(绿)、L6(蓝)依次均匀焊在板上成一条直线。33、程序框图开关输入AT89C5单片机流水灯图14设计步骤4.1硬件设计硬件系统是指构成微机系统的实体和装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。单片机实质上是一个硬件的芯片,在实际应用中,通常很难直接和被控对象进行电气连接,必须外加各种扩展接口电路、外部设备、被控对象等硬件和软件,才能构成一个单片机应用系统。本设计选用以AT89S51单片机为主控单元。显示部分:8个LED灯循环亮灭。4.2单片机时钟电路时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚X1,输出端为引脚X2,在芯片的外部跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。 此电路采用12MHz的石英晶体。时钟电路如下图:图24.3复位电路 电阻的作用是用于上电复位的,VCC以上电,由于电容两端电压不能突变,所以RST上为高电平,然后电容放电,RST就为低电平了,还可以用手动复位,此电路应用自动复位。图34.4控制电路控制电路用于控制工作电路的工作情况,根据要求来控制电路,本电路的控制电路用来控制流水灯的工作情况,当按下1、2、3、4各个开关时,电路具有左移、右移、全亮、全没的功能,具体的控制电路如下:图44.5工作电路1) 工作电路就是根据总的电路的指令,来反应工作情况。本电路的流水灯电路具体的如下:图52)根据各个模块的功能及他们的信号传输,连接电路如下:图65软件设计5.1设计要求本系统的功能就时实现流水灯的循环点亮,主要有四个功能,第一,按下第一个按钮,彩灯向上点亮循环,按下第二个,彩灯向下循环点亮,按下第三个,彩灯全亮,按下第四个,彩灯全灭。彩灯用8个发光二极管代替。电路具有的控制彩灯点亮右移、左移、全亮及全灭的功能用按键切换彩灯状态,彩灯两点移动时间间隔为0.5秒。5.2、软件的流程图:开始读入四个开关的状态判断开关状态灯左移点亮灯右移点亮灯 全 亮灯 全 灭灯流动运行或全亮全灭无输入图75.3、程序设计 ORG 0000H ;单片机上电后从00000H地址执行 AJMP START ;跳转到主程序存放地指出 ORG 0030H ;设置主程序开始地址START: MOV SP,#60H ;设置堆栈起始地址为60H MOV DPTR,#TAB ;把TAB表首地址送入DPTRSTART1: JNB P0.0,LOOP1 ;判断P0.0处开关是否闭合 JNB P0.1,LOOP2 ;判断P0.1处开关是否闭合 JNB P0.2,LOOP3 ;判断P0.2处开关是否闭合 JNB P0.3,LOOP4 ;判断P0.3处开关是否闭合 AJMP START1 ;如果没有开关闭合重新检测LOOP1: CLR A ;累加器清零 MOVC A,A+DPTR ;取数值表中的数CJNE: A,#11111111B,SHOW1;检查左移结束标志 AJMP START ;左移结束重新检测开关状态SHOW1: MOV P1,A ;将数据送到P1口 ACALL DELAY ;调用延时子程序 INC DPTR ;取数据表指针指向下一数据 AJMP LOOP1 ;继续查表取数据LOOP2: MOV A,#09H ;设定累加器的初始值 MOVC A,A+DPTR ;取数值表中的数 CJNE A,#00000000B,SHOW2;检查右移结束标志 AJMP START ;右移结束重新检查开关状态SHOW2: MOV P1,A ;将数据送到P1口 ACALL DELAY ;调用延时子程序 INC DPTR ;取数据表指针指向下一数据 AJMP LOOP2 ;继续查表取数据LOOP3:MOV A,#08H ;设定累加器初始值 MOVC A,A+DPTR ;取数值表中的数 MOV P1,A ;将数据送到P1口 AJMP START ;全灭结束重新检测开关状态LOOP4: MOV A,#11H ;设定累加器初始值 MOVC A,A+DPTR ;取数值表中的数 MOV P1,A ;将数据送到P1口 AJMP START ;全灭结束重新检测开关状态DELAY:MOV R0,#10 ;延时一段时间D0: MOV R1,#200D1: MOV R2,#123 NOPD2: DJNZ R2,D2 DJNZ R1,D1DJNZ R0,D0 RET ;子程序返回TAB:DB 11111110BDB 11111101BDB 11111011BDB 11110111BDB 11101111BDB 11011111BDB 10111111BDB 01111111BDB 11111111BDB 01111111BDB 10111111BDB 11011111BDB 11101111BDB 11110111BDB 11111011BDB 11111101BDB 11111110BDB 00000000B END ;程序结束6软件调试软件调试一般分为以下四个阶段:1、 编写程序并查错;2、 在汇编语言的编译系统中编译源程序3、 对程序进行编译连接,并及时发现程序中存在的错误;4、改正错误。 在软件调试过程中,对出现的错误进行了认真的分析和修改,

温馨提示

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

评论

0/150

提交评论