全球旧事资料 分类
计数器实验报告
㈠实验目的
1学习单片机内部定时计数器的使用和编程方法;2进一步掌握中断处理程序的编程方法。
㈡实验器材
12345G6W仿真器MCS51实验板PC机电源信号发生器一台一台一台一台一台
㈢实验内容及要求
8051内部定时计数器,按计数器模式和方式1工作,对P34(T0)引脚进行计数,使用8051的T1作定时器,50ms中断一次,看T0内每50ms来了多少脉冲,将计数值送显(通过LED发光二极管8421码来表示),1秒后再次测试。
㈣实验说明
1本实验中内部计数器其计数器的作用,外部事件计数器脉冲由P34引入定时器T0。单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变,这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样,同时这就决定了输入波形的频率不能超过机器周期频率。2计数脉冲由信号发生器输入(从T0端接入)。3计数值通过发光二极管显示,要求:显示两位,十位用L4~L1的8421码表示,个位用L8~L5的8421码表示4将脉搏检查模块接入电路中,对脉搏进行计数,计算出每分钟脉搏跳动次数并显示
㈤实验框图见下页
f开始
INT_T1入口
置T0,T1模式及初始值保护现场设置初始常数置T1定时常数开中断清T0计数值等待
计数器主程序框图
是否到1秒?Y显示
N
恢复现场
中断返回
中断服务程序框图程序源代码ORG00000HLJMPMAINORG001BHAJMPMAIN1MAINMOVSP60HMOVTMOD15HMOV20H14HMOVTL10B0HMOVTH13CHMOVTL000H
T0的中断入口地址
设置T1做定时器T0做计数器都于方式1工作装入中断次数装入计数值低8位装入计数值高8位
fMOVTH000HSETBTR1SETBTR0SETBET1SETBEASJMPMAIN1PUSHPSWPUSHACCCLRTR0CLRTR1MOVTL10B0HMOVTH13CH
启动定时器T1启动计数器T0允许T1中断允许CPU中断等待中断
保护现场装入计数值低8位装入计数值高8位50ms允许T1中断
DJNZ20HRETUNTMOV20H14H
未到1s继续计时
SHOWMOVR0TH0MOVR1TL0MOVAR1MOVB0AHDIVABMOVCACC3MOVP10CMOVCACC2MOVP11CMOVCACC1MOVP12CMOVCACC0MOVP13CMOVABMOVCACC3MOVP14CMOVCACC2MOVP15CMOVCACC1MOVP16CMOVCACC0MOVP17C
1s到重新开始显示计数器T0的值读计数器当前值
将计数值转为十进制显示部分,将A中保存的十位赋给L0L3
将B中保存的各位转移到A中将个位的数字显示在L4L7上
fRETUNTMOVTL000HMOVTH000HSETBTR0SETBTR1POPACCPOPPSWRETI
将计数器T0清零
中断返回
在频率为1000HZ时,L0L7显示为50;频r
好听全球资料 返回顶部