1、 中 南 民 族 大 学计 算 机 科 学 学 院单 片 机 课 程 设 计 总 结 报 告课 程 单片机课程设计 设计题目 中断控制的闪烁节日彩灯控制器 年级专业 学 号 学生姓名 指导教师 2016 年 11 月 5 日课程设计量化评分标准指导老师评语:指标 最高分 评分要素 评分方案设计 35方案选择合理,分析、设计正确,原理清楚,电路、程序流程图清晰,结构合理,程序简洁、正确。 调试 15 过程清晰,调试方案设计合理,测试点选择适当,程序编写正确,调试步骤清楚。 结果 20 电路及程序运行结果正确,达到预期效果。 设计报告 20报告结构严谨,逻辑严密,论述层次清晰,语言流畅,表达准确,
2、重点突出,报告完全符合规范化要求,用计算机打印成文。工作态度 10 工作态度认真,按时完成设计任务,是否独立完成。总 评 成 绩 中断控制的闪烁节日彩灯控制器 一、 要求中断控制的闪烁节日彩灯控制器要求:能够实现至少4种速度的闪烁显示方式。二、 分析要实现中断控制闪烁节日彩灯必须得读取到外部中断,然后在调用不同的闪烁子程序,且下载之后可以连续切换闪烁速度。三、 设计1、硬件设计(包括设计方案及说明、完整的硬件连接图等)2.1 设计方案及说明外部中断采用的是实验箱上的中断开关,故在主程序中不断调用矩阵键盘的扫描程序,又由于至少四种速度,故读取四个不同的按键分别对应一种速度。闪烁只需要在一个无限循
3、环体内先全部点亮 LED 灯,延时一段时间后,再把LED 灯全部熄灭。这里速度的含义其实是延时的时间不同。当单片机读到某个按键按下时,就执行不同的闪烁子程序,这样就可以实现不同速度的闪烁灯控制。 STC89C58RD+外部中断开关8 位 LED图 1 整体框图单片机的内部结构典型的 51 单片机芯片集成了以下几个基本组成部分。 1 一个 8 位的 CPU2 128B 或 256B 单元内数据存储器(RAM)3 4KB 或 8KB 片内程序存储器(ROM 或 EPROM)4 4 个 8 位并行 I/O 接口 P0P3。5 两个定时/计数器。6 5 个中断源的中断管理控制系统。7 一个全双工串行
4、I/O 口 UART(通用异步接收、发送器) 8 一个片内振荡器和时钟产生电路。图 2 单片机引脚图CPU 结构CPU 是单片机的核心部件。它由运算器和控制器等部件组成。1. 运算器 运算器以完成二进制的算术/逻辑运算部件 ALU 为核心。2.程序计数器 PCPC 是一个 16 位的计数器,用于存放一条要执行的指令地址,寻址范围为 64kB,PC 有自动加 1 功能,即完成了一条指令的执行后,其内容自动加 1。3.指令寄存器 指令寄存器用于存放指令代码。CPU 执行指令时,由程序存储器中读取的指令代码送如指令寄存器,经指令译码器译码后由定时有控制电路发出相应的控制信号,完成指令功能。存储器和特
5、殊功能寄存器1.存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。计算机中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。2.特殊功能寄存器特殊功能寄存器(SFR)的地址范围为 80HFFH。在 MCS51 中,除程序计数器 PC 和四个工作寄存器区外,其余 21 个特殊功能寄存器都在这 SFR 块中。P0-P3 口结构P0 口功能:第一,P0 口可以作为通用 I/O 接口使用,P0.7P0.0 用于传送 CPU 的输入/输出数据。输出数据时可以得到锁存,不需外接专用锁存器,输入数据可以得到缓冲。第
6、二,P0.7P0.0 在 CPU 访问片外存储器时用于传送片外存储器 de 低 8 位地址,然后传送CPU 对片外存储器的读写P1 口 功能:P1 口的功能和 P0 口 de 第一功能相同,仅用于传递 I/O 输入/输出数据。 P2 口的功能:2 口的第一功能和上述两组引脚的第一功能相同,即它可以作为通用 I/O使用。它的第二功能和 P0 口引脚的第二功能相配合,作为地址总线用于输出片外存储器的高 8 位地址。 P3 口功能:P3 口有两个功能:第一功能与其余三个端口的第一功能相同;第二功能作控制用,每个引脚都不同。 P3.0RXD 串行数据接收口 P3.1TXD 串行数据发送口 P3.2IN
7、T0 外中断 0 输入 P3.3INT1 外中断 1 输入 P3.4T0 计数器 0 计数输入 P3.5T1 计数器 1 计数输入 P3.6WR 外部 RAM 写选通信号 P3.7RD 外部 RAM 读选通信号 时钟电路和复位电路单片机的时钟信号用来提供单片机内各种微操作的时间基准;复位操作则使单片机的片内电路初始化,使单片机从一种确定的状态开始运行。时钟电路单片机的时钟信号通常用两种电路形式得到:内部振荡和外部振荡方式。图 3 时钟部分电路图在引脚 XTAL1 和 XTAL2 外接晶体振荡器或陶瓷谐振荡器,构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自积振
8、荡,并产生振荡时钟脉冲。晶振通常选用 6MHZ、12MHZ、或 24MHZ。单片机的时序单位单片机的复位状态当 MCS-5l 系列单片机的复位引脚 RST(全称 RESET)出现 2 个机器周期以上的高电平时,根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。上电复位要求接通电源后,自动实现复位操作。上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。上电后,由于电容 C3 的充电和反相门的作用,使 RST 持续一段时间的高电平。当单片机已在运行当中时,按下复位键 K 后松开,也能使 RST 为一段时间的高电平,从而实现上电或开关
9、复位的操作。图 4 复位电路2.1 硬件连接P0 口全部连接 LED 灯,跳冒将 P3.2JMP 短接到 INT0图 5 实物连接图2、软件编程2.1 软件流程图否是等待中断开外部中断判断中断次数是否为 4调用 LED 闪烁程序中断记录值 n = 1图 6 软件流程图2.2 C51 源程序及其注释#include#includevoid delay_ms(int n); /延时 Nmsvoid led_blink(void); /闪烁函数unsigned char n=0;/记录外部中断次数void main(void)IT0 = 1;/电平触发外部中断 0EX0 = 1;/允许中断 0EA
10、= 1; /开总中断 while(1);void int0_isr(void) interrupt 0 /外部中断 0 中断服务函数 led_blink();/调用闪烁子程序n+;if(n = 4) n=1; void led_blink(void) /闪烁函数 unsigned char flag;switch (n)/不同的中断值对应不同的闪烁程序case 0x1: flag =1; break;/速度 1case 0x2: flag =2; break;/速度 2case 0x3: flag =3; break;/速度 3case 0x4: flag =4; break;/速度 4def
11、ault:break; if(flag=1) P1= 0x00; /点亮小灯delay_ms(500); /延时 0.5sP1 = 0xff; /熄灭小灯delay_ms(500);/延时 0.5sif(flag=2) P1= 0x00; /点亮小灯delay_ms(500); /延时 0.5sP1 = 0xff; /熄灭小灯delay_ms(500);/延时 0.5sif(flag=3) P1= 0x00; /点亮小灯delay_ms(1000); /延时 1sP1 = 0xff; /熄灭小灯delay_ms(1000);/延时 1sif(flag=4) P1= 0x00; /点亮小灯del
12、ay_ms(2000); /延时 2sP1 = 0xff; /熄灭小灯delay_ms(2000);/延时 2svoid delay_ms(int n) /延时 Nmsunsigned char i;while(n-) / 对于 11.0592M 时钟,约延时 1ms for (i=0;i250;i+);3、调试说明先用 KEIL 软件编译产生 HEX 文件,再用 STC ISP 软件将 HEX 文件通过 USB 下载进入单片机。第一次按下中断开关,LED 灯闪烁频率为 0.5Hz;第一次按下中断开关,LED灯闪烁频率为 1Hz;第一次按下中断开关, LED 灯闪烁频率为 2Hz;第一次按下中
13、断开关,LED 灯闪烁频率为 20Hz。即每按下中断开关一次的可以控制 LED 灯的闪烁速度,达到了预定要求。4、设计结果及错误分析外部中断的记录值不能实时读取,分析原因是弄错了变亮的作用域的返回值,原来记录的变量是定义在中断服务函数里面的,为局部变量,只在这个函数体内起作用。重新定义为全局变量后,这个变量的作用域为整个文件就可以在闪烁程序中读到外部中断记录值。不能连续循环切换闪烁速度,原来是外部中断的记录值没有清零。实现四种闪烁速度,故当外部中断发生四次后要使记录值为零,重新记录。四、 总结通过这次单片机课程设计,加强了我动手、思考和解决问题的能力,使我得到了一次用专业知识、专业技能分析和解决现实问题的能力。电路原理和连接,和芯片上的选择等方面作了学习。对电子电路、电子元器件等方面的知识进一步加深认识,同时在软件编程、调试、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立设计单片机应用系统的开发设计工作打下一定的基础。更重要的是如何将逻辑电路灵活运用于实际生活的重要性。我沉得做课程设计同时 也是对课本知识的巩固和加强。参考文献1 李朝青,刘艳玲.单片机原理及接口技术电子技术 第四版 北京:北京航空航天大学出版社,2013.2 吴银琴,陈琨.51 单片机实践教程 第 1 版 北京:科学出版社 2012.