51 单片机替代自动定标器的定时和计数电路
课件51单片机的定时计数器讲义

30
基本思想:方波周期T0确定,T0每隔1ms计数溢出1次, 即T0每隔1ms产生一次中断,CPU响应中断后,在中断服务 子程序中对P1.0取反,如图6-13所示。为此要做如下几步 工作。
(1)计算计数初值X
机器周期 = 2s = 2 10−6s
设需要装入T0的初值为X,则有 (216−X)210−6=1 10−3,216−X=500,X=65036。
33
PT0M0: MOV TL0,#0CH ;T0初始化,装初值的低8位
MOV TH0,#0FEH ;装初值的高8位
SETB ET0
;允许T0中断
SETB EA
;总中断允许
SETB TR0
;启动T0
RET
IT0P: MOV TL0,#0CH ;中断子程序,T0重装初值
X化为十六进制数,即: 65036 = FE0CH 。
T0的初值为TH0 =FEH,TL0 = 0CH。
31
(2)初始化程序设计 采用定时器中断方式工作。包括定时器初始化和中断系 统初始化,主要是对寄存器IP、IE、TCON、TMOD的相 应位进行正确的设置,并将计数初值送入定时器中。 (3)程序设计 中断服务子程序除了完成所要求的产生方波的工作之外 ,还要注意将计数初值重新装入定时器,为下一次产生中 断做准备。 本例,主程序用一条转至自身的短跳转指令来代替。
10
TR1位(或TR0位) = 0,停止定时器/计数器工作。 该位可由软件置“1”或清“0”。 6.2 定时器/计数器的4种工作方式 4种工作方式分别介绍如下。 6.2.1 方式0 M1、M0=00时,被设置为工作方式0,等效逻辑结构框图 如图6-4所示(以定时器/计数器T1为例,TMOD.5、 TMOD.4 = 00)。
MCS51单片机的定时计数器及应用

定时/计数器T0和T1的工作方式2(P143) ----8位自动重载初值
振荡器
/12
T0 TR0
GATE INT0
控制
TL0(8 位) 重载
TH0(8位)
中断 TF0
TL0(或TL1)用于计数,TH0(或TH1)用于保存初值,计满 溢出时硬件自动将TH0的值重新装入TL0。自动装载的初值:
X=256-N
while (1) ;// 原地踏步
{}
}
void time0_int(void) interrupt 1
{// 中断服务程序 SQ=!SQ ;// 输出翻转
}
采用查询方式的汇编程序(P145)
ORG 0000H
LJMP MAIN ORG 0100H ;主程序 MAIN: MOV TMOD,#02H ; 定 时器T0工作方式2 MOV TH0,#06 ;保存初值 MOV TL0,#06 ; 赋初值 SETB TR0 ; 启动T0
ORG 0030H; 主程序 MAIN:MOV TMOD,#02H; 定时器
T0工作方式2 MOV TH0,#06H;初值保存 MOV TL0,#06H; 赋初值 SETB EA; 开放总中断 SETB ET0; 开放T0溢出中断 SETB TR0; 启动T0 SJMP $; 原地踏步
END
采用中断处理方式的C51程序(P145)
微 处 理 器
TH1
启动
TCON
溢出
TL1
TH0
TL0
内部总线
启动
工作方式
工作方式
TMOD
定时/计数器的结构说明
? TH0和TL0是定时/计数器T0计数器的高 8位和低8位, TH1和TL1是定时/计数器T1计数器的高 8位和低8位。
51单片机计数中断定时

关于51单片机计数、中断、定时的小结(有实例讲解)韩路之前言: 本文适合对于51单片机编程有一定了解的人,方便编程。
1当设置TMOD=0x01(相当于设置了T1中的GATE=0,C/T=0,M1=0,M0=0,T0中的GATE=0,C/T=0,M1=0,M0为1);即表示只是用T0的定时功能(当然定时同样依靠计数实现)计数方式为16进制计数。
当设置TMOD=0x55;即表示使用T1和T0的计数功能,计数方式均为16进制。
2想用计数器T0开始计数,并且设置外部中断的触发方式为电平触发,则可以用两种设置方法,1、TCOD=0x10。
2、TR0=1;IT0=0;特别注意,当使用计数器溢出中断时,虽然发生并调用了中断函数,但如果没设置计数停止计数,也即是TR0/1=0计数器依然在计数。
3要设置相应的值等于1,否则中断不能实现,中断函数也不能被执行。
设置的方式同样有两种,可以总体设置,也可以单个设置。
4、中断方式interrupt n(n=0,1,2,3,4)0对应外部中断0;1对应T0口溢出中断;2对应外部中断1;3对应T1口溢出中断;4对应串行口中断。
5、寄存位置using n(n=1,2,3,4,5,6,7,8)分别对应8个寄存器,可以提高执行速度。
6、定时器/计数器初始值:TL0表示T0低八位值;TH0表示T0高八位值;TL1表示T1低八位值;TH1表示T1高八位值。
7、连线外部中断的连线需要注意一下,连接到P3口对应的位置。
备注:本文为作者本人在学单片机时总结笔记,深感中断、计数、定时的重要,相信只要能明白本文,单片机的中断,计数,定时能够有一个很好的基础。
51单片机 定时器与计数器课件

(2) 方式1
M1M0=01工作原理
16位的定时计数器,由TH1的8位和TL1的8位组成 (以T1为例,T0原理相同) 震荡器 T1(P 3.5) TR1 GATE INT1 ÷12
C/T=0 C/T=1 1 K TL1 TH1 8位 8位 控制 16位计数器 TF1 中 断
定时/计数器方式1逻辑图
;设置工作模式 ;T0送初值high(-1000) ;开放CPU中断 ;开放T0中断 ;启动计数器 ;等待计数器溢出中断
TH0,#0FCH ;T0送初值 TL0,#18H P1.0 ;P1.0取反产生方波
查询方式 ORG
AJMP ORG - MAIN:MOV SETB - LOOP:MOV MOV JNB CPL CLR SJMP END
定时/计数器的计数方向、初值计算及溢出处理
计数方向
- 加计数:每个脉冲计数器加1 - 减计数:每个脉冲计数器减1。
计数器的容量:
- 计数器有一定的计数范围(脉冲计数的最大个数),由 计数器的位宽度决定。
-
2n=X初值+要求(计数或定时) X初值= 2n —要求(计数或定时)
计数器的溢出:
定时计数的概念---假 如 有 一 个 水 容 器
一个定时/计数的形象实例
1000滴水刚好装满 问:还需滴入多少滴水才能将其 装满?
答:还需滴入500滴水才能将其 装满,501滴溢出。 这就是“计数” 初始时已经装入500滴水
这就是“计数初值”
问:如果每秒滴入1滴水,还需多 长时间才能将其装满? 这就是“定时” 答:还需500秒时间才能将其装 满,501秒溢出。
定时与计数的关系
定时/计数器:
对电脉冲进行计数的单元电路。 用计数器为周期性脉冲计数,产生定时。 定时和计数是同一个概念,本质上定时只是 计数的一个特例。
51单片机汇编语言教程:20课单片机定时、计数器实验

51单片机汇编语言教程:第20课-单片机定时、计数器实验AJMP STARTORG001BHAJMP TIMER1;定时器1的中断处理ORG30HSTART:MOV SP,#5FHMOV TMOD,#01010000B;定时/计数器1作计数用,模式1,0不用全置0MOV TH1,#0FFHMOV TL1,#0FAH;预置值,要求每计到6个脉冲即为一个事件SETB EASETB ET1;开总中断和定时器1中断允许SETB TR1;启动计数器1开始运行.AJMP$TIMER1:PUSH ACCPUSH PSWCPL P1.0;计数值到,即取反P1.0MOV TH1,#0FFHMOV TL1,#0FAH;重置计数初值POP PSWPOP ACCRETIEND上面这个单片机程序完成的工作很简单,就是在每6个脉冲到来后取反一次P1。
0,因此实验的结果应当是:LM324后接的LED亮、灭6次,则P1。
0口所接LED亮或灭一次。
这实际就是我们上面讲的计数器的第二种应用。
程序三:外部中断实验ORG0000HAJMP STARTORG0003H;外部中断地直入口AJMP INT0ORG30HSTART:MOV SP,#5FHMOV P1,#0FFH;灯全灭MOV P3,#0FFH;P3口置高电平SETB EASETB EX0AJMP$INT0:PUSH ACCPUSH PSWCPL P1.0POP PSWPOP ACCRETIEND本程序的功能很简单,按一次按钮1(接在12管脚上的)就引发一次中断0,取反一次P1。
0,因此理论上按一下灯亮,按一下灯灭,但在实际做实验时,可能会发觉有时不“灵”,按了它没反应,但在大部份时候是对的,这是怎么回事呢?我们在讲解键盘时再作解释,这个程序本身是没有问题的。
51实验板推荐(点击下面的图片可以进入下载资料链接)HJ-1G HJ-3G。
MCS51单片机的定时器计数器PPT课件

T1
T2
GATE C / T M1 M0 GATE C / T M1 M0
M1,M0:工作方式选择位 。 =00:13位定时器/计数器; =01:16位定时器/计数器(常用); =10:可自动重装的8位定时器/计数器(常用); =11:T0 分为2个8位定时器/计数器;仅适用于T0。
3.工作方式2 ( M1M0=10 ,自动重装计数初值的8位定 时器/计数器)
16位定时器/计数器被拆成两个8位寄存器TH0和TL0,CPU在对 它们初始化时必须装入相同的定时器/计数器初值。以TL0作计数器, 而TH0作为预置寄存器。当计数满溢出时,TF0置“1”,同时TH0将 计数初值以硬件方法自动装入TL0。这种工作方式很适合于那些重复计 数的应用场合(如串行数据通信的波特率发生器)。
可编程定时器:通过专用的定时器/计数器芯片实现。其特点是 通过对系统时钟脉冲进行计数实现定时,定时时间可通过程序 设定的方法改变,使用灵活方便。也可实现对外部脉冲的计数 功能。
2
2.MCS-51内部定时器/计数器
MCS-51单片机内部有两个16位可编程的定时器/计数器,简称 为T0和T1,均可作定时器用也可计数器,它们均是二进制加法 计数器,当计数器计满回零时能自动产生溢出中断请求,表示定 时时间已到或计数已终止。适用于定时控制、延时、外部计数和 检测等。 计数器:对引脚T0(P 3.4 )和T1(P3.5.)输入的外部脉冲信号 计数,当输入脉冲信号从1到0的负跳变时,计数器就自动加1。 计数的最高频率一般为振荡频率的1/24。 定时器:对系统晶振振荡脉冲的12分频输出进行计数。 (1)定时器/计数器的结构
时器/计数器的启/停。 = 1 :硬件控制,由外部中断请求信号 INT 0 / INT1 和TCON中的
MCS_51单片机定时_计数器及应用(基于Proteus仿真)
MCS-51单片机定时/计数器及应用基于Proteus仿真前言:本文对MCS-51单片机的定时/计数器进行了简明扼要的总结和归纳,并在后面举了三个简单的例子,这样有助于更好地理解与掌握。
1、MCS-51单片机有T0和T1两个16位可编程定时/计数器。
其中T0由两个特殊功能寄存器TH0和TL0组成,T1由两个特殊功能寄存器TH1和TL1组成。
受MCS-51单片机内部工作机制的限制,最高的外部计数脉冲的频率不能超过时钟频率的1/24,并且要求外部脉冲的高电平和低电平的持续时间不能小于一个机器周期。
单片机中的定时/计数器不管是用于定时还是计数,本质上都是通过对脉冲的计数实现的,只不过定时功能是对内部固定频率的脉冲信号进行计数,而计数功能是对来自单片机外部引脚T0或T1上的脉冲信号进行计数。
定时/计数器的控制主要是通过两个特殊功能寄存器TCON和TMOD 实现的。
2、定时/计数器T0,T1控制寄存器TCON:中断请求标志都是当CPU检测到有相应中断发生后,由硬件将相应的标志置1,当CPU响应该中断转向相应的中断处理程序时,由硬件自动将相应的标志位清0.系统复位时,TCON每一位都清零。
在查询方式时,TF0,TF1可以由程序查询和清“0”。
IT0/IT1:外部中断0/1的触发类型控制位,IT0/IT1=1表示下降沿触发,IT0/IT1=0表示低电平触发,可以由软件来设置或清除。
IE0/IE1:外部中断0/1的中断请求标志位,当检测到INT0/INT1引脚上出现外部中断信号的下降沿时,由硬件置位,申请中断。
进入中断服务程序后被硬件自动清除。
TR0/TR1:T0/T1运行控制位,靠软件置位或清零,置位时T0/T1开始工作,清零时停止工作。
TF0/TF1:T0/T1中断请求标志位,当T0/T1计数溢出归零时,由内部硬件置1,当CPU 响应中断并进入中断服务程序后,TF0/TF1自动清零。
3、定时/计数器工作方式寄存器TMOD:TMOD用于确定定时/计数器的工作方式及功能,其中高四位用于控制T1,低四位用于控制T0,4、工作方式0及应用当TMOD中的M1M0=00时,定时/计数器工作在方式0,构成13位的定时/计数器,它由THi的8位和TLi的低5位组成。
51的定时器
RL A AJMP LOOP2 JP1 :MOV A,#01H AJMP LOOP2 其流程图如图所示:
本
章
小
结
1,了解定时/计数器的结构和原理 2,掌握定时/计数器的方式控制寄存器TMOD和定 时控制寄存器TCON 的使用方法,熟悉定时/计数器 的四种工作方式. 3,掌握定时计数器初始化编程设计方法. 重点:定时/计数器的四种工作方式下初始值的计 算. 难点:定时/计数器的初始化.
(2)计数功能 作为外部计数器时,计数脉冲来自于外部输入端.此时C与B相联.
图6-1 定时器的基本结构
2,内部定时/计数器的控制 定时/计数器的功能,工作方式,定时(计数初)值及中断由 TMOD,TCON及IE 控制. (1)方式控制寄存器TMOD 控制和选择定时/计数器的工作方式,高四位控制T1,低四 位控制T0,格式如下:
TF1/TF0:当T1/T0的计数器计数溢出时,该位置"1". TR1/TR0:T1/T0运行控制位.软件将其置"1"时,启动T1/T0工作. 另外4位IE0,IE1,IT1,IT0为中断控制位. (3),中断允许控制寄存器IE. 见第五章的部分.
三,定时/计数器的工作方式
1,工作方式0 ( M1M0=00 ——13位计数器) (1)结构 由THX的全部8位和TL0的低5位构成,如下图.当TL0低5位计数满时 直接向TH0进位,并当全部13位计数满溢出时,TF0置"1". (2)TMOD值: 作定时器:TMOD=00000000=00H 作计数器:TMOD=00000100=04H
作定时器,TMOD=02H; 作计数器,TMOD=06H; 最大计数值为28=256,若fosc=12MHz,则方式2的最大定时 时间为256us.当作为定时器用时,定时时间的计算公式: △T=(28 — 计数初值)× 机器周期(12/fosc) 计数初值=28 —欲计数脉冲数=28 —△T/ 机器周期 例 如 : 定 时 500 , fosc=6MHz 时 , 初 值 =28—500/2=6= 06H 则:TH0=TL0=06H 4,工作方式3 (M1M0=11——2个8位计数器(仅限于T0)) 在T0方式3下,T0,T1的设置和使用是不同的. (1)T0方式3 TL0:使用T0原有控制资源,功能与方式0,1相同. TH0:借用T1的TR1,TF1,只能对片内机器周期脉冲计数, 作8位定时器
51单片机定时与计数的工作原理
51单片机定时与计数的工作原理一、概述51单片机是一种广泛应用于嵌入式系统中的微处理器,具有高性价比、易学易用等特点。
其中,定时与计数功能是其常用的功能之一,通过定时与计数可以实现许多实际应用,如脉冲计数、PWM输出等。
本文将详细介绍51单片机定时与计数的工作原理。
二、定时器和计数器在介绍51单片机的定时与计数功能之前,我们需要先了解两个重要的概念:定时器和计数器。
1. 定时器定时器是一种能够按照设定时间进行计时的电路。
其基本原理是利用振荡电路产生一个稳定的时间基准信号,再通过分频电路将其分频得到所需的时间间隔,并通过计数器进行累加,从而实现精确的时间控制。
2. 计数器计数器是一种能够对输入脉冲进行计数并输出相应结果的电路。
其基本原理是利用触发电路对输入脉冲进行检测,并通过累加器进行累加,从而得到输入脉冲数量。
三、51单片机中的定时与计数功能在51单片机中,有两个独立的16位定时器/计数器,分别为Timer0和Timer1。
它们可以分别用作定时器或计数器,并且可以通过软件配置其工作模式。
1. Timer0Timer0是一个8位定时器/计数器,它的输入时钟源可以来自外部引脚或系统时钟。
在定时模式下,其最大计时时间为2^8×12/11MHz≈29μs,在计数模式下,其最大计数值为2^8=256。
Timer0的工作模式可以通过TCON寄存器的TF0、TR0、TMOD寄存器的M0位和GATE0位进行配置。
其中,TF0表示定时/计数溢出标志,TR0表示定时/计数启动控制位,M0位表示Timer0的工作模式(00表示13位定时/计数、01表示16位定时/计数、10表示8位自动重装载定时、11保留),GATE0表示是否使用外部引脚作为启动控制信号。
2. Timer1Timer1是一个16位定时器/计数器,它的输入时钟源可以来自外部引脚或系统时钟。
在定时模式下,其最大计时时间为2^16×12/11MHz≈5.9ms,在计数模式下,其最大计数值为2^16=65536。
51单片机定时器-计数器
51 单片机定时器/计数器
一、80C51 定时/计数器
定时/计数器是单片机系统一个重要的部件,其工作方式灵活、编程简单、使用方便,可用来实现定时控制、延时、频率测量、脉宽测量、信号发生、
信号检测等。
此外,定时/计数器还可作为串行通信中波特率发生器。
(二) 定时/计数器的控制寄存器
⒈定时/计数器控制寄存器TCON
(1) TCON.7 TF1:定时器1 溢出标志位。
当定时器1 计满数产生溢出时,由硬件自动置TF1=1。
在中断允许时,向CPU 发出定时器1 的中断请求,进入中断服务程序后,由硬件自动清0。
在中断屏蔽时,TF1 可作查询测试
用,此时只能由软件清0。
(2) TCON.6 TR1:定时器1 运行控制位。
由软件置1 或清0 来启动或关闭定时器1。
当GATE=1,且INT1 为高电平时,TR1 置1 启动定时器1;当GATE=0 时,TR1 置1 即可启动定时器1。
(3) TCON.5 TF0:定时器0 溢出标志位。
其功能及操作情况同TF1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第19卷 第1期2003年3月福建师范大学学报(自然科学版)Jou rnal of Fu jian N o rm al U n iversity (N atu ral Science )V o l 119 N o 11M ar 12003文章编号:100025277(2003)0120032204用M CS -51单片机替代自动定标器的定时和计数电路Ξ赖发春,瞿 燕,林发银,林旺添(福建师范大学物理系,福建福州 350007) 摘要:分析HW 23204型自动定标器的电路工作原理及存在的故障.利用M CS 251单片机设计定时和计数电路代替HW 23204型定标器中原有的定时和计数电路,分析设计电路的硬件、软件的组成和工作原理,新设计的定时和计数电路具有测量准确及工作性能稳定等优点.关键词:自动定标器;单片机;计数器;定时器中图分类号:T P 216 文献标识码:AΞΞΞΞΞ自动定标器是核辐射测量中常用的一种仪器[1,2].作者对核辐射测量做过一定的研究[3],发现由上海电子仪器厂生产的HW 23204型自动定标器的性能不稳定,有时定时电路不定时,有时计数电路不计数,经常出现一些故障.而M CS 251单片机抗干扰能力强,性能稳定,内部有两个16位的计数 定时器,已广泛应用于各种测试领域[4].利用M CS 251单片机的计数和定时功能,设计出硬件电路,编写软件程序,替代自动定标器中原有的定时和计数电路,使仪器的稳定性和可靠性得以提高.1 HW 23204型自动定标器的工作原理HW 23204型自动定标器由高压电源、低压电源、单道、定时、计数等电路组成的六位数通用核辐射测量仪器.该仪器配合G 2M 计数管或Α、Β、Χ等闪烁探头,可以在放射性同位素应用领域中作放射性强度测量.图1 HW 23204型自动定标器方框图HW 23204型自动定标器的仪器方框图如图1,它主要由五个单元构成.±12V 电源单元除供仪器各部分用电外,还通过七芯电缆插座为探测器的前置电路提供电源.2kV 高压电源单元为各种探测器提供工作电压.从探测器来的脉冲信号经衰减后输入到放大、单道单元,放大、单道单元对信号经过放大分析后,经门控电路输出到定标单元,其中单道单元还设有最低的阈值电压值,以消除干扰脉冲的影响.定标单元是由六级十进位电路构成的计数电路,并显示定标器的计数结果.控制单元主要作用是控制单道分析能否输出信号到定标单元,使定标单元的计数清零,预置定时时间等等.由于定标单元和控制单元所用的集成电路C 043、5G 654等质量较差,在环境温度较高时,定标器经常出现ΞΞΞΞΞΞ作者简介:赖发春(1965— ),男,福建上杭人,副教授,中国科技大学博士研究生.基金项目:福建省教育厅基金资助项目(K 20093)收稿日期:2002-06-28定时不准或不定时,计数器的读数不正确等故障.基于HW 23204型自动定标器的故障,作者利用M CS 251单片机的定时和计数功能代替自动定标器的定时和计数电路,使仪器的性能更加稳定.2 M CS 251单片机构成定时器和计数器系统的硬件组成及工作原理图2 定时和计数器系统的硬件方框图由M CS 251单片机构成的定时器和计数器系统的硬件框图如图2.该系统主要由M CS 251单片机、键盘接口电路、复位电路、外部脉冲输入电路、自检信号输出电路、电源电路、晶振电路、状态显示电路、六位L ED 显示电路及显示驱动电路等组成.211 M CS -51单片机M CS 251单片机(本文采用89C 51单片机)内有8位中央处理器CPU 、ROM 、RAM 、寄存器、4个8位并行I O 口(P 0口~P 4口)、2个16位定时 计数器和中断系统等.由于M CS 251单片机具有以上功能,它可以方便地应用于定时和计数系统中.M CS 251单片机是计数器及定时器系统的核心部件,负责对整个系统的统一管理.它的主要功能有:(1)及时准确地接收键盘电路送来的各种按键信号,并作出相应处理.(2)正确接收外部脉冲信号,即接收由自动定标器放大和单道单元送出的脉冲核辐射信号,并对脉冲进行计数.(3)正确的定时功能,定时开始,计数器开始计数,定时结束,计数器停止计数.(4)控制L ED 显示及状态显示电路,使显示电路正确显示相关的信息.212 键盘接口及复位电路复位电路是通过复位按键与单片机的复位端相连,当复位按键按下时,系统软件从初始化重新开始工作.键盘接口电路的4个按键分别与单片机P 1口的P 114~P 117四个I O 口相连,采用独立按键式结构[5].其中两个按键分别是分和秒定时按键,每按一次分或秒定时按键,其相应的定时值会加一,定时值未经设置时,分和秒定时值均为零.秒定时最大值为59s ,分定时最大值为99m in ,已能满足使用的需求.第三个按键是开始计数、显示模式转换、重复计数功能按键.首先,当定时设置完成后,按下此功能键,则计数器开始计数工作,同时定时器开始进行倒计时,此时L ED 显示器显示的是当前的计数值,直到定时时间到,定时器发出结束计数命令,计数器停止计数,显示器显示最终计数结果.在计数器计数的工作过程中,若再按此功能键,则显示器显示的是倒计时的所剩时间,按此键,显示器又显示计数值.如果是计数结束后,按下此键,则可以进行重复定时计数.第四功能键是当前存储值和暂停按键.在计数器完成计数工作后,按一下此键,显示器可显示原设置的定时值;再按一下此键,则显示计数结果.如果在计数过程中按下此键,则计数器会暂停计数,可实现暂停计数功能.213 驱动电路、六位L ED 显示电路和提示音电路定时器和计数器的显示电路是一个六位的L ED 显示器,它的功能是显示计数或定时的结果等信息.显示器的位选信号由单片机的P 0口的P 010~P 015六个I O 口提供,由于M CS 251单片机的输出电流较小,不能直接驱动L ED 显示器或蜂鸣器,因此位选信号必须经过三极管或其它的驱动电路进行驱动.本系统中驱动电路选用2003驱动集成块.显示器的段选信号是由单片机的P 2口的P 210~P 213四个I O 口送出显示字符的BCD 码,BCD 码信号经译码电路译成笔型码后再到显示器的各个段.其中译码电路选用4511集成块.提示音电路的作用是当系统工作完成后,由蜂鸣器发出提示声音,提示用户定时计数已结束.它的功能是通过单片机的P 016I O 口送出提示信号再经驱动电路驱动蜂鸣器来实现的.33 第1期 赖发春等:用M CS 251单片机替代自动定标器的定时和计数电路214 状态显示电路、电源电路、晶振电路、外部脉冲输入和自检信号输出电路状态显示电路由4个发光二极管分别与P 1口的P 110~P 113四个I O 口端相连,每个二极管的点亮代表一种工作状态.四个状态分别是定时或定时值状态、计数或计数结果状态、倒计时状态、工作完成状态.当系统工作处于那种状态,单片机就使相应的二极管点亮,例如当系统开始定时的时候,系统处于定时工作状态,故只有定时状态的二极管点亮.图3 定时和计数器系统主程序框图电源电路为整个系统提供电源,晶振电路由12M H z 的晶振片和电容构成,向单片机提供时钟信号.外部脉冲输入电路就是指计数器的计数输入端口,是用单片机的P 314口(定时器 计数器0的外部输入端口),也就是将经自动定标器的放大和单道单元放大后的脉冲信号接在P 314口由单片机来采集核辐射的脉冲信号,单片机采集了脉冲的个数后再显示采集的结果.自检信号输出电路是为了判断系统的定时和计数工作是否正常而设置的,利用P 311口输出频率为125H z 的方波信号,将此信号当作被测信号来测量就可以检验系统工作是否正常.3 单片机构成定时器和计数器系统的软件框图及原理M CS 251单片机的计数定时器0设为定时功能,每4m s 产生一次中断,此4m s 的时间作为显示程序的单个数码管的点亮时间,而250个4m s 则正好为1s ,它可以作为实时时钟的秒信号.将单片机的计数 定时器1设为计数功能,通过它记录核辐射的脉冲个数.单片机构成定时器和计数器系统的软件由主程序和中断服务子程序组成[6,7].主程序包含初始化、键盘扫描程序、按键处理程序(含键盘去抖动程序)、读计数器的计数及处理程序、数制转换程序和显示程序等;中断服务子程序包含实时时钟计时程序、倒计时时钟控制程序等.所有程序均保存在片内存储器内.计数和定时器系统的主程序框图如图3.系统上电或复位后开始工作,首先进入初始化,将系统中所有的命令、状态以及有关的存储单元置成初始状态.系统测试是利用测试程序对程序存储器、数据存储器及硬件功能等进行检查是否正常.完成初始化设置和系统测试正常以后,L ED 显示器上显示提示符.系统将运行显示和键盘扫描程序,先输入定时的时间值,系统在开始测量按键按下后,执行开系统的中断命令,同时定时器开始计时,计数器开始计数,系统就进入了计数的工作状态.随后系统将不断地读取计数器的计数值,并显示计数的结果,同时通过键盘扫描程序检测是否有要求执行其他的任务.当定时时间到后,计数器停止计数,读取计数值,显示器显示测量的最终结果.4 结论由M CS 251单片机构成的定时器和计数器系统的定时时间值最小为1s ,最大为99m in 59s ;计数的测量结果显示值最小为000000,最大为999999.当输入脉冲信号的频率小于50kH z 时,测量误差小于011%,符合自动定标器的定时和计数部分电路的需求.HW 23204型自动定标器的定时和计数电路由单片机的定时器和计数器系统代替后,经长时间的测试验证,整机性能稳定,不再出现定时器不计时或计数器不计数的现象,测量误差小,使用更加方便.同时若利用单片机的串行接口与计算机通信的功能,将可以实现自动的数据采集,提高仪器的43福建师范大学学报(自然科学版) 2003年 智能化水平,这是下一步工作.参考文献:[1]赖发春.G 2M 计数管实验的研究[J ].福建师范大学学报(自然科学版),1998,14(2):98-101.[2]赖恒,赖发春,黄志高,等.近代物理实验[M ].福州:福建教育出版社,2001.44-52.[3]赖发春,瞿燕.用I BM 2PC 机测量核衰变的统计分布[J ].福建师范大学学报(自然科学版),2001,17(2):47-49.[4]何立民.单片机应用文集[M ].北京:北京航空航天大学出版社,1991.303-416.[5]何立民.M CS 251系列单片机应用系统设计系统配置与接口技术[M ].北京:北京航空航天大学出版社,1990.127-160.[6]陈伟人.M CS 251系列单片机实用子程序集锦[M ].北京:清华大学出版社,1993.3-10.[7]武庆生,仇梅.单片机原理与应用[M ].成都:电子科技大学出版社,1998.73-78.W ith the M CS -51Si ngle Sh ip M icrocom puter Take Place of theCoun ter and T i m i ng Con troller of the Automa tic Sca lerLA I Fa -chun ,QU Yan ,L IN Fa -y i n ,L IN W ang -ti an(D ep a rt m en t of P hy sics ,F uj ian N or m a l U n iversity ,F uz hou 350007,Ch ina )Abstract :T he HW 23204au tom atic scaler has som e draw back s.W ith the M CS 251single ch i p m i 2crocom p u ter ,the new coun ter and ti m ing con tro ller have been designed and take p lace of the coun ter and ti m ing con tro ller of the au tom atic scaler .A s the resu lt of test ,the new coun ter and ti m ing con 2tro ller have h igh p erfo rm ance and m o re stab ility .Key words :au tom atic scaler ;single ch i p m icrocom p u ter ;coun ter ;ti m ing con tro ller(责任编辑 黄家瑜)53 第1期 赖发春等:用M CS 251单片机替代自动定标器的定时和计数电路。