单片机实训教案课题2Word文档下载推荐.docx

上传人:b****5 文档编号:20589639 上传时间:2023-01-24 格式:DOCX 页数:25 大小:43.63KB
下载 相关 举报
单片机实训教案课题2Word文档下载推荐.docx_第1页
第1页 / 共25页
单片机实训教案课题2Word文档下载推荐.docx_第2页
第2页 / 共25页
单片机实训教案课题2Word文档下载推荐.docx_第3页
第3页 / 共25页
单片机实训教案课题2Word文档下载推荐.docx_第4页
第4页 / 共25页
单片机实训教案课题2Word文档下载推荐.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

单片机实训教案课题2Word文档下载推荐.docx

《单片机实训教案课题2Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机实训教案课题2Word文档下载推荐.docx(25页珍藏版)》请在冰豆网上搜索。

单片机实训教案课题2Word文档下载推荐.docx

2、任务二秒脉冲计数测量的设计12课时

模块二定时/计数器和中断系统应用

任务一秒脉冲发生器的设计

组织教学:

点名

知识回顾:

回顾模块一所讲有关单片机的基础知识,包括硬件组成和软件仿真,程序设计和指令组成,

任务引入:

在我们的生活中,处处用得到定时和计数,那么在单片机这个看似弱小,实则强大的工具里,怎样设计,能够组成一个计数器呢?

在这里,要求如下:

由MSC-51单片机组成单片机最小应用系统,产生

XX高级技工学校教案XXJA—02

30

20

45

一个秒脉冲信号,控制发光二极管(LED)每一秒钟点亮一次。

任务分析:

1、用最少的元器件构成一个单片机的最小应用系统,这个在以前的学习中已多次设计,没有任何问题;

2、定时1S如何实现?

定时1S可以采用模块一的延时程序,也可以用定时中断来实现,本次任务采用定时器中断来实现,使用MCS-51单片机内部的定时/计数器,单片机内部一共有2个定时/计数器。

3、单片机产生的秒脉冲如何输出?

秒脉冲由P1.0端口输出,驱动LED每隔1S亮一次。

相关知识讲解:

一、定时/计数器结构及工作原理

1、定时/计数器的结构

MCS-51系列单片机内部提供了两个定时/计数器,分别记作定时/计数器0和定时/计数器1。

两个定时/计数器都是16位的加1计数器。

每输入一个脉冲,计数器加1。

当加到计数器各位全是1,再输入一个脉冲时,计数器全变为0,并产生溢出信号。

两个定时/计数器的16位又各由两个8位计数器组成,它们分别是专用寄存器TH0、TL0和TH1、TL1。

对这四个专用寄存器,可以如同一般的存储单元一样,读取或者写入新的数据。

2、定时/计数器功能

(1)计数功能

对外部输入脉冲计数。

两个定时/计数器都可以用于计数功能,它们计数的信号分别由芯片的两个端口引入。

定时/计数器0计数信号由芯片的T0(P3.4)端引入。

定时/计数器1计数信号由芯片的T1(P3.5)端引入。

外部输入脉冲频率不能高于单片机晶体振荡频率的1/24,因为单片机在相邻两个机器周期中采样到端口上有负跳变时,才计作输入一个脉冲。

由于输入脉冲的周期不确定,所以只能计数。

(2)定时功能

对内部机器周期脉冲计数

定时时间=计数脉冲数*机器周期时间

由于输入的脉冲是周期固定不变并已知单片机内部的机器周期脉冲,因此通过计数,就实现了定时功能。

3、中断定义

单片机主要用于实时控制,当对控制对象进行正常控制时,如果突然发生特殊情况,则CPU必须立即暂停原来正常的控制程序,并转向执行应急处理的服务程序,等应急处理完毕,再恢复到原来正常控制程序的暂停处继续执行,这样的过程称为中断,处理终端功能的部件称为中断系统。

4、中断服务子程序返回指令

中断响应是单片机相应随机的突发要求,进行相应处理,等应急处理的服务程序完毕,要进行中断返回,为区别子程序返回,中断服务子程序返回指令用“RETI”。

5、中断源

能够引发CPU终端的事件源称为中断源。

MCS-51系列单片机有定时中断(定时/计数器0和定时/计数器1)、外中断(外中断0和外中断1)和串行中断3类。

6、定时中断

MCS-51系列单片机内部的2个定时/计数器可以对外部事件进行计数,或者利用他们进行计时。

当它们计数到预定的次数或预定的时间时,通过单片机内部硬件电路将定时中断源的中断请求标志置于“1”,向CPU提出中断请求,让CPU及时作出处理。

7、定时控制寄存器TCON

(1)TCON.7TF1:

定时器1溢出标志位。

当定时器1计满数产生溢出时,由硬件自动置TF1=1。

在中断允许时,向CPU发出定时器1的中断请求,进入中断服务程序后,由硬件自动清0。

在中断屏蔽时,TF1可作查询测试用,此时只能由软件清0。

(2)TCON.6TR1:

定时器1运行控制位。

由软件置1或清0来启动或关闭定时器1。

当GATE=1,且为高电平时,TR1置1启动定时器1;

当GATE=0时,TR1置1即可启动定时器1。

(3)TCON.5TF0:

定时器0溢出标志位。

其功能及操作情况同TF1。

(4)TCON.4TR0:

定时器0运行控制位。

其功能及操作情况同TR1。

(5)TCON.3IE1:

外部中断1请求标志位。

(6)TCON.2IT1:

外部中断1触发方式选择位。

(7)TCON.1IE0:

外部中断0请求标志位。

(8)TCON.0IT0:

外部中断0触发方式选择位。

8、工作方式寄存器TMOD

(1) M1和M0:

方式选择位。

(2)C/T:

功能选择位。

当C/T=0时,设置为定时器工作方式;

当C/T=1时,设置为计数器工作方式。

(3)GATE:

门控位。

当GATE=0时,软件控制位TR0或TR1置1即可启动定时器;

当GATE=1时,软件控制位TR0或TR1须置1,同时还须(P3.2)或(P3.3)为高电平方可启动定时器,即允许外中断、启动定时器。

9、定时/计数器的工作方式

(1).方式0

方式0构成一个13位定时/计数器。

图是定时器0在方式0时的逻辑电路结构,定时器1的结构和操作与定时器0完全相同。

(2).方式1

定时器工作于方式1时。

由图可知,方式1构成一个16位定时/计数器,其结构与操作几乎完全与方式0相同,惟一差别是二者计数位数不同。

(3).方式2

定时/计数器工作于方式2时,。

由图可知,方式2中,16位加法计数器的TH0和TL0具有不同功能,其中,TL0是8位计数器,TH0是重置初值的8位缓冲器。

(4).方式3

定时/计数器工作于方式3时,其逻辑结构图如图所示。

10、中断允许控制寄存器(IE)

专用寄存器

(1)EA中断允许总控制位

EA=0,禁止所有中断;

EA=1,允许有中断,中断取决于各中断源的允许控制位。

(2)ES串行中断允许控制位。

(3)ET1和ET0定时/计数器1和0中断允许控制位。

(4)EX1和EX0外部中断1和中断0允许控制位。

二、相关指令

(1)位置位指令:

SETBC;

C置位

SETBbit;

直接寻址位置位

(2)位复位指令

CLRC;

C清零11

CLRbit;

直接寻址位清零

(3)位控制转移指令

JBCbit,rel;

若直接位=1则转移且清除

三、中断入口地址

MCS-51系列单片机的5个中断源在程序存储器中各有固定的中断入口地址,由此进入中断服务子程序。

单片机在管理的ROM存储单元中保留了一组特殊区。

从0003H~002AH共40个单元,被均匀地分为五段。

每段8个单元,分别作为5个中断源的中断地址区。

四、定时/计数器的应用

在定时/计数器启动之前,要对定时/计数器进行初始化设置,一般要完成以下工作:

1、设置TMOD寄存器参数

通过设置TMOD参数来选定所使用的定时/计数器,确定其功能和工作方式,选择外信号是否参与启/停控制。

未被选用的定时/计数器,它对应TMOD存储器中的参数选择为零,即与抚慰后的状态相同。

2、计算计数初值

根据工作方式,计算计数初值,并装入选定的定时/计数器的TH、TL寄存器。

3、定时中断选择

(1)应用定时中断编程时,需要开启相应的中断控制位,否则将其设为禁止。

(2)若定时/计数器仅使用一次,则要在服务程序中把工作启动/停止控制位TR清为“0”,关闭定时/计数器,若连续使用时,则不改变TR位。

(3)当不使用定时中断时,即用查询溢出标志编程,无论定时/计数仅用一次还是连续使用,每次都要用指令将对应的溢出标志位清“0”。

而采用中断编程时,一旦中断响应,由硬件自动将对应的溢出标志位撤销。

(4)在连续使用时,若采用工作方式1,还需要重新装入计数初值。

任务实施:

一、单片机秒脉冲发生器硬件电路设计

用最少的外部元件,组成单片机最小控制系统。

将电路仿真器和实验台上的发光二极管连接起来。

二、软件设计

1、任务分析

(1)设定控制要控制LED发光二极管每1S亮一次,秒脉冲的周期T=1S,若每隔0.5S将P1.0端口取反,即可以在P1.0端口输出1HZ的方波。

(2)设定TMOD寄存器

用定时/计数器1,工作方式1

(3)计算计数初值

当使用6MHz晶振,用定时/计数器1工作方式1时,

最大工作时间=216*12/(6*106)=131ms

而125ms*4=0.5S,可选定时0.5S,所以定时时间取125ms,对125ms中断4次,就是0.5S。

计数初值=216-定时时间/机器周期=0BDCH

2、程序设计

定时中断程序如下:

ORG0000H

AJMPMAIN

ORG001BH;

定时/计数器1中断入口地址

AJMPRT1

ORG0030H

MAIN:

MOVTMOD,#10H;

设定时/计数器1定时功能,工作方式1

MOVTH1,#0BH;

设置计数初值

MOVTL1,#0DCH;

MOVR2,#00H;

设置记录中断次数初值

SETBEA;

开启总中断允许

SETBET1;

开启定时/计数器1中断允许

SETBTR1;

启动定时/计数器1

MAIN1:

CJNER2,#04H,RT11;

判别满0.5S否

满,则记录恢复初值

RT11:

JCMAIN1;

若(R2)<

5,则继续判0.5s到否

MOVR2,#00H

CPLP1.0

XXMPMAIN1

RT1:

定时/计数器1中断服务子程序

MOVTL1,#0DCH

INCR2;

中断次数加1

RETI;

中断返回

END

三、软件调试与仿真

(1)启动KeiluVision2仿真软件,新建一个项目文件,从器件库中选择一个器件;

(2)建立一个汇编源程序文件;

(3)添加文件到当前项目组中;

(4)设置Optionsfor‘Target1’选项;

(5)编译程序文件;

(6)检查并修改原程序文件中的错误,直至编译通过为止;

(7)、仿真调试:

1)进入仿真环境;

2)熟悉存储器结构;

3)检查存储器状态;

四、实际模拟仿真

将仿真器和仿真实验台上的外部设备结合起来,将P1.0端口接至试验台上的LED发光二极管上,观察点亮情况。

任务评价

1、学生必须掌握课本所给程序的调试和仿真;

2、在满足要求的基础上,自己编程实现其他周期的脉冲发生器;

3、尝试用别的I/O来完成任务;

4、结合学生完成任务情况,给每个学生打分。

任务二脉冲计数测量

回顾任务一所讲有关单片机定时/计数器的基础知识。

在上一个任务中,我们了解到,在51系列单片机内部有两个定时/计数器,上一个任务我们已经学习了定时器,这节课,我们将通过任务来学习计数器,任务设计要求如下:

由MCS-51单片机组成单片机最小应用系统,对外部脉冲信号进行计数测量,通过8个发光二极管(LED)显示。

1、用最小的元器件构成一个单片机的最小应用系统;

2、MCS-51单片机有2个外部中断源,利用外部中断0实现对外部脉冲的测量,即每输入一个外部脉冲,引起外部中断一次。

3、单片机将测量的脉冲个数由P1端口输出,驱动LED发光二极管显示。

一、外部中断

MCS-51系列单片机可以响应2个外部中断源,分别命名为外部中断0和外部中断1。

1、信号引入脚

2个外中断源中断请求信号引入单片机的引脚为:

外中断0:

中断请求信号从P3.2端口引入

外中断1:

中断请求信号从P3.3端口引入

2、信号方式和中断请求标志

(1)信号方式

2个外中断源的中断请求信号可以任选电平方式或脉冲方式:

1)电平方式—低电平有效,即当相对应引脚上出现低电平时表示中断请求;

2)脉冲方式—负跳变有效,即当对应引脚出现由高到低的电平变化时表示中断请求。

(2)定时器控制寄存器与中断请求标志

定时器控制寄存器TCON

二、串行中断

SCON是串行口控制寄存器,其低两位TI和RI锁存串行口的发送中断标志和接收中断标志。

(1) SCON.1TI:

串行发送中断标志。

CPU将数据写入发送缓冲器SBUF时,就启动发送,每发送完一个串行帧,硬件将使TI置位。

但CPU响应中断时并不清除TI,必须由软件清除。

三、中断优先级

1、中断优先级的概念

当多个中断源同时向CPU发出中断请求时,CPU应按照情况的紧急程度,按照优先次序来处理,最紧急的中断源请求优先处理,这就是中断优先级控制。

2、中断优先级控制寄存器(IP)

8051单片机有两个中断优先级,每个中断源都可以通过编程确定为高优先级中断或低

(1)IP.4PS:

串行口中断优先控制位。

PS=1,设定串行口为高优先级中断;

PS=0,设定串行口为低优先级中断。

(2)IP.3PT1:

定时器T1中断优先控制位。

PT1=1,设定定时器T1中断为高优先级中断;

PT1=0,设定定时器T1中断为低优先级中断。

(3)IP.2PX1:

外部中断1中断优先控制位。

PX1=1,设定外部中断1为高优先级中断;

PX1=0,设定外部中断1为低优先级中断。

(4)IP.1PT0:

定时器T0中断优先控制位。

PT0=1,设定定时器T0中断为高优先级中断;

PT0=0,设定定时器T0中断为低优先级中断。

(5)IP.0PX0:

外部中断0中断优先控制位。

PX0=1,设定外部中断0为高优先级中断;

PX0=0,设定外部中断0为低优先级中断。

当系统复位后,IP低5位全部清0,所有中断源均设定为低优先级中断。

如果几个同一优先级的中断源同时向CPU申请中断,CPU通过内部硬件查询逻辑,按自然优先级顺序确定先响应哪个中断请求。

自然优先级由硬件形成,排列如下:

中断源同级自然优先级

外部中断0最高级

定时器T0中断

外部中断1

定时器T1中断

串行口中断最低级

四、中断响应

中断响应是CPU对中断源中断请求的响应,包括保护断点和将程序转向中断服务程序的入口地址(通常称矢量地址)。

中断响应过程

中断响应过程包括保护断点和将程序转向中断服务程序的入口地址。

首先,中断系统通过硬件自动生成长调用指令(LACLL),该指

令将自动把断点地址压入堆栈保护(不保护累加器A、状态寄存器PSW和其它寄存器的内容),然后,将对应的中断入口地址装入程序

计数器PC(由硬件自动执行),使程序转向该中断入口地址,执行中断服务程序。

MCS-51系列单片机各中断源的入口地址由硬件事先设定,分配如下:

中断源入口地址

外部中断00003H

定时器T0中断000BH

外部中断10013H

定时器T1中断001BH

串行口中断0023H

使用时,通常在这些中断入口地址处存放一条绝对跳转指令,使程序跳转到用户安排的中断服务程序的起始地址上去。

五、中断返回

中断返回是指中断服务完后,计算机返回原来断开的位置(即断点),继续执行原来的程序。

中断返回由中断返回指令RETI来实现。

该指令的功能是把断点地址从堆栈中弹出,送回到程序计数器PC,此外,还通知中断系统已完成中断处理,并同时清除优先级状态触发器。

特别要注意不能用“RET”指令代替“RETI”指令。

中断请求的撤除

巡回指导

检查并纠正

评分

CPU响应中断请求后即进入中断服务程序,在中断返回前,应撤除该中断请求,否则,会重复引起中断而导致错误。

MCS-51各中断源中断请求撤消的方法各不相同,分别为:

1)定时器中断请求的撤除

对于定时器0或1溢出中断,CPU在响应中断后即由硬件自动清除其中断标志位TF0或TF1,无需采取其它措施。

2)串行口中断请求的撤除

对于串行口中断,CPU在响应中断后,硬件不能自动清除中断请求标志位TI、RI,必须在中断服务程序中用软件将其清除。

3)外部中断请求的撤除

外部中断可分为边沿触发型和电平触发型。

对于边沿触发的外部中断0或1,CPU在响应中断后由硬件自动清除其中断标志位IE0或IE1,无需采取其它措施。

任务实施

一、硬件设计

硬件包括:

最少的元器件组成的单片机最小应用系统、外部脉冲产生和输入装置、发光二极管(LED)。

硬件的设计都是按照模块化教学设计的。

(1)利用外部中断0来实现对外部脉冲的计数测量,即每输入一个外部脉冲,引起外部中断一次。

(2)外部中断初始化设置。

1)中断允许:

中断总允许EA=1,外中断允许EX0=1

2)中断方式设置:

本任务采用脉冲方式。

2、中断控制设置

设置中断允许控制寄存器IE

设置定时器控制寄存器TCON

三、程序设计

外部中断控制编程程序如下:

AJMPMAIN

ORG0003H;

外中断0入口地址

AJMPRXO

CLRA

MOVP1,#0FFH;

发光二极管都不亮

MOVTCON,#01H;

外部中断0下降沿触发

MOVIE,#81H;

打开外部中断允许位及总中断允许位

XXMP$;

等待中断

RXO:

PUSHPSW;

保护现场

INCA;

脉冲计数

CPLA;

取反

MOVP1,A;

脉冲计数值由P1端口送发光二极管显示

POPPSW;

恢复现场

四、软件调试与仿真

五、实际模拟仿真

将仿真器和仿真实验台上的外部设备结合起来,将P1端口接至试验台上的LED发光二极管上,观察点亮情况。

XX高级技工学校教案XXJA—03

教学效果检验

课堂任务

完成所布置任务,理解讲解内容

课外任务

完成作业和练习

专业主任

签字

教学效果

评价

良好

教学反思

在实习教学中,教学是教学相长的过程,学生有时也是老师的老师,虚心学习,刻苦钻研才能教好课程,

学习小组课外活动内容

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

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1