单片机LED灯课程设计报告_第1页
单片机LED灯课程设计报告_第2页
单片机LED灯课程设计报告_第3页
单片机LED灯课程设计报告_第4页
已阅读5页,还剩16页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1、.目录2 21.121.231.331.4 3 3 4 3.1 43.263.363.463.5 7 9 4.1 94.294.310 keil proteus 125.1125.213 14 15.专业 .专注.专业 .专注.前言单片机全称叫单片微型计算机( Single Chip Microcomputer),是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU 随机存储器 RAM 、只读存储器 ROM 、多种 I/O 口和中断系统 、定时器 / 计时器等功能(可能还包括显示驱动电路 、脉宽调制电路 、模拟多路转换器 、A/D 转换器等电路)集成到一块硅片上

2、构成的一个小而完善的计算机系统 。目前单片机渗透到我们生活的各个领域 ,几乎很难找到哪个领域没有单片机的踪迹。 导弹的导航装置 ,飞机上各种仪表的控制 ,计算机的网络通讯与数据传输 ,工业自动化过程的实时控制和数据处理 ,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统 ,录像机、摄像机、全自动洗衣机的控制 ,以及程控玩具 、电子宠物等等,这些都离不开单片机 。更不用说自动控制领域的机器人 、智能仪表 、医疗器械以及各种智能机械了 。单片机广泛应用于仪器仪表 、家用电器 、医用设备 、航空航天、专用设备的智能化管理及过程控制等领域 ,大致可分如下几个范畴 : 1.在智能仪器仪表上的应用

3、 :,例如精密的测量设备 2.在工业控制中的应用 :用单片机可以构成形式多样的控制系统 、数据采集系统 。例如工厂流水线的智能化管理 ,电梯智能化控制 、各种报警系统 ,与计算机联网构成二级控制系统等 。 3.在家用电器中的应用可从手机 ,电话机、小型程控交换机 、楼宇自动通信呼叫系统 、列车无线通信、再到日常工作中随处可见的移动电话 ,集群移动通信 ,无线电对讲机等 。 5. 单片机在医用设备领域中的应用 :例如医用呼吸机 ,各种分析仪 ,监护仪,超声诊断设备及病床呼叫系统等等 。 6.在各种大型电器中的模块化应用 :如音乐集成单片机,看似简单的功能 ,微缩在纯电子芯片中 (有别于磁带机的原

4、理 ),就需要复杂的类似于计算机的原理 。本设计着重在于分析计算器软件和开发过程中的环节和步骤 ,并从实践经验出发对计算器设计做了详细的分析和研究 。本系统就是充分利用了 8051 芯片的 I/O 引脚。系统以采用 MCS-51 系列单片机 Intel8051 为中心器件来设计 LED 流水灯系统 ,实现 8 个 LED 霓虹灯的左 、右循环显示 ,并实现循环的速度可调 。一、课程设计的目的和要求1.1 设计目的1.学习基本理论在实践中综合运用的初步经验 ,掌握电路设计的基本方法 、设计步骤,培养综合设计与调试能力 。2.掌握汇编语言程序设计方法。.专业 .专注.3.培养实践技能 ,提高分析和

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

6、,就要把 P1.0 口的电平变为高电平;同理,接在 P1.1P1.7 口的其他 7 个 LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能 ,我们只要将发光二极管LED1LED8 依次点亮 、熄灭,8 只 LED灯便会一亮一暗的做流水灯了。同样的道理 ,可以让 8 个灯左移点亮 ,全亮、全灭。在此我们还应注意一点 ,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短 ,我们在控制二极管亮灭的时候应该延时一段时间 ,否则我们就看不到 “流水”效果了。在此基础上 ,增加外扩设备 ,利用 74LS373 和 8255 扩展成 24 个 LED灯循环显示。二、总体设计本课题使用 AT89C

7、51 单片机时无须外扩存储器 。因此 ,本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统 ,即为由发光二极管 、晶振、复位、电源等电路和必要的软件组成的单个单片机 。如果要让接在P1.0 口的 LED1 亮起来,那么只要把 P1.0 口的电平变为低电平就可以了;相反,如果要接在 P1.0 口的 LED1 熄灭,就要把 P1.0 口的电平变为高电平;同理,接在 P1.1P1.7 口的其他 7 个 LED的点亮和熄灭的方法同LED1。因此,要实现流水灯功能 ,我们只要将发光二极管LED1LED8 依次点亮 、熄灭,8 只 LED灯便会一亮一暗的做流水灯了。同样的道理 ,可以让 8 个灯

8、左移点亮 ,全亮、全灭。.专业 .专注.在此我们还应注意一点 ,由于人眼的视觉暂留效应以及单片机执行每条指令的时间很短 ,我们在控制二极管亮灭的时候应该延时一段时间 ,否则我们就看不到 “流水”效果了。在此基础上 ,增加外扩设备 ,利用 74LS373 和 8255 扩展成 24 个 LED灯循环显示。三、硬件设计3.1单片机最小系统要使单片机工作起来 ,最基本的电路的构成由单片机 、时钟电路 、复位电路等组成 。 单片机最小系统如下图 2-2 所示 。图 3-1单片机最小系统.专业 .专注.AT89C51 的管脚说明 : 电源引脚Vcc( 40 脚):典型值 5V。Vss( 20 脚):接低

9、电平 。 外部晶振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

10、脚):外部程序存储器读选通信号。-EA/Vpp(31 脚):外部程序存储器使能端 。第二功能 :编程电压输入端 ( +21V )。( 3) AT89C51 单片机的 P 口特点:P0 口:是一个 8 位漏极开路输出型双向 I/O 端口 。 作为输出端口时 ,每位能以吸收电流的方式驱动 8 个 TTL 输入,对端口写 1 时,又可作高阻抗输入端用 。 在访问外部程序或数据存储器时 ,它是时分多路转换的地址 (低 8 位) / 数据总线 ,在访问期间将激活内部的上拉电阻 。P1 口:P1 口是一个带有内部上拉电阻的8 位双向 I/O 端口 。 P1 口的输出缓冲器可驱动 (吸收或输出电流方式 )4

11、 个 TTL 输入 。对端口写 1 时,通过内部的上拉电阻把端口拉到高电位 ,这时可作输入口 。P2 口作输入口使用时 ,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil )。P2 口: P2 口是一个带有内部上拉电阻的8 位双向 I/O 端口 。 P2 口的输出缓冲器可驱动 (吸收或输出电流方式 )4 个 TTL 输入 。对端口写 1 时,通过内部的上拉电阻把端口拉到高电位 ,这时可作输入口 。P2 口作输入口使用时 ,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流(Iil )。在访问外部程序存储器时和 16 位外部地址的外部数据存储器 (如执行MOVX DPT

12、R )时,P2 口送出高 8 位地址 。在访问 8 位地址的外部数据存储器 (如执行 MOVX RI )时,P2 口引脚上的内容 (就是专用寄存器 (SFR)区中的 P2 寄存器的内容 ),在整个访问期间不.专业 .专注.会改变。P3 口:P3 口是一个带有内部上拉电阻的 8 位双向 I/O 端口 。 P3 口的输出缓冲器可驱动 (吸收或输出电流方式 )4 个 TTL 输入 。对端口写 1 时,通过内部的上拉电阻把端口拉到高电位 ,这时可作输入口 。P3 口作输入口使用时 ,因为内部有上拉电阻,那些被外部信号拉低的引脚会输出一个电流 (Iil )。( 4)排阻的作用所谓排阻就是若干个参数完全相

13、同的电阻 ,它们的一个引脚都连到一起 ,作为公共引脚 。其余引脚正常引出 。所以如果一个排阻是由 n 个电阻构成的 ,那么它就有 n+1 只引脚,一般来说 ,最左边的那个是公共引脚 。 它在排阻上一般用一个色点标出来。排阻一般应用在数字电路上 ,比如:作为某个并行口的上拉或者下拉电阻用。使用排阻比用若干只固定电阻更方便。3.2 单片机时钟电路时钟电路用于产生单片机工作所需要的时钟信号 ,单片机本身就是一个复杂的同步时序电路 ,为了保证同步工作方式的实现 ,电路应在唯一的时钟信号控制下严格地按时序进行工作 。在 MCS-51 芯片内部有一个高增益反相放大器 ,其输入端为芯片引脚 X1,输出端为引

14、脚 X2,在芯片的外部跨接晶体振荡器和微调电容 ,形成反馈电路 ,就构成了一个稳定的自激振荡器 。此电路采用 12MHz 的石英晶体 。时钟电路如下图 :图 3-2 时钟电路3.3 复位电路电阻的作用是用于上电复位的, VCC 以上电,由于电容两端电压不能突变,所以 RST上为高电平 ,然后电容放电 ,RST就为低电平了 ,还可以用手动复位 ,此电路应用自动复位 。.专业 .专注.图 3-3 复位电路3.4 控制电路控制电路用于控制工作电路的工作情况 ,根据要求来控制电路 ,本电路的控制电路用来控制流水灯的工作情况 ,当按下 1、 2、 3、 4 各个开关时 ,电路具有左移 、右移、全亮、全没

15、的功能 ,具体的控制电路如下 :R14R15R16R1710k10k10k10k图 3-4 控制电路3.5 工作电路( 1)工作电路就是根据总的电路的指令 ,来反应工作情况 。本电路的流水灯电路具体的如下 :.专业 .专注.图 3-5 工作电路(2)根据各个模块的功能及他们的信号传输,连接电路如下 :.专业 .专注.图 3-6 硬件连接图表 3-7 所用元器件清单 :元件名称型号数量 /个用途单片机AT89S511控制核心晶振12MHZ1晶振电路电容30pF2晶振电路电阻Respack88上位电阻.专业 .专注.电阻10k4开关电阻电阻10k1复位电路电源+5v1提供电源拨码开关BUTTON4

16、发出信号数码管7SEG-MPX1-CC8显示电路件设计4.1 程序框图开始四、软读入四个开关的状态无输入判断开关状态灯灯灯灯左右全全移移亮灭点点亮亮灯流动运行或全亮全灭图 4-1 程序框图.专业 .专注.4.2 软件流程图 :图 4-2 软件的流程图4.3 程序设计ORG 0000H;单片机上电后从 00000H 地址执行AJMP START;跳转到主程序存放地指出ORG 0030H;设置主程序开始地址START: MOV SP,#60H;设置堆栈起始地址为 60HMOV DPTR,#TAB;把 TAB 表首地址送入 DPTRSTART1: JNB P0.0,LOOP1 ;判断 P0.0 处开

17、关是否闭合JNB P0.1,LOOP2 ;判断 P0.1 处开关是否闭合JNB P0.2,LOOP3 ;判断 P0.2 处开关是否闭合JNB P0.3,LOOP4 ;判断 P0.3 处开关是否闭合AJMP START1;如果没有开关闭合重新检测LOOP1:CLRA;累加器清零MOVCA,A+DPTR ; 取数值表中的数CJNEA,#11111111B,SHOW1; 检查左移结束标志AJMP START;左移结束重新检测开关状态.专业 .专注.SHOW1:MOV P1,A;将数据送到 P1 口ACALL DELAY;调用延时子程序INC DPTR;取数据表指针指向下一数据AJMP LOOP1;继

18、续查表取数据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

19、;设定累加器初始值MOVC A,A+DPTR ; 取数值表中的数MOV P1,A;将数据送到 P1 口AJMP START;全灭结束重新检测开关状态DELAY:MOV R0,#10 ; 延时 1sD0: MOV R1,#200D1:MOV R2,#249NOPD2: DJNZ R2,D2DJNZ R1,D1DJNZ R0,D0RET;子程序返回TAB:DB 11111110BDB 11111101BDB 11111011BDB 11110111BDB 11101111BDB 11011111B.专业 .专注.DB 10111111BDB 01111111BDB 11111111BDB 0111

20、1111BDB 10111111BDB 11011111BDB 11101111BDB 11110111BDB 11111011BDB 11111101BDB 11111110BDB 00000000BEND;程序结束五、使用 keil 、proteus软件调试仿真说明5.1 系统仿真本设计使用的 Keil C51 软件来进行编程 。Keil C51 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案 ,通过一个集成开发环境 (uVision )将这些部份组合在一起 。Proteus 的 ISIS是一款 Labcenter 出品的电路分析实物仿真系统

21、,可仿真各种电路和 IC,并支持单片机 ,元件库齐全 ,使用方便 ,是不可多得的专业的单片机软件仿真系统 。.专业 .专注.图 5-1仿真电路图5.2 仿真调试本系统的调试是把在Keil 里面写好的程序通过编译不出现任何错误后将生成的后缀名为 .HEX 的文件加载到 AT89C51 单片机中 。接下来我们将在PROTEUS软件进行软硬件结合的调试 。.专业 .专注.六、心得体会经过一段时间的努力 ,顺利的完成了这次单片机课设 。从课题的选择开始 ,流水灯的设计 、硬件和软件系统的设计 、到最后的 Proteus 软件仿真完成 ,这其中经历了很多困难 ,但是更重要的是在这个过程中我得到了很大的锻炼 。一方面通过 C51 单片机等一些器件的设计让我学习和掌握了单片机技术的基础知识和技术要点,也使以前学的很多知识都得到了运用 ;另一方面在用 Proteus 软件画电路图时,然后再转换成一维的 WORD 中进行编辑 ,这个过程中让我掌握了计算机辅助的设计技术 。当然 ,这是一个需要不断的尝试 ,不断的校核 ,不断的修改 ,最后完成一个合理的设计的过程 。需要的是细心和耐心 。在很大程度上培养了我拼搏的工作精神。 使我受益匪浅 ,更加明确了自己专业的方向 。通过本次课设

温馨提示

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

评论

0/150

提交评论