单片机实验-定时器计数器应用实验二
- 格式:doc
- 大小:56.00 KB
- 文档页数:4
定时器/计数器应用实验二
一、实验目的和要求
1、掌握定时器/计数器计数功能的使用方法。
2、掌握定时器/计数器的中断、查询使用方法。
3、掌握Proteus软件与Keil软件的使用方法。
4、掌握单片机系统的硬件和软件设计方法。
二、实验内容或原理
1、利用单片机的定时器/计数器以查询方式计数外
部连续周期性矩形波并在单片机口线上产生某一
频率的连续周期性矩形波。
2、利用单片机的定时器/计数器以中断方式计数外
部连续周期性矩形波并在单片机口线上产生某一
频率的连续周期性矩形波。
三、设计要求
1、用Proteus软件画出电路原理图,单片机的定时
器/计数器以查询方式工作,设定计数功能,对
外部连续周期性脉冲信号进行计数,每计满100
个脉冲,则取反P1.0口线状态,在P 1.0口线上
接示波器观察波形。
2、用Proteus软件画出电路原理图,单片机的定时
器/计数器以中断方式工作,设定计数功能,对
外部连续周期性脉冲信号进行计数,每计满200
个脉冲,则取反P1.0口线状态,在P 1.0口线上
接示波器观察波形。
四、实验报告要求
1、实验目的和要求。
2、设计要求。
3、电路原理图。
4、实验程序流程框图和程序清单。
5、实验结果(波形图)。
6、实验总结。
7、思考题。
五、思考题
1、利用定时器0,在P1.0口线上产生周期为200微秒的连续
方波,利用定时器1,对P1.0口线上波形进行计数,满
50个,则取反P1.1口线状态,在P 1.1口线上接示波器
观察波形。
原理图:
程序清单:
/*功能:用计数器1以工作方式2实现计数(查询方式)每计满100个脉冲,则取反P1.0口线状态*/
ORG 0000H
START:MOV TMOD,#60H
MOV TH1,#9CH
MOV TL1,#9CH
MOV IE,#00H
SETB TR1
LOOP:JBC TF1,LOOP1
AJMP LOOP
LOOP1:CPL P1.0
AJMP LOOP
END
/*功能:用计数器1以工作方式2实现计数(中断方式)每计满200个脉冲,则取反P1.0口线状态*/
ORG 0000H
START:LJMP MAIN
ORG 001BH
LJMP LOOP1
ORG 0030H
MAIN:MOV SP,#30H
MOV TMOD,#60H
MOV TH1,#38H
MOV TL1,#38H
SETB EA
SETB ET1
SETB TR1
HERE:LJMP $
ORG 001FH
LOOP1:CPL P1.0
RETI
END
原理图:
/*功能:用定时器0(工作方式2)在P1.0口线上产生周期为200us的连续方波用定时器1对P1.0口线上波形进行计数,满50个则取反P1.1口线状态
在P1.1口线上接示波器观察波形*/
ORG 0000H
START:LJMP MAIN
ORG 001BH
LJMP TT1
ORG 0030H
MAIN:MOV SP,#60H
MOV TMOD,#62H
MOV IE,#88H
MOV TH0,#0CEH ;设置计数初值
MOV TL0,#0CEH
MOV TH1,#0CEH
MOV TL1,#0CEH
SETB TR0 ;启动定时
SETB TR1
SETB P1.0
LOOP:JBC TF0,LOOP1 ;查询计数溢出
AJMP LOOP
LOOP1:CPL P1.0
AJMP LOOP ;重复循环
HERE:LJMP $
TT1:CPL P1.1
RETI
END