单片机的LED流水灯系统设计_第1页
单片机的LED流水灯系统设计_第2页
单片机的LED流水灯系统设计_第3页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、目录、前1.1课题简介 11.2设计目的 11.3设计任务及要求 1二、 总体设计 22.1设计思路 22.2元件清单 2三、 硬件设计 33.1 AT89C513.2程序框图53.3系统框图5四、设计步骤 54.1硬件设计 64.2单片机时钟电路 64.3复位电路64.4控制电路74.5工作电路7五、软件设计 85.1设计要求85.2软件的流程图 95.3程序设计9六、软件调试 11七、心得体会 12八、参考文献 13一、前言1.1课题简介单片机全称叫单片微型计算机(Single Chip Microcomputer),是一种集成在电 路芯片,是采用超大规模集成电路技术把具有数据处理能力的中

2、央处理器CPU随机存储器RAM只读存储器ROM多种I/O 口和中断系统、定时器/计时器等功能(可能还 包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪 迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业 自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等, 这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各 种智能

3、机械了。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用 设备的智能化管理及过程控制等领域,大致可分如下几个范畴:1.在智能仪器仪表上的应用:,例如精密的测量设备2.在工业控制中的应用:用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、 各种报警系统,与计算机联网构成二级控制系统等。3.在家用电器中的应用可从手机,电话机、小型程控交换机、楼宇自动通信呼叫系统、列车无线通信、再到日常工 作中随处可见的移动电话,集群移动通信,无线电对讲机等。5.单片机在医用设备领域中的应用:例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫 系统等等

4、。6.在各种大型电器中的模块化应用:如音乐集成单片机,看似简单的功 能,微缩在纯电子芯片中(有别于磁带机的原理),就需要复杂的类似于计算机的原 理。本设计着重在于分析计算器软件和开发过程中的环节和步骤, 并从实践经验出发 对计算器设计做了详细的分析和研究。本系统就是充分利用了 8051芯片的I/O引脚。 系统以采用MCS-5係列单片机Intel8051为中心器件来设计LED流水灯系统,实现 8个LED霓虹灯的左、右循环显示,并实现循环的速度可调。1.2设计目的(1) 学习基本理论在实践中综合运用的初步经验,掌握电路设计的基本方法、设 计步骤,培养综合设计与调试能力。(2)掌握汇编语言程序设计方

5、法。(3)培养实践技能,提高分析和解决实际问题的能力。1.3设计任务及要求(1) 彩灯用8个发光二极管代替。(2) 电路具有控制彩灯点亮右移、左移、全亮及全灭等功能(用按键切换彩灯状 态)(3) 彩灯两点移动时间间隔为0.4秒。二、总体设计2.1设计思路本课题使用AT89C51单片机时无须外扩存储器。因此,本流水灯实际上就是一个 带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源 等电路和必要的软件组成的单个单片机。如果要让接在P1.0 口的LED1亮起来,那么只要把P1.0 口的电平变为低电平就 可以了;相反,如果要接在P1.0 口的LED1熄灭,就要把P1.0 口的

6、电平变为高电平; 同理,接在P1.1P1.7 口的其他7个LED的点亮和熄灭的方法同LED1因此,要实 现流水灯功能,我们只要将发光二极管 LEDLED8依次点亮、熄灭,8只LED灯便 会一亮一暗的做流水灯了。同样的道理,可以让 8个灯左移点亮,全亮、全灭。在此我们还应注意一点,由于人眼的视觉暂留效应以及单片机执行每条指令的时 间很短,我们在控制二极管亮灭的时候应该延时一段时间,否则我们就看不到“流水”效果了。在此基础上,增加外扩设备,利用74LS373和8255扩展成24个LED灯循环显示。2.2.元件清单元件名称型号数量/个用途单片机AT89S511控制核心晶振12MHZ1晶振电路电容30

7、pF2晶振电路电阻Respack88上位电阻电阻10k4开关电阻电阻10k1复位电路电源+5v1提供电源拨码开关BUTTON4发出信号数码管7SEG-MPX1-CC8显示电路三、硬件设计3.1 AT89C51(1)AT89C51主要特性:与MCS-51兼容4K字节可编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz 24Hz三级程序存储器锁定128*8 位内部RAM32 可编程I/O线5个中断源可编程串行通道 低功耗的闲置和掉电模式 片内震荡器和时钟电路(2)管脚说明: 电源引脚Vcc( 40脚):典型值+ 5VVss ( 20脚):接低电平。 外部晶振XTAL1、X

8、TAL2分别与晶振两端相连接。 输入输出口引脚:P0I/OP1I/OP2I/OP3I/O双向 双向 双向 双向作输入口时, 作输入口时, 作输入口时, 作输入口时,应先软件置 应先软件置 应先软件置 应先软件置控制引脚RST、ALE/-PROG、-PSEN、-EA/Vpp 组成了 MSC-51 的控制总线ORST ( 9脚):复位信号输入端(高电平有效) ALE/-PROG(30脚):地址锁存信号输出端。 第二功能:编程脉冲输入。-PSEN ( 29脚):外部程序存储器读选通信号-EA/Vpp(31 脚):外部程序存储器使能端第二功能:编程电压输入端(+21V)(3)AT89C51单 片机的P

9、 口特点:P0 口 :是一个8位漏极开路输出型双向I/O端口。作为输出端口 时,每位能以吸收电流的方式驱动8个TTL输入,对端口写1时,又 可作高阻抗输入端用。在访问外部程序或数据存储器时,它是时分多 路转换的地址(低8位)/数据总线, 在访问期间将激活内部的上拉电阻。P1 口: P1 口是一个带有内部上拉电阻的8位双向I/O 端口。P1 口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端 口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。 P2 口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的 引脚会输出一个电流(lil )oP2 口: P2 口是一个带有内

10、部上拉电阻的8位双向I/O 端口。P2 口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端 口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。 P2 口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的 引脚会输出一个电流(lil ) o在访问外部程序存储器时和16位外部 地址的外部数据存储器(如执行 MOVX DPTR时,P2 口送出高8位 地址。在访问8位地址的外部数据存储器(如执行 MOVXRI)时,P2 口引脚上的内容(就是专用寄存器(SFR)区中的P2寄存器的内容), 在整个访问期间不会改变。P3 口: P3 口是一个带有内部上拉电阻的8位双向I/O 端

11、口。P3 口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。对端 口写1时,通过内部的上拉电阻把端口拉到高电位,这时可作输入口。 P3 口作输入口使用时,因为内部有上拉电阻,那些被外部信号拉低的 引脚会输出一个电流(Iil ) o(4)排阻的作用所谓排阻就是若干个参数完全相同的电阻,它们的一个引脚都连到一起,作为公共引脚。其余引脚正常引出。所以如果一个排阻是由n个电阻构成的,那么它就有n+1只引脚,一般来说,最左边的那个是公共引脚。它在排阻上一般用一 个色点标出来。排阻一般应用在数字电路上,比如:作为某个并行口的上拉或者 下拉电阻用。使用排阻比用若干只固定电阻更方便。3.2程序框图图1

12、程序框图灯右移点亮灯左移点亮3. 3系统框图图2系统框图四、设计步骤4.1硬件设计硬件系统是指构成微机系统的实体和装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。单片机实质上是一个硬件的芯片,在实际应用中,通常很难直接和被控对象进行电气连接, 必须外加各种扩展接口电路、外部设备、被控对象等硬件和软件,才能构成一个单片机应用系统。本设计选用以AT89S51单片机为主控单元。显示部分:8个LED灯循环亮灭。4.2单片机时钟电路时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的 同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信

13、号控制下严 格地按时序进行工作。在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XI,输出端为引脚X2,在芯片的外部跨接晶体振荡器和微调电容,形成反馈电路,就构成了一 个稳定的自激振荡器。此电路采用12MHZ勺石英晶体。时钟电路如下图:|卜图3时钟电路4.3复位电路电阻的作用是用于上电复位的,VCC以上电,由于电容两端电压不能突变,所以 RST上为高电平,然后电容放电,RST就为低电平了,还可以用手动复位,此电路应 用自动复位。VCCC4161nFR2210k复位电路4.4控制电路控制电路用于控制工作电路的工作情况,根据要求来控制电路,本电路的控制电路用来控制流水灯的工作情况,

14、当按下 1、2、3、4各个开关时,电路具有左移、右移、全亮、全没的功能,具体的控制电路如下:R14R15nR1610k10k10kLR1710k-CZL. P O图5控制电路4.5工作电路(1)工作电路就是根据总的电路的指令,来反应工作情况。本电路的流水灯电路具体的如下:图6工作电路(2)根据各个模块的功能及他们的信号传输,连接电路如下:VCCC130PFX1C230PF GNDU119crystal18C31nFR110k293031345678XTAL1P0.0/ADP0.1/ADP0.2/ADXTAL2P0.3/ADP0.4/ADP0.5/ADP0.6/ADRSTP0.7/ADP2.0/

15、AP2.1/AP2.2/A-PSENP2.3/A-ALEP2.4/A-EAP2.5/A-P2.6/A-P2.7/A-P1.0P3.0/RXP1.1P3.1/TXP1.2P3.2/INP1.3P3.3/IN'P1.4P3.4/TP1.5P3.5/TP1.6P3.6/WP1.7P3.7/RAT89C51止039732R10 R11 R1210k10k10kR1310kJ=L»q.VCCD1220LED-YELLOW图6 硬件连接图五、软件设计5.1设计要求本系统的功能就时实现流水灯的循环点亮, 主要有四个功能,第一,按下第一个 按钮,彩灯向上点亮循环,按下第二个,彩灯向下循环点亮

16、,按下第三个,彩灯全亮,按下第四个,彩灯全灭。彩灯用8个发光二极管代替。电路具有的控制彩灯点亮右移、 左移、全亮及全灭的功能用按键切换彩灯状态,彩灯两点移动时间间隔为 0.4秒。 5.2软件的流程图:MOV DPTR,#TAB把TAB表首地址送入DPTR5.3程序设计ORG 0000H;单片机上电后从00000H地址执行AJMP START ;跳转到主程序存放地指出ORG 0030H;设置主程序开始地址START: MOV SP,#60H; 设置堆栈起始地址为60HSTART1: JNB P0.0,L00P1 ;判断P0.0处开关是否闭合JNB P0.1 ,L OOP2 ;JNB P0.2 ,

17、L OOP3 ;JNB P0.3 ,L OOP4 ;AJMP START1 ;LOOP1: CLR A ; 判断P0.1处开关是否闭合 判断P0.2处开关是否闭合 判断P0.3处开关是否闭合 如果没有开关闭合重新检测 累加器清零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;设定累

18、加器的初始值MOVC A,A+DPTR ;取数值表中的数CJNE A,#00000000B,SH0W2;检查右移结束标志AJMP STARTSHOW2: MOV P1,AACALL DELAYINC DPTR ;AJMP LOOP2LOOP3: MOV A,#08HMOVC A,A+DPTR ;MOV P1,A ;AJMP START ;LOOP4: MOV A,#11H;MOVC A,A+DPTR ;MOV P1,A ;AJMP START ;DELAY MOV R0,#10;D0: MOV R1,#100D1: MOV R2,#198NOPD2:DJNZ R2,D2DJNZ R1,D1右移

19、结束重新检查开关状态将数据送到P1 口调用延时子程序取数据表指针指向下一数据继续查表取数据设定累加器初始值取数值表中的数将数据送到P1 口全灭结束重新检测开关状态设定累加器初始值取数值表中的数将数据送到P1 口全灭结束重新检测开关状态延时一段时间DJNZ R0,D0RET:子程序返回TAB:DB 11111110BDB 11111101BDB 11111011BDB 11110111BDB 11101111BDB 11011111BDB 10111111BDB 01111111BDB 11111111BDB 01111111BDB 10111111BDB 11011111BDB 1110111

20、1BDB 11110111BDB 11111011BDB 11111101BDB 11111110BDB OOOOOOOOBEND;程序结束六、软件调试软件调试一般分为以下四个阶段:1、编写程序并查错;2、在汇编语言的编译系 统中编译源程序3、对程序进行编译连接,并及时发现程序中存在的错误; 4、改正 错误。在软件调试过程中,对出现的错误进行了认真的分析和修改,多次调试成功后, 能够很好的达到既定的设计效果。此系统可以改进为可以通过对开关的调节来控制流水灯电路具有控制彩灯点亮右 移、左移、全亮及全灭等功。Build target 'Target 11 assembling yuefen

21、j,asm. linking *,<Program Size: data=8.0 xdaita=0 code=143 creating hex file from "yuefeng". "yuefsng11 - 0 Error(s), 0 Warning (s).MRl b" l Build人 F斓巴 Ffes /七、心得体会经过一段时间的努力,我们顺利的完成了这次单片机课设。这是一个磨练意志的 过程。从课题的选择开始,流水灯的设计、硬件和软件系统的设计、到最后的Proteus软件仿真完成,这其中经历了很多困难,但是更重要的是在这个过程中我得到了很大 的锻炼。一方面通过C51单片机等一些器件的设计让我学习和掌握了单片机技术的基 础知识和技术要点,也使以前学的很多知识都得到了运用;另一方面在用Proteus软件画电路图时,然后再转换成一维的 WOR中进行编辑,这个过程中让我掌握了计算机 辅助的设计技术。当然,这是一个需要不断的尝试,不断的校核,不断的修改,最后 完成一个合理的设计的过程。需要的是细心和耐心。在很大程度

温馨提示

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

评论

0/150

提交评论