单片机课程设计彩灯控制.doc_第1页
单片机课程设计彩灯控制.doc_第2页
单片机课程设计彩灯控制.doc_第3页
单片机课程设计彩灯控制.doc_第4页
单片机课程设计彩灯控制.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1 xxxxxxxxx 课程设计报告书课程设计报告书 课程名称 课程名称 单片机课程设计单片机课程设计 课题名称 课题名称 彩灯控制彩灯控制 专专 业 业 x 班班 级 级 x 学学 号 号 x 姓姓 名 名 x 成成 绩 绩 x 年年 x 月月 x 日日 自控系单片机课程设计 2 目目 录录 1 设计目的设计目的 3 2 设计要求和设计指标设计要求和设计指标 3 3 设计内容设计内容 4 3 1 硬件部分 4 3 2 软件部分 9 4 总结总结 14 主要参考文献主要参考文献 15 自控系单片机课程设计 3 摘摘 要要 近年来随着微控技术的日益完善和飞速发展 单片机的应用正在不断深入 它的 应用必将导致系统控制技术从根本上发生变革 同时带动传统控制检测技术日益更新 它在工业控制 数据采集 智能化仪表 机电一体化 家用电器领域得到了广泛应 用 极大地提高了这些领域的技术水平和自动化控制 在实际检测和自动控制的单片 机应用系统中 单片机往往作为一个核心部件来使用 仅单片机方面的知识是不够的 还应根据具体硬件结构软硬件结合 加以完善 在社会经济快速发展 人们生活水平的日益提高的今天 对于 LED 灯花样的要求越来 越高 像字体广告 电子宣传字幕 1 1 设计目的设计目的 通过课程设计的教学实践 将课本所学应用于实际中 缩小理论与实际的差距 进一步学习 掌握单片机应用系统的有关知识 加深了解单片机的工作原理 初步掌 握简单的单片机应用系统的设计 制作 调试的方法 使自己的设计水平和对所学的 知识的应用能力以及分析问题 解决问题的能力得到全面提高 2 2 设计要求及设计指标设计要求及设计指标 要求要求 1 用 8 盏 LED 灯 实现至少 4 种彩灯灯光效果 不含全部点亮 全部熄灭 2 可以用输入按钮在几种灯光效果间切换 3 可以通过按钮暂停彩灯效果 再次按下相同按钮后继续之前的效果 指标指标 1 按下按键1暂停流水灯的流水 再次按下恢复并继续原来效果 2 按下按键2则是一种流水花型 按下按键3则是第二种花型按下按键三则是 第三种花型 按键1管暂停按键2 3 4分别对应一种流水方式 3 按键 2 实现的流水方式 从两边开始两盏灯依次向中间移动一位到第四盏第五盏 同时亮过之后全亮之后以相反的顺序完成流水 自控系单片机课程设计 4 3 3 设计内容设计内容 3 13 1 硬件部分硬件部分 1 80511 8051 型单片机的基本结构及功能型单片机的基本结构及功能 MCS 51 系列单片机内部包括 CPU 存储器 并行接口 定时 计数器 中断系统 几部分集成在一个单片机上 其功能如下 1 一个 8 位中央处理器 CPU 包括可以进行 8 位算术运算和逻辑运算 ALU 单元 8 位累加器 ACC 寄存器 B 和程序寄存器 PSW 等 2 片内数据存储器 RAM 128B 用于存放可以读 写的数据 如果运算的中间结果 最终结果或预显示的数据等 3 片内程序存储器 ROM EPROM 用于存放程序 一些原始数据和表格 但是有些单 片机内部不带有 ROM EPROM 如 8031 8032 等 4 四个 8 位并行 I O 口 P0 P3 每一个口可以用于输入或输出 5 两个 16 位定时 计数器 每个定时 计数器都可以设置成计数方式 以对外部事 件计数 也可以设置成定时方式 并可以根据计数或定时的结果实现计算机控制 6 五个中断源 具有优先级的中断嵌套结构 两个为外部中断源 INT0 和 INT1 三 个内部中断源 即两个定时 计数中断和一个串行口中断 7 一个全双工通用异步接收发送器 URAT 串行接口 用于实现单片机与单片机或 单片机与其他计算机之间串行通信 8 片内振荡器和时钟电路 时钟振荡电路是控制核心 为控制器提供时钟脉冲 但 是石英晶体与微调电容要外接 时钟频率越高 单片机控制节拍就越快 运算速度也 就越快 不同型号的单片机所需的振荡频也各有不同 MCS 51 单片机最高允许工作频 率为 12MHZ 2 80512 8051 单片机引脚功能单片机引脚功能 1 电源引脚 电源引脚主要负责单片机的供电 有两根引脚 2 外接晶振或外部振荡器引脚 外接晶振或外部振荡器引脚主要负责为 单片机的运行提供时钟振荡器 主要有两根引脚 3 输入输出 I O 端口引脚 8051 提供了 4 个 8 位并行 I O 端口 基本的功能和其 他 51 系列单片机完全一致 部分引脚有扩展功能 自控系单片机课程设计 5 4 复位 控制和选通引脚 复位 控制和选通引脚主要负责单片机程序复位 编程 控制及外部程序存储器的选通 8051 单片机 3 3 特殊功能寄存器特殊功能寄存器 表表 1 8051 特殊功能寄存器一览表特殊功能寄存器一览表 符号 地址 功能介绍 B F0H B 寄存器 ACC E0H 累加器 PSW D0H 程序状态字 IP B8H 中断优先级控制寄存器 P3 B0H P3 口锁存器 IE A8H 中断允许控制寄存器 P2 A0H P2 口锁存器 SBUF 99H 串行口锁存器 SCON 98H 串行口控制寄存器 P1 90H P1 口锁存器 TH1 8DH 定时器 计数器 1 高 8 位 TH0 8CH 定时器 计数器 1 低 8 位 TL1 8BH 定时器 计数器 0 高 8 位 TL0 8AH 定时器 计数器 0 低 8 位 TMOD 89A 定时器 计数器方式控制寄存器 TCON 88H 定时器 计数器控制寄存器 DPH 83H 数据地址指针 高 8 位 DPL 82H 数据地址指针 低 8 位 SP 81H 堆栈指针 P0 80H P0 口锁存器 自控系单片机课程设计 6 PCON 87H 电源控制寄存器 专用寄存器是专门为某些功能部件设计的寄存器 下面分别介绍这几种寄存器的功能 1 程序计数器 PC 程序计数器 PC 是一个 16 位二进制的程序地址寄存器 专门用来 存放下一条需要执行指令的内存地址 能自动加 1 2 累加器 A 累加器 A 或者 ACC 是运算过程中的暂存寄存器 是一个 8 位二进制 寄存器 用于提供操作数和存放操作结果 3 寄存器 B 寄存器 B 一般用于乘除法操作指令 也是一个 8 位二进制寄存器 由 8 个触发器组成 与累加器 A 配合使用 4 程序状态寄存器 PSW 程序状态寄存器 PSW 是一个 8 位寄存器 用于存放 指令执行后的有关状态 为后面的指令执行提供状态条件 5 堆栈指针 SP 推栈指针 SP 是在片内 RAM 中开辟一个存储区域 专门存放堆栈栈顶 的地址 6 数据指针 DPTR 数据指针 DPTR 是一个 16 位寄存器 是由 8 位寄存器 DPH 和 DPL 组合而成 4 4 单片机复位电路单片机复位电路 单片机的复位电路是促使单片机进入复位状态的硬件结构 单片机的复位是很重要的 复位操作可以完成单片机的初始化 也可使处于死机状态下的单片机重新开始运行 1 复位要求 2 上电复位电路 3 手动加上电复位电路 4 定时监视器 WDT 看门狗 复位 5 复杂的复位电路 自控系单片机课程设计 7 5 5 单片机中断系统单片机中断系统 1 中断源中断源 MCS 51 单片机的中断源共有 5 个 其中 2 个为外部中断源 3 个为内部中断源 1 INT0 外部中断 0 中断请求信号由 P3 2 引脚输入 2 INT1 外部中断 1 中断请求信号由 P3 3 引脚输入 3 T0 定时 计数器 0 溢出中断 对外部脉冲计数由 P3 4 引脚输入 4 T1 定时 计数器 1 溢出中断 对外部脉冲计数由 P3 5 引脚输入 5 串行口中断 包括串行接收中断 RI 和串行发送中断 TI 2 中断请求标志中断请求标志 TCON 寄存器中与中断有关的位见表 2 表 2 TCON 寄存器与中断有关的位 位地址 8F8E8D8C8B8A8988 位名称 TF1 TF0 IE1IT1IE0IT0 TF1 T1 溢出中断请求标志位 当定时 计数器 T1 计数溢出后 由硬件使 TF1 置 1 表 示 CPU 请求中断 当 CPU 响应后 由硬件使 TF1 清 0 TF0 T0 溢出中断请求标志位 其意义和功能与 TF1 类同 IE1 外部中断 INT1 中断请求标志位 当检测到 P3 3 引脚信号有效时 由硬件使 IE1 置 1 表示向 CPU 请求中断 当 CPU 响应该中断后 由硬件使 IE1 清 0 IE0 外部中断 INT0 中断请求标志位 其意义和功能与 IE1 类同 IT1 外部中断 INT1 触发方式控制位 也称为外部中断有效方式选择 该为由用户设 置 IT1 1 时 选择边沿触发方式 即当 P3 3 引脚出现下跳变脉冲信号时 才是有效 的中断请求信号 IT1 0 时 选择电平触发方式 即当 P3 3 引脚出现低电平时 才是 有效的中断请求信号 IT0 外部中断 INT0 触发方式控制位 也称为外部中断有效方式选择 该为由用户设 自控系单片机课程设计 8 置 IT0 1 时 选择边沿触发方式 即当 P3 2 引脚出现下跳变脉冲信号时 才是有效 的中断请求信号 IT0 0 时 选择电平触发方式 即当 P3 2 引脚出现低电平时 才是 有效的中断请求信号 3 中断允许控制中断允许控制 IE 寄存器的地址是 A8H 寄存器的内容及地址见表 3 表 3 寄存器的内容及地址 位地址 AFAEADACABAA99A8 位符号 EA ESET1EX1ET0EX0 EA 中断允许总控制为 EA 0 表示 CPU 禁止所有中断 即所有的中断请求被屏蔽 EA 1 表示 CPU 开放中断 但每个中断源的情求是允许还是禁止 要由各自的中断允 许位控制 EX0 INT0 中断允许控制位 EX0 0 禁止 INT0 中断 EX0 1 允许 INT0 中断 EX1 INT1 中断允许控制位 EX1 0 禁止 INT1 中断 EX1 1 允许 INT1 中断 ETO T0 中断允许控制位 ET0 0 禁止 TO 中断 ET0 0 允许 T0 中断 ET1 T1 中断允许控制位 ET1 0 禁止 T1 中断 ET1 0 允许 T1 中断 ES 串行口中断允许控制位 ES 0 禁止串行口中断 ES 1 允许串行口中断 4 中断优先级中断优先级 IP 寄存器地址 B8H 位地址为 BFH B8H 寄存器的内容及位地址见表 位地址 BFBEBDBCBBBAB9B8 位符号 PSPT1PX1PT0PX0 其中 PX0 INT0 中断优先级的设定位 PT0 T0 中断优先级的设定位 PX1 INT1 中断优先级的设定位 PT1 T1 中断优先级的设定位 PS 串行口中断优先级的设定位 6 电路原理图电路原理图 自控系单片机课程设计 9 3 23 2 软件部分软件部分 1 1 kilekile 软件的使用软件的使用 打开 Keil 程序 执行菜单命令 Project New Project 创建 80C51单片 机可控流水灯 项目 并选择单片机型号为 AT89C51 执行菜单命令 File New 创建文件 输入汇编源程序 保存为 80C51 单片机 可控流水灯 ASM 在 Project 栏的 File 项目管理窗口中右击 文件组 选择 Add Files to Group Source Group 将源程序 80C51单片机 可控流水灯 ASM 添加到项目中 执行菜单命令 Project Options for Target Target 1 在弹出的对话 框中选择 Output 选项卡 选中 Create HEX File 在 Debug 选项卡中 选中 Use Proteus VSM Simuslator 执行菜单命令 Project Build Target 编译源程序 如果编译成功 则 在 Output Window 窗口中显示没有错误 并创建了 80C51单片机可控流水灯 HEX 文件 在已绘制好原理图的 Proteus ISIS 菜单栏中 执行菜单命令 Debug Use Remote Debug Monitor 将该项选中 使 Proteus 与 Keil 真正连接起来 使它们联合 调试 自控系单片机课程设计 10 文件组 选择 Add Files to Group Source Group 将源程序 80C51单片机 可控流水灯 ASM 添加到项目中 执行菜单命令 Project Options for Target Target 1 在弹出的对话 框中选择 Output 选项卡 选中 Create HEX File 在 Debug 选项卡中 选中 Use Proteus VSM Simuslator 执行菜单命令 Project Build Target 编译源程序 如果编译成功 则 在 Output Window 窗口中显示没有错误 并创建了 80C51单片机可控流水灯 HEX 文件 在已绘制好原理图的 Proteus ISIS 菜单栏中 执行菜单命令 Debug Use Remote Debug Monitor 将该项选中 使 Proteus 与 Keil 真正连接起来 使它们联合 调试 2 2 流程图流程图 自控系单片机课程设计 11 开始 花型切换时间 T0 计时 1 秒 花型初值 P0 赋值 花型执行完 是否有键按下 结束 执行相应程序 转换花 型程序 重新开始 是 否 是 否 自控系单片机课程设计 12 开始 灯亮 P1 0 是否按下 跳出程序 执行暂停 并给 P0 附 00H 结束 是 否 再次判断 P1 0 是否 按下 是 否 结束 2 源程序 P0 接流水灯 P1 0 P1 3 接键盘 K1K1 EQUEQU P1 1P1 1 K2K2 EQUEQU P1 2P1 2 K3K3 EQUEQU P1 3P1 3 ORGORG 0000H0000H LJMPLJMP CHUCHU ORGORG 000BH000BH LJMPLJMP T0ZDT0ZD ORGORG 0300H0300H CHU CHU MOVMOV R1 0R1 0 MOVMOV R2 00HR2 00H 自控系单片机课程设计 13 MOVMOVR7 00HR7 00H MOVMOVDPTR HXDPTR HX MOVMOV TH0 3CHTH0 3CH MOVMOV TL0 0B0HTL0 0B0H SETBSETB ET0ET0 MOVMOV TMOD 01HTMOD 01H SETBSETB TR0TR0 MAIN MAIN LCALLLCALLKAIKAI SETBSETB EAEA CJNECJNE R1 20 FH 1SR1 20 FH 1S 后换花型后换花型 LCALLLCALL HUANHUAN MOVMOV R1 00HR1 00H FH FH JNBJNB P1 1P1 1 G1 G1 JNBJNB P1 2P1 2 G2 G2 JNBJNB P1 3P1 3 G3 G3 JB JB P3 1 MAINP3 1 MAIN 按下按下 P3 1P3 1 换花型换花型 ZJ ZJ JNBJNB P3 1 ZJP3 1 ZJ CPL CPL P2 0P2 0 JB JB P2 0 JB1P2 0 JB1 LJMPLJMP MAINMAIN G1 G1 LCALLLCALL GQ1GQ1 LJMPLJMP MAINMAIN G2 G2 LCALLLCALLGQ2GQ2 LJMPLJMPMAINMAIN G3 G3 LCALLLCALLGQ3GQ3 LJMPLJMP MAINMAIN LCALL LCALL Q1Q1 LCALL LCALL HUANHUAN MOV MOV R1 00HR1 00H 重新重新 1S1S 后换花型后换花型 LJMPLJMPMAINMAIN GQ1 GQ1 MOVMOV DPTR HXDPTR HX MOVMOV R2 00HR2 00H RETRET GQ2GQ2 MOVMOV DPTR HX1DPTR HX1 MOVMOV R2 00HR2 00H RETRET GQ3GQ3 MOVMOV DPTR HX2DPTR HX2 MOVMOV R2 00HR2 00H RETRET T0T0 中断中断 T0ZD T0ZD MOVMOV TH0 3CHTH0 3CH MOVMOV TL0 0B0HTL0 0B0H INCINC R1R1 RETI RETI 换花型换花型 自控系单片机课程设计 14 HUAN HUAN MOVMOV A R2A R2 MOVCMOVC A A DPTRA A DPTR MOVMOV P0 AP0 A INCINC R2R2 CJNECJNE R2 16 QingR2 16 Qing MOVMOV R2 00HR2 00H Qing Qing RETRET Q1 Q1 花型花型 HX HX DB7EH 0BDH 0DBH 0E7H 00H 0DBH 0BDH 07EH 7EH 0BDH 0DBH DB7EH 0BDH 0DBH 0E7H 00H 0DBH 0BDH 07EH 7EH 0BDH 0DBH 0E7H0E7H 00H 0DBH 0BDH 07EH 00H 0DBH 0BDH 07EH 两边开始两盏灯向中间依次移动两边开始两盏灯向中间依次移动 HX1 HX1 DB7FH 00H 0BFH 00H 0DFH 00H 0EFH 00H 0F7H 00H 0FBH 00H DB7FH 00H 0BFH 00H 0DFH 00H 0EFH 00H 0F7H 00H 0FBH 00H 0FDH 00H 0FEH 00H 10FDH 00H 0FEH 00H 1 亮全亮亮全亮 2 2 亮全亮亮全亮 3 3 亮全亮亮全亮 4 4 亮全亮亮全亮 HX2 HX2 DB7FH 3FH 1FH 0FH 07H 03H 01H 00H 0FFH 01H 03H 07H 0FH DB7FH 3FH 1FH 0FH 07H 03H 01H 00H 0FFH 01H 03H 07H 0FH 1FH 3FH 7FH 1FH 3FH 7FH 依次点亮依次熄灭依次点亮依次熄灭 HX3 HX3 DBDB 67H 33H 66H 77H 88H 22H 11H 99H HE DB67H 33H 66H 77H 88H 22H 11H 99H HE DB HX HX1 HX2 HX3HX HX1 HX2 HX3 KAI KAI JBJB P1 0 KAISHIP1 0 KAISHI 按下则全亮 不按则转移按下则全亮 不按则转移 MOVMOV P0 00HP0 00H 全亮全亮 CLRCLR EAEA 保持之前效果保持之前效果 关闭中断关闭中断 DENG DENG JNBJNB P1 0 DENGP1 0 DENG 判断按下并松开按判断按下并松开按 E E JNBJNB P1 0 PANP1 0 PAN 第二次按下第二次按下 P1 0P1 0 LJMPLJMP E E PAN PAN

温馨提示

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

评论

0/150

提交评论