单片机教案7.doc
- 文档编号:7636101
- 上传时间:2023-05-11
- 格式:DOC
- 页数:12
- 大小:3.49MB
单片机教案7.doc
《单片机教案7.doc》由会员分享,可在线阅读,更多相关《单片机教案7.doc(12页珍藏版)》请在冰点文库上搜索。
常州轻工职业技术学院
单片机原理及应用课程授课教案NO18
授课日期
授课班级
课题
定时/计数器
授课类型
现场教学
授课时数
2
教学
目的
了解定时/计数器的结构与工作原理,定时/计数器的控制寄存器,定时/计数器的4种工作方式的控制。
重点
难点
定时/计数器的工作原理及控制寄存器的作用
定时/计数器的编程
教具
挂图
课件、计算机,小哨兵软件,wave6000软件、单片机实验仪
教学
及
过程分配
主要教学内容
教学方法
的运用
10分钟
本章介绍如何利用单片机内部的定时/计数器控制流水灯,如何制作生产线上的产品计数器。
一、演示
二、工作原理分析
1.单片机流水灯控制电路
教师示范
讲解
10分钟
10分钟
10分钟
20分钟
30分钟
2.流水灯控制程序
2.1程序功能:
P1口接8个发光二极管,每隔0.1秒轮流点亮一个发光二极管。
2.2单片机如何实现定时控制?
1)软件定时(前面已介绍)
2)硬件定时(使用定时/计数器)
3)程序清单(设晶振频率为6Mhz)
OORG0000H
LJMPMAIN
ORG000BH
LJMPT0INT
ORG0100H
MAIN:
MOVTMOD,#01H;方式控制字
MOVTH0,#3CH
MOVTL0,#0B0H;装计数初值
SETBEA;开放T1中断
SETBET0
SETBTR0;启动T1
MOVA,#0FEH
MOVP1,A
SJMP$;等待中断
ORG0200H
T0INT:
MOVTH1,#3CH;重装初值
MOVTL1,#0B0H
RLA
MOVP1,A
RETI
2.3定时/计数器的基本知识
1、单片机定时/计数器结构
图6—7定时/计数器T1逻辑结构图
TL1
D0D7
2.定时/计数器的功能
1)8051单片机内有2个定时/计数器,分别为T0和T1。
2)T0和T1有两种功能:
定时和计数。
(1)计数功能
启动后,对外部输入脉冲(负跳变)进行加1计数,T0的脉冲由P3.4输入,T1的脉冲由P3.5输入。
计数器加满溢出时,将中断标志位TF0/TF1置1,向CPU申请中断。
计数脉冲个数=溢出值—计数初值
(2)定时功能
启动后,开始定时,定时时间到,中断标志位TF0/TF1自动置1,向CPU申请中断。
定时功能也是以计数方式来工作的,此时是对单片机内部的脉冲进行加1计数,此脉冲的周期正好等于机器周期。
定时时间=(溢出值—计数初值)*机器周期
3)T0有四种工作方式,T1有三种工作方式。
(1)方式0——13位定时/计数器方式
溢出值是:
213=8192
(2)方式1——16位定时/计数器方式
溢出值是:
216=65536
(3)方式2——8位自动重装初值定时/计数器方式
溢出值是:
28=256
(4)方式3——T0分成两个独立的8位计数器方式
不讨论
思考:
晶振频率分别为6Mhz和12Mhz时,方式0~方式2的最长定时时间各为多少?
列成表格。
最长定时时间
6Mhz
12Mhz
方式0
16.384ms
8192us
方式1
131.072ms
65.536ms
方式2
512us
256us
3、定时/计数器编程
1)工作方式寄存器TMOD(89H)
TMOD可用于选择定时或计数功能,设置定时/计数器的工作方式。
它的高4位用于对T1的控制;低4位用于对T0的控制。
D7
D6
D5
D4
D3
D2
D1
D0
GATE
C/
M1
M0
GATE
C/
M1
M0
2)控制寄存器TCON
TCON
D7
D6
D5
D4
D3
D2
D1
D0
(88H)
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
3)定时/计数器初始化
①选择工作方式(TM0D)
以最长定时时间为依据,工作方式选择方式1,功能为定时功能。
即:
(TMOD)=00000001B
MOVTMOD,#01H;方式控制字
②计算、装计数初值
初值=溢出值-定时时间/机器周期
=216-0.1s/2us
=3CB0H
MOVTH0,#3CH
MOVTL0,#0B0H;装计数初值
③开放中断(IE)
EA=1,ET0=1
SETBEA;开放T1中断
SETBET0
④启动(TCON)
TR0=1
SETBTR0;启动T1
(2)定时控制程序(中断服务程序)
描述定时时间到,要实现的控制功能。
1.T0工作于重复定时状态,需要在溢出时重装初值。
2.轮流点灯
三、修改程序功能:
(1)使灯的点亮方向与原来相反。
(2)使发光二极管四个一组,轮流点亮,间隔时间1秒。
课后作业:
1.设时钟频率为6MHz,采用定时/计数器T1及其中断控制方式,通过P1.7输出周期为20ms的方波。
编写程序。
P1.7
2.焊接产品计数器电路
程序分析
结合课件
讲解
讲解
讲解
结合课件
讲解
讲解
巡回指导
课
后
小
记
授课教师
常州轻工职业技术学院
单片机原理及应用课程授课教案NO19
授课日期
授课班级
课题
定时计数器----产品计数器
授课类型
讲授
授课时数
2
教学
目的
了解定时/计数器的结构与工作原理,定时/计数器的控制寄存器,定时/计数器的4种工作方式的控制。
重点
难点
定时/计数器的工作原理及控制寄存器的作用
定时/计数器的编程
教具
挂图
课件、计算机,小哨兵软件,wave6000软件、学生实验板
教学
及
过程分配
主要教学内容
教学方法
的运用
10分钟
复习上一堂课内容
2.单片机产品计数器电路
P1口外接8个发光二极管,P1口输出高电平,二极管亮(此部分电路在图中省略)。
讲解
20分钟
10分钟
50分钟
一、硬件电路工作原理分析
1.槽型光耦电路
2.NE555电路
表7.15G555定时器功能表
2.1555构成单稳态触发器
1.电路结构
2.单稳态电路工作原理
当单稳态触发器无触发脉冲信号时,输入端Ui=“1”,当直流电源+UDD接通以后,电路经过一段过渡时间后,OUT端最后稳定输出“0”,放电端D通过导通的三极管接地,电容C两端电压为零。
因高电平触发端TH和放电端D直接连接,所以高电平触发端TH接地,根据555定时器功能可知,此时电路保持原态“0”不变,这种状态即是单稳态触发器的稳定状态,当单稳态触发器有低电平触发脉冲信号时,则触发器输出由“0”变为“1”,三极管由导通变为截止,放电端D与地断开;直流电源+UDD通过电阻R向电容C充电,电容两端电压按指数规律从零开始增加(充电时间常数τ=RC);经过一个脉冲宽度时间,负脉冲消失,输入端Ui恢复为“1”,由于电容两端电压<2/3UDD,所以输出保持原状态“1”不变,这种状态即是单稳态触发器的暂稳状态。
当电容持续充电至电容两端电压>2/3UDD,又有Ui>1/3UDD,那么输出就由暂稳状态“1”自动返回稳定状态“0”。
3.二极管D4
本电路中二极管D4为钳位二极管,输入Ui为低时,电容C的电压被钳位在低电平,输出保持为高电平。
输入Ui变高时,则利用单稳态的延续时间tW进行消抖,保证计数电路只输出单个脉冲。
二、产品计数器程序分析
1.程序清单
ORG0000H
START:
MOVP1,#0FFH
MOVTMOD,#06H
MOVTH1,#00H
MOVTL1,#00H
SETBTR1
LOOP:
MOVA,TL1
CPLA
MOVP1,A
SJMPLOOP
2.程序分析:
(1)计数功能的实现
(2)定时/计数器的初始化编程
①选择工作方式(TM0D)
工作方式选择方式1,功能为计数功能。
即:
(TMOD)=00000001B
②计数初值取0
③启动(TCON)
TR0=1
三、学生试验
讲解
巡回指导
课
后
小
记
授课教师
常州轻工业学校
单片机原理及应用课程授课教案NO20
授课日期
授课班级
课题
实验四:
定时计数器
授课类型
实验
授课时数
2
教学
目的
1.掌握单片机定时器/计数器的使用和编程方法
2.进一步掌握中断处理过程的编程,对发光二极管实现定时顺序控制
重点
难点
定时器/计数器的使用和编程方法和中断处理过程的编程
教具
挂图
计算机、小哨兵软件、wave6000软件、单片机实验仪
教学
及
过程分配
主要教学内容
教学方法
的运用
20分钟
45分钟
开始
初始化
端口、堆栈、查表指针
5秒定时标志
清零
设置T0定时方式1
设置T1计数方式1
置T0定时50毫秒初值
置T1计数100次初值
启动T0、T1
开中断
判5秒定时到?
关中断
查表、点灯
修改查表指针
判满8次?
表指针归零
N
Y
Y
N
图1:
主程序框图
图2:
T0中断程序框图
开始
重置T050毫秒定时初值
中断返回
判T1计满?
N
Y
P3.0输出计数脉冲
重置T1计数100次初值
5秒定时标志置1
备用单元加1
清TF1
10分钟
实验四定时器/计数器
一、实验目的:
1、掌握Lab6000实验仪联机调试操作
2、掌握单片机定时器/计数器的使用和编程方法
3、进一步掌握中断处理过程的编程,对发光二极管实现定时顺序控制
一、实验仪器:
Lab6000实验仪,PC机(WAVE6000软件),通讯电缆,导线
三、实验内容:
利用单片机内部的定时器/计数器,产生5秒中断一次。
P1口分别接8个发光二极管。
要求编写程序模拟一时序控制装置,开机后第5秒L1、L2亮;第10秒L3、L4亮;第15秒L5、L6亮;第20秒L7、L8亮;第25秒L1、L2、L3、L4亮;第30秒L5、L6、L7、L8亮;第35秒8个发光二极管全灭;第40秒8个发光二极管全亮。
以后又从头开始,一直循环下去。
四、实验原理
单片机内部定时器/计数器用作定时器时,是对机器周期的计数,每个机器周期的长度是12个振荡周期,因为实验仪晶振是12MHZ,所以最长延时时间为65ms左右。
下列程序用定时器/计数器0工作于方式1的定时器方式,达到0.05溢出中断一次;定时器/计数器1工作于方式1的计数器方式,它设定为计数100次,而每次定时器/计数器0时间到、溢出时,将发给它一个计数脉冲。
这样,两个定时器/计数器串接使用的结果0.05*100=5s,可得到5s延时。
P1.0
P1.1
P1.2
8051
P1.3
P1.4
P1.5
P1.6
P1.7
P3.0
P3.5
5v
74078*500Ω
图1
五、实验步骤:
①Lab6000单片机实验仪与PC机相连
②按图1接线
③编写程序,并在WAVE6000软件环境中输入程序并编译
④运行程序,观察灯亮的次序是否符合实习内容的要求
⑤写实验报告
六、实验程序框图
讲解
图示
实验操作指导
15分钟
七、参考程序
ORG0000H
AJMPMAIN
ORG000BH
AJMPT0INT
ORG001BH
RETI
ORG0030H
MAIN:
MOVP1,#0FFH
MOVR3,#00H
MOVSP,#53H
START:
CLR00H
MOV30H,#00
MOVTMOD,#51H
MOVTH0,#9EH
MOVTL0,#58H
MOVTL1,#9CH
MOVTH1,#0FFH
MOVTCON,#50H
ORLIE,#82H
HERE:
JNB00H,HERE
CLREA
MOVA,R3
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP1,A
INCR3
CJNER3,#8,LOOP
MOVR3,#00H
LOOP:
LJMPSTART
TAB:
DB03H,0CH,30H,0C0H,0FH
DB0F0H,00H,0FFH
T0INT:
MOVTH0,#9EH
MOVTL0,#58H
SETBP3.4
NOP
CLRP3.4
INC30H
JNBTF1,QUIT
MOVTH1,#0FFH
MOVTL1,#9CH
SETB00H
CLRTF1
QUIT:
RETI
END
程序分析
课后小记
授课教师_______________
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 教案
![提示](https://static.bingdoc.com/images/bang_tan.gif)