学习任务三 下载本文

内容发布更新时间 : 2024/5/18 8:27:00星期一 下面是文章的全部内容请认真阅读。

教学目标 知识目标:掌握单片机端口的控制方法;;熟悉常用的单片机传送指令的使用方法;理解常用几种结构的程序设计特点;掌握单片机数据输入的方法;掌握常用元器件的特性和测试方法;掌握单片机子程序的编写及调用方法;掌握单片机延时程序的编写方法。 能力目标:能够灵活运用单片机中的传送指令;能够使用WAVE6000软件对汇编程序进行调试、编译等;能够进行LED电路的正确连接及调试;能够进行时钟电路、复位电路的正确连接及调试;能够根据项目要求设计出硬件电路;能够进行本项目单片机系统控制电路的正确连接及调试;能够使用编程器下载程序到单片机中。 素质目标:锻炼学生的团队合作能力、专业技术交流的表达能力;制定工作计划的方法能力;获取新知识、新技能的学习能力;解决实际问题的工作能力。 程序结构设计;单片机端口控制方法;彩灯的硬件电路设计;同一控制目的,不同的软件设计方法;彩灯控制系统软硬件联合调试。 彩灯控制系统硬件设计;彩灯控制系统软件设计、彩灯控制系统软硬件联合调试。 教学重点 教学难点 教学手段 教学学时 实物演示;教学板书;录像插件;电子课件。 16 教 学 内 容 与 教 学 过 程 设 计 注 释 学习任务三 单片机循环彩灯制作 〖任务说明〗 前两个学习任务讲了单片机内部组成和功能、指令系统,以及如何利用软件进行单片机的开发。从本学习任务开始,我们就真正利用单片机做一些小的项目,以此来掌握单片机的指令系统,最终熟悉单片机的应用和开发过程。掌握开发步骤很重要,即明确系统功能—硬件设计—搭建硬件平台—软件设计—下载程序到单片机并调试。 在本学习任务中,设计一个应用实例——循环彩灯(又称为流水灯)制作。就是将若干个发光二极管排列成一列或其他形状,在单片机的控制下依次发光,达到流动的效果。单片机循环彩灯系统的功能如下。 (1)把8个发光二极管排成一列,单片机控制流水灯做单一灯的流动,从左至右再从右至左,如此反复。每一个发光二极管点亮时间为500 ms。 (2)利用开关作为单片机的输入,拨动不同的开关,循环彩灯点亮的方式和花样有所不同。 通过实训模块的操作训练和相关知识的学习,使学生熟悉单片机端口控制的工作原理,掌握发光二极管的控制方法,熟悉单片机开发的基本过程。 〖任务准备〗 一、单片机中常用的数制及编码 1)数制 数制就是规定计数的进位制度,又称为进位计数制。 2)基数 基数是指在某种数制中用于组成数字允许选择的数码集合中的数码个数。 3)位权 位权即一个常数,这个常数就是一个以该进制的基数为底,以数码所在位置的编号为指数的幂数。 2.任意进制的通用表示 3.常用数制 1 第 页

明确任务。 教师讲解单片机中常用的数制。 1)十进制数 十进制(decimal)数的特点是基数为10,有0~9共10个数码,逢十进一;各位的权为10i(i=-m~n-1,m为小数部分位数,n为整数部分位数)。 2)二进制数 二进制(binary)数的特点是基数为2,有0和1两个数码,逢二进一;各位的权为2i(i=-m~n-1,m为小数部分位数,n为整数部分位数)。 3)十六进制数 十六进制(hexadecimal)数的特点是基数为16,有0~9和A、B、C、D、E、F(对应十进制10~15)共16个数码,逢十六进一;各位的权为16i(i=-m~n-1,m为小数部分位数,n为整数部分位数)。 4.各种数制间的转换 1)非十进制数转换成十进制数 2)十进制数转换成非十进制数 3)二进制数转换成十六进制数 4)十六进制数转换成二进制数 5.单片机中常用编码 1)BCD码 BCD码就是二-十进制编码,它用4位二进制数表示1位十进制数,称为压缩的BCD码。 8421BCD特点如下: (1)由4位二进制数0000~1001分别表示十进制数0~9。 (2)每4位二进制数进位规则为逢十进一。 (3)当进行两个BCD码运算时,为了得到BCD码结果,需要进行十进制调整。 2)ASCII码 7ASCII码是由7位二进制数码构成的字符编码,常用的ASCII码表共有2=128种组合状态,用它们表示52个大小写英文字母、10个十进制数、7个标点符号、9个运算符号及50个其他控制符号。 二、常用指令及延时程序详解 1.数据传送指令 2.控制转移类指令 3.循环移位指令 4.延时子程序 (1)时序分析。 ①时钟周期。单片机要正常工作,必须接晶振电路,晶振电路产生的矩形的周期就是单片机时序的一个基准信号,相当于现实生活中的秒,我们把这个矩形波的周期称为时钟周期,也称为振荡周期。时钟周期可以通过所接的晶振频率求倒数求得,如使用的是12 MHz的晶振,那么它的时钟周期就是1/12 μs。 ②机器周期。单片机工作时,是一条一条地从ROM中取指令,然后一步一步地执行的,因此规定单片机访问一次存储器的时间称为一个机器周期。单片机在运行某一条指令时,通常分为几个基本步骤,单片机完成一个基本步骤的操作所用的时间就是一个机器周期。 机器周期与时钟周期之间的关系为 1个机器周期=12个时钟周期 如果使用的内部时钟,晶振频率为12 MHz,则有 时钟周期=1/晶振频率=1/12 μs 机器周期=12×时钟周期=1 μs ③指令周期。 指令周期就是指执行一条指令的时间,它一般是机器周期的整数倍。某条指令的指令周2 第 页

结合例题讲解各数制之间的转换。 根据前面所学的指令进行程序解读,借此使学生对程序有一定的了解。 逐渐了解语句本身的含义和其深层表达的含义。 〖任务一〗 工作内容及要求 本任务通过单片机对接在P0口上的8个发光二极管进行移动和闪烁控制,形成一个简易 的循环彩灯控制系统。控制过程为:上电后第一个彩灯(二极管)点亮500 ms后,开始由右 向左移动,即从低位向高位移动,移动到最左边后再返回向右移动,当彩灯返回移动到最开 始处时8个彩灯一起闪烁3次,然后整个程序再重复执行下去,直到关闭电源才会停止。通教师提出任务要学生分组讨论过实训熟悉单片机控制I/O端口的方法,了解和熟悉单片机硬件系统和软件指令系统的开发求,分析。 过程。 任务分析 根据本任务的工作内容及要求,单片机如何控制彩灯的亮灭是任务实施的关键。由于单 片机的结构原因,51系列单片机对外提供负载电流(拉电流)的能力很弱,如果外接多个负 载(本任务中负载是发光二极管),需要单片机对外提供的总电流会很大,超出它的供给能力, 这样不仅驱动不了这些负载,还会造成单片机损坏。但单片机接受灌电流(单片机接受负载 输入的电流)的能力却很强,所以本任务中的8个发光二极管的负极与P0口的各位直接连接, 由于不同的发光二极管驱动电流不同,每个发光二极管的正极串联一个47~220 Ω的限流电 阻到VCC,这样就得到了本例的循环彩灯系统电路图,如图3-1所示。 图3-1 循环彩灯系统电路图 如何点亮这些发光二极管呢?根据前面学到的知识,只需使与之对应的端口输出低电平 0即可,这样就会使此二极管正极与负极间产生正向偏置电压,并由电源提供电流流过二极 管,使之点亮发光。同理,若使二极管熄灭,只需使与之对应的端口输出高电平1即可,使 二极管两端等电位或反向偏压,此时二极管截止不发光。 由上述分析可以得出P0端口的工作流程:只有P0.0低电平—只有P0.1低电平—只有 P0.2低电平—……—只有P0.6低电平—只有P0.7低电平—只有P0.6低电平—……—只有 P0.1低电平—只有P0.0低电平—[P0全为高电平(8个灯全灭)—P0端口全为低电平(8 个灯全亮)]共3次—……(循环)。根据系统的功能要求,切换不同发光二极管的时间间隔 为500 ms。 是构成复杂结构〖知识链接〗 程序的基础。 一、顺序结构程序设计 期是机器周期的几倍,就称它为几周期指令。 (2)延时程序。软件延时程序在单片机程序设计中应用十分广泛,其主要设计思想就是利用DJNZ减1指令构成循环程序,只占用CPU的时间,而不进行任何实质性操作来实现延时功能。有时在这个循环体中再加入一条空操作指令NOP,这样经过循环体的循环,延时的时间就会更长。 3 第 页