安徽文达信息工程学院学生实验报告
学年第学期课程名称《单片机原理与应用》实验日期:
院部
班级
姓名
学号
实验项目名称:实验六计数器实验
指导老师:
实验类型:编程仿真
成绩:
一、【实验目的】
1掌握单片机内部计数器的使用和编程方法;2掌握中断处理程序的编程方法。
二、【实验原理及内容】
8051单片机的定时器计数器T0是由特殊功能寄存器TH0、TL0,T1由特殊功能寄存器TH1、TL1构成。
T0、T1都有定时器和计数器两种工作模式,两种模式实质都是对脉冲信号进行计数,只不过计数信号来源不同。
计数器模式是对加在T0(P34)和T1(P35)两个引脚上的外部脉冲进行计数。T0、T1具有4种工作方式(方式0、1、2和3)。
特殊功能寄存器TMOD用于选择定时器计数器T0、T1的工作模式和工作方式。特殊功能寄存器TCON用于控制T0、T1的启动和停止计数,同时包含了T0、T1状态。
计数器起始计数从初值开始。单片机复位时计数器初值为0,也可给计数器装入1个新的初值。
三、【实验器材】
1PC机2Proteus仿真软件10013Keilc51仿真软件0110
四、【实验步骤】
1、如下图,T1的采用计数模式,方式1中断,计数输入引脚T1(P35)上外接按钮开关,作为计数信号输入。按4次按钮开关后,P1口的8只LED闪烁不停。
f由于每按1次按钮开关,计数1次,按4次后,P1口8只LED闪烁不停。因此计数器初值为65536
465532,将其转换成十六进制后为0xfffc,所以,TH00xff,TL00xfc。
2、扩展实验
改用定时器计数器T0采用计数器模式,方式2中断,计数输入引脚上外接按钮开关,作为计数信号输入。按5次按钮开关后,P1口的8只LED交替闪烁5次后保持全亮。
五、【实验过程原始记录】(可附页)
基础实验:
i
cludereg51hvoidDelayu
sig
edi
ti
u
sig
edi
tjfori0iforj0j125jvoidmai
TMOD0x50TH10xffTL10xfcEA1
ET11TR11while1voidT1_i
tvoidi
terrupt3for
P10xffDelay500P10Delay500
扩展实验:
i
cludereg51h
voidDelayu
sig
edi
ti
fu
sig
edi
tjfori0iforj0j125j
voidmai
TMOD0x06TH00xfbTL00xfbEA1ET01TR01
while1voidT0_i
tvoidi
terrupt1u
sig
edi
ti
fori0i5i
P10Delay500P10xffDelay500P10Delay500
六、【实验结果分析】
实验结果达到预期效果,扩展实验中需将原理图部分改为T0口,可计算初值281251DFBH,由于采用定时器0和方式2中断,则TMOD的值为00000110(0x06),中断号为1,实验中发现自己对部分知识的记忆不是太清晰,还需要加强r