学习任务三单片机循环彩灯制作电子教案 单片机应用技术.doc
-
资源ID:76541121
资源大小:182KB
全文页数:5页
- 资源格式: DOC
下载积分:5金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
学习任务三单片机循环彩灯制作电子教案 单片机应用技术.doc
教学目标知识目标:掌握单片机端口的控制方法;;熟悉常用的单片机传送指令的使用方法;理解常用几种结构的程序设计特点;掌握单片机数据输入的方法;掌握常用元器件的特性和测试方法;掌握单片机子程序的编写及调用方法;掌握单片机延时程序的编写方法。能力目标:能够灵活运用单片机中的传送指令;能够使用WAVE6000软件对汇编程序进行调试、编译等;能够进行LED电路的正确连接及调试;能够进行时钟电路、复位电路的正确连接及调试;能够根据项目要求设计出硬件电路;能够进行本项目单片机系统控制电路的正确连接及调试;能够使用编程器下载程序到单片机中。素质目标:锻炼学生的团队合作能力、专业技术交流的表达能力;制定工作计划的方法能力;获取新知识、新技能的学习能力;解决实际问题的工作能力。教学重点程序结构设计;单片机端口控制方法;彩灯的硬件电路设计;同一控制目的,不同的软件设计方法;彩灯控制系统软硬件联合调试。教学难点彩灯控制系统硬件设计;彩灯控制系统软件设计、彩灯控制系统软硬件联合调试。教学手段实物演示;教学板书;录像插件;电子课件。教学学时16教 学 内 容 与 教 学 过 程 设 计注 释学习任务三 单片机循环彩灯制作任务说明前两个学习任务讲了单片机内部组成和功能、指令系统,以及如何利用软件进行单片机的开发。从本学习任务开始,我们就真正利用单片机做一些小的项目,以此来掌握单片机的指令系统,最终熟悉单片机的应用和开发过程。掌握开发步骤很重要,即明确系统功能硬件设计搭建硬件平台软件设计下载程序到单片机并调试。在本学习任务中,设计一个应用实例循环彩灯(又称为流水灯)制作。就是将若干个发光二极管排列成一列或其他形状,在单片机的控制下依次发光,达到流动的效果。单片机循环彩灯系统的功能如下。(1)把8个发光二极管排成一列,单片机控制流水灯做单一灯的流动,从左至右再从右至左,如此反复。每一个发光二极管点亮时间为500 ms。(2)利用开关作为单片机的输入,拨动不同的开关,循环彩灯点亮的方式和花样有所不同。通过实训模块的操作训练和相关知识的学习,使学生熟悉单片机端口控制的工作原理,掌握发光二极管的控制方法,熟悉单片机开发的基本过程。任务准备一、单片机中常用的数制及编码1)数制数制就是规定计数的进位制度,又称为进位计数制。2)基数基数是指在某种数制中用于组成数字允许选择的数码集合中的数码个数。3)位权位权即一个常数,这个常数就是一个以该进制的基数为底,以数码所在位置的编号为指数的幂数。2.任意进制的通用表示3.常用数制1)十进制数十进制(decimal)数的特点是基数为10,有09共10个数码,逢十进一;各位的权为10i(i=-mn-1,m为小数部分位数,n为整数部分位数)。2)二进制数二进制(binary)数的特点是基数为2,有0和1两个数码,逢二进一;各位的权为2i(i=-mn-1,m为小数部分位数,n为整数部分位数)。3)十六进制数十六进制(hexadecimal)数的特点是基数为16,有09和A、B、C、D、E、F(对应十进制1015)共16个数码,逢十六进一;各位的权为16i(i=-mn-1,m为小数部分位数,n为整数部分位数)。4.各种数制间的转换1)非十进制数转换成十进制数 2)十进制数转换成非十进制数 3)二进制数转换成十六进制数 4)十六进制数转换成二进制数5.单片机中常用编码1)BCD码BCD码就是二-十进制编码,它用4位二进制数表示1位十进制数,称为压缩的BCD码。8421BCD特点如下:(1)由4位二进制数00001001分别表示十进制数09。(2)每4位二进制数进位规则为逢十进一。(3)当进行两个BCD码运算时,为了得到BCD码结果,需要进行十进制调整。2)ASCII码ASCII码是由7位二进制数码构成的字符编码,常用的ASCII码表共有27=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)延时程序。软件延时程序在单片机程序设计中应用十分广泛,其主要设计思想就是利用DJNZ减1指令构成循环程序,只占用CPU的时间,而不进行任何实质性操作来实现延时功能。有时在这个循环体中再加入一条空操作指令NOP,这样经过循环体的循环,延时的时间就会更长。任务一工作内容及要求本任务通过单片机对接在P0口上的8个发光二极管进行移动和闪烁控制,形成一个简易的循环彩灯控制系统。控制过程为:上电后第一个彩灯(二极管)点亮500 ms后,开始由右向左移动,即从低位向高位移动,移动到最左边后再返回向右移动,当彩灯返回移动到最开始处时8个彩灯一起闪烁3次,然后整个程序再重复执行下去,直到关闭电源才会停止。通过实训熟悉单片机控制I/O端口的方法,了解和熟悉单片机硬件系统和软件指令系统的开发过程。任务分析根据本任务的工作内容及要求,单片机如何控制彩灯的亮灭是任务实施的关键。由于单片机的结构原因,51系列单片机对外提供负载电流(拉电流)的能力很弱,如果外接多个负载(本任务中负载是发光二极管),需要单片机对外提供的总电流会很大,超出它的供给能力,这样不仅驱动不了这些负载,还会造成单片机损坏。但单片机接受灌电流(单片机接受负载输入的电流)的能力却很强,所以本任务中的8个发光二极管的负极与P0口的各位直接连接,由于不同的发光二极管驱动电流不同,每个发光二极管的正极串联一个47220 的限流电阻到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。知识链接一、顺序结构程序设计二、分支结构程序设计在一个实际的应用程序中,程序不可能始终是顺序执行的,通常需要根据实际问题设定条件,通过对条件是否满足的判断产生一个或多个分支,以决定程序的流向,这种程序称为分支程序。三、循环结构程序设计循环结构程序一般由以下四部分组成。1.循环初始化循环初始化程序段位于循环程序的开头,用于完成循环前的准备工作。例如,给循环体计数器、各数据地址指针及运算变量设置初值等。2.循环处理循环处理程序段位于循环程序的中间,又称循环体,是循环程序不断重复执行的部分,用于对数据进行实际处理。此部分要求编写得尽可能简洁,以提高程序的执行速度。3.循环控制循环控制包括修改变量和循环结束条件检测两部分。通过修改循环计数器和数据指针的值,为下一次循环和循环结束检测做准备,然后通过条件转移来判断循环是否结束。4.循环结束循环结束程序段用于存放执行循环程序后的运算结果等操作。任务二可人工干预的彩灯控制系统设计工作内容及要求本任务是在P1端口设置8个开关作为输入设备,开关的一端通过上拉电阻直接接电源,另一端接地,通过读取P1的状态,使相关的二极管点亮或进行彩灯的花式闪烁。通过本任务的学习,使学生熟悉硬件电路的设计和软件程序开发过程。任务分析 在前一个任务彩灯电路的基础上,在P1端口接8位开关,在P0口接8只发光二极管,拨动开关使开关闭合,相对应的发光二极管点亮,即把当时的开关状态显示出来。在不改变电路的情况下,对程序修改控制彩灯的变化样式。如果按下接在P1.0上的开关,发光二极管最末一个点亮并向左循环移动;按下接在P1.7上的开关,发光二极管有一个点亮并向右循环移动;其他开关按下时,对应的发光二极管点亮。知识链接一、如何把数据送给单片机的I/O端口数据输入的方法通常有两种,即数据直接输入法和数据增减输入法。直接输入法是由10个数字按键或16个数字按键外加多个符号键组成,直接输入和调整参数,这种方法输入数据直观、方便、快捷,但需要占用多个按键,因此硬件和软件都较为复杂;增减输入法是先在显示器上预置一个数据的值,然后利用增键和减键两个按键进行调整,这种方法用键量少,但参数调整比较缓慢,只适用于调整变化范围窄小的参数,如果对增减输入法进行适当的软件改进,也可使之适用于多参数且调整变化范围大的应用场合。二、分支结构程序设计1.位地址(1)位寻址区。在51系列单片机中,有一部分RAM和一部分SFR是具有位寻址功能的,也就是说这些RAM中的20H2FH共16个单元中的每一个位都有自己的地址,可以直接用这个地址来对这些位单独进行操作,这些位就叫51单片机的位寻址区。(2)可以位寻址的特殊功能寄存器。2.位操作指令1)位控制转移指令位操作指令的种类很多,在本任务中,我们只使用位控制转移指令。其主要包括下面三种指令。JB bit,relJNB bit,relJNC bit,rel2)本任务分支结构程序设计方法把外接的输入开关的状态送给单片机的累加器A中,再进行相应位的判断,由于端口所接开关的状态值在ACC中没有变化,判断ACC某位的值就可获得相应开关的状态,根据系统功能再进行相应的控制操作,这样就形成了分支结构的程序设计。明确任务。教师讲解单片机中常用的数制。结合例题讲解各数制之间的转换。根据前面所学的指令进行程序解读,借此使学生对程序有一定的了解。逐渐了解语句本身的含义和其深层表达的含义。教师提出任务要求,学生分组讨论分析。是构成复杂结构程序的基础。学生思考在实际应用系统中的作用。教师提出任务及要求,学生讨论分析。5第 页