收藏 分享(赏)

基于51单片机流水灯延时点亮课程设计.docx

上传人:无敌 文档编号:628510 上传时间:2018-04-15 格式:DOCX 页数:24 大小:364.22KB
下载 相关 举报
基于51单片机流水灯延时点亮课程设计.docx_第1页
第1页 / 共24页
基于51单片机流水灯延时点亮课程设计.docx_第2页
第2页 / 共24页
基于51单片机流水灯延时点亮课程设计.docx_第3页
第3页 / 共24页
基于51单片机流水灯延时点亮课程设计.docx_第4页
第4页 / 共24页
基于51单片机流水灯延时点亮课程设计.docx_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、目 录第 1 章 设计任务及要求 .11.1 课程设计的目的 .11.2 课程设计的基本要求 .11.3 课程设计具体要求 .11.4 设计任务 .2第 2 章 方案设计 .22.1 设计方案 .22.2 模块说明 .22.2.1 AT89S51 介绍 .22.2.2 串行接口 LED 驱动器 MAX7219 .22.2.3 74LS273 介绍 .22.2.4 键盘扫描控制方式 .2第 3 章 程序及原理图说明 .23.1 程序流程图 .23.2 程序 .23.3 原理图 .2第 4 章 调试及仿真结果 .24.1 仿真 .2第 5 章 心得体会 .2参考文献 .21第 1 章 设计任务及要

2、求1.1 课程设计的目的1.进一步熟悉和掌握单片机的结构及工作原理。2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。3.通过课程设计,掌握以单片机核心的电路设计的基本方法和技术。4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。5.通过完成一个包括电路设计和程序开发的完整过程,了解开发一单片机应用系统的全过程,为今后从事相应开发打下基础。1.2 课程设计的基本要求1.认真认识设计的意义,掌握设计工作程序,学会使用工具书和技术参考资料,并培养科学的设计思想和良好的设计作风。2.提高模型建立和设计能力,学会应用相关设计资料进行设计计算的方法。3.提高独立分析、解决问题的能

3、力,逐步增强实际应用训练。4.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。1.3 课程设计具体要求1 原理图设计1.原理图设计要符合项目的工作原理,连线要正确。2.图中所使用的元器件要合理选用,电阻、电容等器件的参数要正确标明。3.原理图要完整,CPU、外围器件、外扩接口、输入/输出装置要一应俱全。2 程序调计(1) 根据要求,将总体功能分解成若干个子功能模块,每个功能模块完成一个特定的功能。(2) 根据总体要求及分解的功能模块,确定各功能模块之间的关系,设计出完整的程序流程图。3 程序调试:编写相关程序,并进行仿真。4 设计说明书(1) 原理图设计说明简要说明设计

4、目的,原理图中所使用的元器件功能及在图中的作用,各器件的工作过程及顺序。(2) 程序设计说明对程序设计总体功能及结构进行说明,对各子模块的功能以及各子模块之间的关系作较详细的描述。(3) 画出工作原理图,程序流程图并给出相应的程序清单。21.4 设计任务STC12C5A60S2(引脚排序及基本功能同 AT89S51)作为主控芯片,设计 LED 灯循环显示速度的控制电路。一是设计 74LS273 扩展 8 个 LED 显示;二是设计按键电路,作为 LED 循环显示速度的参数输入;三是设计根据不同的输入参数改变 LED 循环显示速度的程序;四是扩展 MAX7219 或 LCD1602 作为相关输入

5、参数的显示。3第 2 章 方案设计2.1 设计方案本设计中采用 AT89S51 单片机为整个系统的控制核心,设计了一款 LED 灯循环显示速度的按键控制。其主要结构如图 2.1 所示。图 2.1 LED 灯循环显示速度的按键控制原理框图主电路部分包括:(1)AT89S51;(2)MAX7219;(3)74LS273;(4)电阻;(5)电容;(5)LED;(6)显示器。2.2 模块说明2.2.1 AT89S51 介绍如图 2.2.1 为 AT89S51 引脚图按键控制电路 主控芯片(AT89C51)74LS273 扩展 8个 LED 循环显 示MAX719显示器(显示延时时间)4图 2.1.1P

6、0 口:P0 口是一组 8位漏极开路型双向I0口,也即地址数据总线复用口。作为输出口用时,每位能驱动 8 个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 F1ash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口:Pl 是一个带内部上拉电阻的 8 位双向 IO 口,Pl 的输出缓冲级可驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内

7、部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。Flash 编程和程序校验期间,Pl 接收低 8 位地址。XTALl:振荡器反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。2.2.2 串行接口 LED 驱动器 MAX7219 MAX7219 引脚如图 2.2.2 所示图 2.2.2 MAX7219 引脚图 5MAX7219 采用串行数据传输方式,由 16 位数据包发送到 DIN 引脚的串行数据在每个 CLK 的上升沿被移入到内部 16 位移位寄存器中,然后在 LOAD 的上升沿将数据锁存到数字或控制寄存器中。LOAD 信号必须在第 16 个时钟上升沿

8、同时或之后,但在下一个时钟上升沿之前变高,否则将会丢失数据。DIN 端的数据通过移位寄存器传送,并在 16.5 个时钟周期后出现在 DOUT 端。DOUT 端的数据在 CLK 的下降沿输出。串行数据以 16 位为一帧,其中 D15D12 可以任意,D11D8 为内部寄存器地 址,D7D0 为寄存器数据,工作时序如下:图 2.2.2 时序图MAX7219 的内部寄存器及其地址 62.2.3 74LS273 介绍74LS273 的管脚图如图 2.2.3 所示(1)1 脚是复位 CLR,低电平有效,当 1 脚是低电平时,输出脚 2(Q0)、5(Q 1)、6(Q 2)、9(Q 3)、12(Q 4)、1

9、5(Q5)、16(Q 6)、19(Q 7)全部输出 0,即全部复位;(2)当 1 脚为高电平时,11(CLK)脚是锁存控制端,并且是上升沿触发锁存,当 11 脚有一个上升沿,立即锁存输入脚 3、4、7、8、13、14、17、18 的电平状态,并且立即呈现在在输出脚 2(Q0)、5(Q 1)、6(Q 2)、9(Q3)、12(Q 4)、15(Q 5)、16(Q 6)、19(Q 7)上74ls273 管脚功能:1D8D 为数据输入端,1Q8Q 为数据输出端,正脉冲触发,低电平清除,常用作 8 位地址锁存器。图 2.2.3 74LS273 的管脚图2.2.4 键盘扫描控制方式 程序控制扫描方式。特点:

10、对 CPU 工作影响小,但应考虑键盘处理程序的运行间隔周期不能太长,否则会影响对键输入响应的及时性。(2) 键抖动及消除软件去抖动检测到按键按下后,执行延时 10ms 子程序后再确认该键是否确实按下,消除抖动影响。7图 2.2.4 抖动影响 独立式按键及其接口电路图 2.2.5 按键接法8第 3 章 程序及原理图说明3.1 程序流程图3.2 程序CLK EQU P1.2DIN EQU P1.0LOAD EQU P1.1ORG 0000HAJMP KEYA9KEYA:ORL P1,#7FH ;置 P1.0P1.2 为输入态MOV A,P1 ;读键值,键闭合相应位为 0CPL A ;取反,键闭合相

11、应位为 1ANL A,#11111000B;屏蔽高 5 位,保留有键值信息的低 3 位 JZ GRET ;全 0,无键闭合,返回LCALL DL10ms ;非全 0,有键闭合,延时 10ms,软件去抖动MOV A,P1 ;重读键值,键闭合相应位为 0CPL A ;取反,键闭合相应位为 1ANL A,#11111000B;屏蔽高 5 位,保留有键值信息的低 3 位JZ GRET ;全 0,无键闭合,返回;非全 0,确认有键闭合KEY0: MOV A,P1CPL ACJNE A,#08H,KEY1LCALL A0LCALL GOKEY1:MOV A,P1CPL ACJNE A,#10H,KEY2LCALL A1LCALL GO1KEY2:MOV A,P1CPL ACJNE A,#20H,KEY3LCALL A2LCALL GO2KEY3:MOV A,P1CPL ACJNE A,#40H,KEY4LCALL A3LCALL GO3KEY4:MOV A,P1CPL ACJNE A,#80H,KEYALCALL A4LCALL GO4RETURN:RETGRET:RETDL10ms:MOV R7,#0AHDL1: MOV R6,#0FFHDJNZ R6,$

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报