第4章定时计数器(免费阅读)

合集下载

实验四 定时计数器实验

实验四  定时计数器实验

五、实验步骤 安装好仿真器,用串行数据通信线连接计算机与仿真器, 1、安装好仿真器,用串行数据通信线连接计算机与仿真器,把仿真 头插到模块的单片机插座中,打开实验台电源, 头插到模块的单片机插座中,打开实验台电源,打开仿真器电源 打开电脑。 打开电脑。 启动计算机,打开伟福仿真软件,进入仿真环境。 2、启动计算机,打开伟福仿真软件,进入仿真环境。首先进行仿真 器的设置,选择仿真器型号、仿真头型号、CPU类型 类型。 器的设置, 选择仿真器型号、仿真头型号、CPU类型。选择通信 端口,点击测试串行口,通信成功便可退出设置,进行仿真。 端口,点击测试串行口,通信成功便可退出设置,进行仿真。 3 、 在编辑窗口输入源程序 , 保存 , 文件名为 T5-1.ASM 等 。 对 T5ASM等源程序进行编译,编译无误后,执行程序, 1.ASM 等源程序进行编译, 编译无误后 ,执行程序 ,观察实验现 分析结果。 象,分析结果。 4、完成定时计数程序设计。 完成定时计数程序设计。 5、完成定时1秒程序设计。 完成定时1秒程序设计。
内部计数器起计数器的作用时,外部事件计数脉冲由T 内部计数器起计数器的作用时,外部事件计数脉冲由T0 (P3.4 脚引入定时器T 单片机在每个机器周期采样一次输入波形, )脚引入定时器T0。单片机在每个机器周期采样一次输入波形, 因此单片机至少需要两个机器周期才能检测到一次跳变, 因此单片机至少需要两个机器周期才能检测到一次跳变,这就要 求被采样电平至少维持一个完整的机器周期, 求被采样电平至少维持一个完整的机器周期,以保证电平在变化 之前即被采样。 之前即被采样。同时这就决定了输入波形的频率不能超过机器周 期频率。 期频率。
计算机一般利用第三种方法实现
8051内部设有两个16位的定时器/计数器,可用软件控制。 8051内部设有两个16位的定时器/计数器,可用软件控制。 内部设有两个16位的定时器 定时器:对机器周期计数, 定时器:对机器周期计数, 每过一个机器周期,计数器内容加1 每过一个机器周期,计数器内容加1 ;

第4章Timer_A和Timer_B

第4章Timer_A和Timer_B

4.3 Timer_B Timer_B与Timer_A几乎相同,但也存在一些差别。它们 的主要差别在于: 1、捕获/比较器的数量有所不同。如MSP430F449单片机 Timer_A3、Timer_B7,即: Timer_A有3个捕获/比较器TACCR0~TACCR2; Timer_B有7个捕获/比较器 TBCCR0~TBCCR6。 2、Timer_B计数器TBR的计数长度可以编程为8,10,12,16位, Timer_A计数器TAR只能是16位。 3、Timer_B没有SCCIx(即读出EQUx)功能, 而Timer_A可以读出EQUx。 4、在比较模式下,Timer_B比Timer_A功能略有增强。 5、有些型号的430单片机,Timer_B输出增加了高阻态, 而Timer_A只有输出状态。
捕获完成后: 1、控制字CCTLx中的中断标志CCIFGx置位。 2、如果通用中断允许位GIE和相应的中断允许位CCIEx置 位,将产生中断请求。 3、必须用字指令来对捕获/比较寄存器CCRx操作。 4、CCRx = TAR。 5、溢出逻辑COVx: 复位表示在下一次捕获完成前捕获数据已被读取,及 CCRx值已被读取。 置位表示在第一次捕获完成后,尚未读取CCRx值时, 又发送第二次捕获触发。
定时器连续计数模式,输出单元输出波形:
0FFFFh CCR0 CCRx 0 OUTMODx = 001 OUTMODx = 010 OUTMODx = 011 OUTMODx = 100 OUTMODx = 100' OUTMODx = 101 OUTMODx = 110 OUTMODx = 111
选定的时钟源直接或 经2、4、8分频进入 16位定时器,时钟源 可来自内部时钟也可 由外部提供。
4.2 Timer_A定时/计数模式和操作说明 4.2.1 定时/计数模式

西门子S7-300 PLC基础与应用 第3版第4章 定时器

西门子S7-300 PLC基础与应用 第3版第4章 定时器

第4章 定时器指令的应用
定时器指令
3.S_ODT(接通延时S5定时器,简称接通延时定时器)
指令形式 格式
LAD
Tno
启动信号
输出位地址
定时时间
时间字单元 1
复位信号
时间字单元 2
示例
FBD
Tno
启动信号
时间字单元 1
定时时间
时间字单元 2
复位信号
输出位地址
STL
A 启动信号 L 定时时间 SD Tno A 复位信号 R Tno L Tno T 时间字单元 1 LC Tno T 时间字单元 2 A Tno = 输出位地址 A I0.0 L S5T#8S SD T5 A( O I0.1 ON M10.0 ) R T5 L T5 T MW0 LC T5 T MW2 A T5 = Q4.5
页码: 4
西门子S7-300 PLC 基础与应用
第4章 定时器指令的应用
定时器指令
1.S_PULSE(脉冲S5定时器,简称脉冲定时器)
I0.1
I0.2 设定时间值
MW0、MW2
T1 Q4.0
t
t
t
(a)梯形图
(b)工作时序 图2-9 脉冲定时器工作时序
日期:2020/10/20
页码: 5
西门子S7-300 PLC 基础与应用
30s
40s 45s
图2-16 人行横道交通信号灯系统控制时序图
55s 60s 65s
日期:2020/10/20
页码: 24
西门子S7-300 PLC 基础与应用
第4章 定时器指令的应用
PLC硬件配置及接线(1/2)
人行横道交通信号灯系统需要车道(东西方向)红、

第4章 MCS51单片机定时_计数器.ppt.Convertor

第4章 MCS51单片机定时_计数器.ppt.Convertor

第4章定时/计数器本章要点定时/计数器的工作原理定时/计数器的控制寄存器和方式寄存器定时/计数器的工作方式、计数初值的设置以及各种工作方式下的应用编程4.1 定时/计数器的结构及工作原理MCS-51单片机内部由两个16位可编程的定时/计数器,即定时器T0和定时器T1,52系列单片机提供3个定时器,第三个定时器为T2。

它们既可以用作定时器,又可用作计数器。

我们主要讲51系列单片机的定时/计数器。

4.1.1 定时/计数器的结构定时/计数器的基本结构如图所示。

基本部件是两个8位的计数器。

由TH0和TL0组成T0,由TH1和TL1组成T1,它们都是以加1的方式完成计数。

特殊功能寄存器TMOD控制定时/计数器的工作方式,TCON控制定时/计数器的启动运行并记录T0、T1的溢出标志。

通过初始化编程,可以预置计数初值、指定其工作方式及控制其运行1.定时器的工作原理在作定时器使用时,输入的计数脉冲是由晶体振荡器的输出经12分频后得到的,所以定时器也可以看作对机器周期计数的计数器。

故其计数速率为晶体振荡频率的1/12。

如果晶振频率为12 MHz,则定时器每接收一个输入脉冲的时间为1us。

4.1.2 定时/计数器的工作原理2.计数器的工作原理当它用作计数器时,它对接到相应的外部引脚T0(P3.4) 或T1(P3.5)上的外部事件计数。

在这种情况下,当检测到输入引脚上的电平由高跳变到低时,计数器就加1。

计数器在每个机器周期采样外部输入,当采样值在这个机器周期为高,在下一个机器周期为低时,则计数器加1。

因此计数器需要两个机器周期来识别一个从高到低的跳变,故最高计数速率为晶振的1/24。

不管是定时还是计数工作方式,定时器在运行时不占用CPU的时间,除非产生溢出才可能中止CPU的当前操作。

可见,定时/计数器是单片机内部效率高且工作灵活的部件。

这里要强调一点,MCS-51系列单片机的定时/计数器采用的是加1计数方式。

即单片机内部的计数器从初值开始一直加1,直到产生溢出为止。

MCS-51定时计数器的应用.

MCS-51定时计数器的应用.
10
方案选择: (1)怎样实现较长时间的定时?
上一个实验已经讨论了单片机定时器的最大时间间 隔,采用定时器与计数器相结合的方法解决了较长时 间定时的问题
这里还可用另一种方法解决:用T1作定时器,用软件 对定时时间到计数,这样可节省一个定时器作其它用
如果设T1为定时方式0,定时间隔选为10ms,那么要想 达到2秒的定时,软件计数的次数应该是200次。
第四章 MCS-51定时/计数器的应用 定时/计数器是单片机应用中的重要部件,
其工作方式的灵活应用对提高编程技巧, 减轻CPU的负担和简化外围电路有很大益 处。本章通过两个实验说明定时/计数器的 基本用法,通过应用实例,使读者掌握定 时/计数器的软件设计技巧。
1
一、定时/计数器的基本用法
【实验1】利用T0定时,T1计数 二者复合的方法,实现较长 时间的定时间隔。 实验要求:如图所示,在 P1.7 端 接 有 一 个 发 光 二 极 管 , 要 利 用 定 时 控 制 使 LED 亮一秒停一秒,周而复始。
注意:T0与T1都是加1计数器,所以初值应按补码 计算。实际计算方法是:假定初值为X,若定时间隔 100ms,应该有
(216-X) ·2μ S=100ms ∴x=15536=3CB0H 3CH装入TH0,B0H装入TL0 T1 计 数 器 在 方 式 2 下 是 8 位 的 , 计 数 5 次 的 初 值 的 是 (256-5)=251=FBH,同时装入TH1与TL1。
=216·2μ S=131.07ms 3
而实验要求定时间隔为1秒,这三种方式都不能 满足。对于较长的定时间隔应采取复合的办法。 例如,可将T0设成定时间隔为100ms(只能用方式1), 当定时时间到,将P1.0的输出反相,再加到T1端作 计数脉冲,需要定时两次才构成一个完整的计数脉 冲,因此设T1计数5次,就能完成1秒的定时:

定时器T2

定时器T2
P1 . 0 P1 . 1 P1 . 2 P1 . 3 P1 . 4 P1 . 5 P1 . 6 P1 . 7 RP1 SEG4 a b c d e f g h g10 f 9 e 1 d 2 c 4 b 6 a 7 h 5 g f e d c b a h 10 g 9 f 1 e 2 d 4 c 6 b 7 a 5 h g f e d c b a h T3 9012 R1 1 4 K7
第4章 定时器/计数器
2) 捕捉方式
振荡器 T2(P1.0) TR2 fosc ÷ n 计数脉冲开关 定时/计数器T2 TL2 (8位) TH2 (8位) 溢出信号
C / T2 = 0 C / T2 =1
1(接通) / 0(断开)
RCAP2L RCAP2H (8位) (8位)
*对8XC5X芯片,n=12。 *对8XC5XX2芯片: 在“12时钟/机器周期”下,n=12; 在“6时钟/机器周期”下,n=6。 T2EX(P1.1)
T2(P1.0) T20E T2EX(P1.1) EXF2 T2中断
*对8XC5X芯片,n=2。 *对8XC5XX2芯片: 在“12时钟/机器周期”下,n=2; 在“6时钟/机器周期”下,n=1。
EXEN2
图4-17 时钟输出方式下的定时器T2结构
第4章 定时器/计数器
例 4位共阳LED数码管显示驱动子程序设计
第4章 定时器/计数器
DISP: ORL P2,#1FH
MOV A,DSW RL A MOV DPTR,#DSTAB JMP @A+DPTR ;查七段码表
DSTAB:
AJMP DIS0
AJMP DIS1 AJMP DIS2 AJMP DIS3 AJMP DIS4
第4章 定时器/计数器

定时器/计数器TMR

定时器/计数器TMR

设置计数模式特点: 计数模式,计数触发信号来源于I/O端口RA / T0CKI信
号。
只有处于计数模式下,跳变沿选择TOSE位才有效
对T0CKI信号,既可以是标准的脉冲信号(周期脉冲信号), 也可以是无规则的时序脉冲信号。因此,计数和定时不同, TMR0计数的长短一般不能确定定时的长短。
了解即可: 计数脉冲和指令周期的同步:单片机将对TOCKI引脚在1个
与TMR0模块相关的寄存器
寄存器 的名称 和符号
寄存器 地址
寄存器内容
Bi t7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
定时器/ 计数器 TMR0
01H/101 H
8位累加计数寄存器
3个开关设置
选项寄
存器 OPTION_
81H/181 H
RB PU
INTE DG
T0CS
T0SE
PSA
TMR0寄存器
5 6
溢出时置 中断T0IF
图5图-56-简1 化TMRT0M功R能0原的理功图能原理图 参看168页 跳变触发计数
累加计数器的工作过程
8位TMR0累加计数器工作总是在送入初始值(称为时间常 数)以后,启动计数,推迟2个指令周期,在初始值的基础 上,对脉冲跳变触发产生计数,直到计数寄存器TMR0计 满到FFH再加1,TMR0恢复到0,产生溢出和溢出标志 T0IF。如果是中断使能T0IE开启的情况下,T0IF就能引 发中断。
第4章 定时器/计数器
主要特点:
1. 定时器/计数器模块是大部分单片机都内置的一 项重要功能
2. 定时器/计数器的的核心模块为计数累计功能, 通常是由时钟脉冲来驱动。

微机原理与接口技术 第04章 可编程定时器计数器8254

微机原理与接口技术 第04章 可编程定时器计数器8254

4.1 概述
输出(分频)
声音的产生:
对输出方波整形 变成正弦波,经放大处理接 到扬声器上,产生不同声音 的波形。
输入脉冲
若选择标准输入脉冲, 例1KHz,则当输入1000个标 准输入脉冲,需要1s,则当 计数值为1000时,输出端每 隔1s输出一个脉冲,实现了 定时。 计算初值:N=fclki / fouti
硬件启动:在写入计数初值后计数器不工作,只有当GATE信 号出现0到1的变化后,计数器才开始工作 初值自动重装:当计数结束后,即减1计数器减到规定值的时候, 存放在初值寄存器中的计数初值自动重新装入减1计数器,这种功 能称为初值自动装载(方式2和方式3具有此功能)
4.2.3 8254的工作方式
4.1 概述
实现定时/计数有三种不同的方法:
(1)软件定时:执行一个具有固定延迟时间的循环程序。
优点:不需外加硬件,灵活,定时较准确。 缺点:在定时过程中CPU不能做任何其它工作。
总结:适用于定时时间短的场合。
(2)硬件定时:采用中规模TTL或CMOS芯片外加电阻电容来实现的。 不同的时间间隔主要是通过配接不同的阻容值达到的。 优点:不占用CPU时间。 缺点:变换定时较难。 总结:适用于定时时间间隔固定的场合。
8254有6种工作方式:方式0~方式5。对于每一种工作方式, 由时钟输入信号CLK确定计数器递减的速率。门控信号GATE用于 允许或禁止计数器计数。计数结束时在输出线OUT上产生一个信 号。 无论采用哪一种工作方式,都会遵循下面几条原则: (1)控制字写入计数器时,所有的控制逻辑电路立即复位, 输出端OUT进入初始态(高电平或低电平)。 (2)计数初值写入后,要经过一个时钟上升沿和一个下降 沿,计数执行部件才开始计数。 (3)在时钟脉冲CLK的上升沿时,门控信号被采样。 (4)在时钟脉冲CLK的下降沿时,计数器作减1计数,输出 端OUT的波形也都是在时钟周期的下降沿时产生电平的变化。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
M1M0— 工作模式选择位(编程可决定四种工作模式)。
振荡器
Tx端 TRx位 GATE位 INTx端
12 C/T=0
C/T=1
&
≥1 与门 或门
TLx THx (8位) (8位)
控制 =1 开关接通
申请 TFx 中断
CPU时序 振荡周期: 为单片机提供定时信号的振荡源的周期(晶振 周期或外加振荡源周期)。 状态周期: 2个振荡周期为1个状态周期, 用S表示。 机器周期: 1个机器周期含6个状态周期, 用S1、 S2、 …、 S6表示, 共有12个节拍。
由于:GATE=0;M1M0=01;C/T=0; 所以:(TMOD)=10H 2、计算初值(单片机的振荡频率为12MHZ) 所需要的机器周期数:
n=(50ms=50000us/1us)=50000 计数器的初始值:
X=65536-50000=15536=001111001011000B 所以:(TH0)=3CH;(TL0)=0B0H
判断中 断的次 数

CPL P1.0
;定时到,输出取反

NO:RETI
;中断返回
END
注意:此程序的#20和#60这两个立即数后面没 有加H表示是十进制数。
思考:能否利用定时器来实现一个电子钟?
测量每1秒钟之内的按键按下次数
要求:
每秒的次数用发光管显示出来
每秒钟按键的按下次数不超过255次
5.1k
2)工作方式1 T0的等效逻辑结构
在工作方式1下,计数器的计数值范围是: 1~65536(216)
当为定时工作方式1时,定时时间的计算公式为: (65536—计数初值)× 机器周期 (65536—计数初值)× 晶振周期×12
如果单片机的晶振选为6.000MHz, 则最小定时时间为:
[65536—(65536—1)]×1/6×10-6×12=2×10-6(s)=2(us) 最长定时时间为:
HERE:SJMP $
;T0中断入口地址 ;中断服务程序 ;开辟堆栈 ;工作方式设置 ;初始值设置
;开中断 ;开T0中断 ;运行T0 ;等待中断
SER:CPL P1.0 MOV TH0,#0E0H MOV TL0,#18H RETI END
;定时到,输出取反 ;重新加载初战值
;中断返回
中断程序的主 程序和中断服 务程序的布局
定时器初始化
开定时器中断
实例二:利用方式1定时
题目:用定时器T1,使用工作方式1,在单片机的P1.0输出一个周期为 2分钟、占空比为1:1的方波信号。
解:周期为2分钟,占空比为1:1的方波信号,只需要利用T1产生定时, 每隔1分将P1.0取反即可。
由于定时器定时时间有限,设定T1的定时为50ms,软件计数1200次, 可以实现1分钟定时。 编程步骤: 1、计算TMOD的值
ORG 401BH
; T1中断入口地址
LJMP SER
; 中断服务程序
MAIN:MOV SP,#50H ; 开辟堆栈
MOV TMOD,#10H ; 工作方式设置
MOV TH1,#3CH
; 初始值设置
MOV TL1,#0B0H
SETB EA

SETB ET1
; 开中断 ; 开T1中断

SETB TR1
由于GATE=0;M1M0=00;C/T=0; 所以 (TMOD)=00H 计算初值(单片机振荡频率为12MHZ) 所需要的机器周期数:
机器周期=振荡周期*12=1/12*12=1us 所需要的脉冲数:
n=(1ms=1000us/1us)=1000 计数器的初始值:
X=8192-1000=7192=(1110000011000)B 所以: (TH0)=0E0H,(TL0)=18H
MOV TMOD,#01H MOV TL0,#00H MOV TH0,#4CH SETB TR0 以上程序是任务一中的定时程序段,它的初始化过程和计 数方式类似。
MCS-51单片机的定时器/计数器应用
利用定时器/计数器实现固定时间的定时 利用定时器/计数器实现对外来信号脉冲的
计数 利用定时器/计数器实现对外来信号脉冲信
工作方式1: 16位定时/计数方式,因此,最多可以计到2的16次方,也就 是65536次。
工作方式2和工作方式3:都是8位的定时/计数方式,因此,最多可以计到 2的8次方,也说是256次。
预置值计算: 用最大计数量减去需要的计数次数即可。 通过上面的任务,我们掌握了计数程序的编制方法,下面 我们再看看定时程序怎样编制。 首先我们看一下下面的程序段。
S +5 V
G ND 5.1k
A 1
3
2
74F0 0
B 4
5
74F0 0
T0 6
PI.0 PI.1 PI.2 PI.3 PI.4 PI.5 PI.6 PI.7
(1)确定工作方式——对TMOD赋值; 如:任务中的MOV TMOD,#06H指令,设定T0为计数 器工 作方式。
(2)预置定时计数器中计数的初值—直接写入TH和TL; 如:任务中的MOV TH0,#00H 两条指令,设定计数初 值。
MOV TH0,#00H MOV TL0,#00H
(3)根据需要开放定时器/计数器的中断——对IE位赋值;
方式2在串口通讯时,常用作波特率发生器。
பைடு நூலகம்)工作方式3
如果定时/计数器0工作于工作方式3,那么定时/计数器1的 工作方式就因为自己的一些控制位已被定时/计数器0借用, 只能工作在方式0、方式1或方式2下,等效电路参见下图:
怎样编制计数程序?
首先必须对定时计数器进行初始化,然后再开启定时或 计数。简单的总结一下,定时计数器的初始化包括以下内 容。
(65536—0)×1/6×10-6×12=131072×10-6(s)=131072(us)。 大约131ms
3)工作方式2 T0的等效逻辑结构
方式2与方式0、1的区别:
工作方式0和工作方式1的最大特点就是计数溢出后,计 数器为全0,因而循环定时或循环计数应用时就存在反复设 置初值的问题,这给程序设计带来许多不便,同时也会影 响计时精度。
MCS-51单片机的定时器/计数器(一)
软件定时 硬件定时 可编程逻辑芯片定时
MCS-51单片机的定时器/计数器(一)
一、MCS-51单片机定时器/计数器组成:
定时器/计数器0(T0):16位的加计数器 定时器/计数器1(T1):16位的加计数器
二、定时器/计数器的功能
信号来源不同 对外部输入信号的计数功能。定时器/计数器0(T0)的外来脉冲输
D4
D3
D2
D1
D0
TF1 TR1 TF0 TR0
TR0 —— 定时 / 计数器0运行控制位。 软件置位,软件复位。
TR1 —— 定时 / 计数器1运行控制位。(用法与TR0类似)
TF0、TF1 分别是定时、计数器T0、T1的溢出标志位。
(1)定时/计数器的工作方式
M1M0—— 工作模式选择位(编程可决定四种工作模式)
定时:fosc / 12 = 1 /(12/fosc) = 1 / T
波形等间隔,次数已定,时间确定
即对机器周期进行计数。 T
N个方波 左图定时时间为 N*T
计数:脉冲不等间隔。 每个下降沿计数一次 确认一次负跳变需两个机器周期, 所以,计数频率最高为fosc / 24。
TCON 88H
D7
D6
D5
号脉宽的测量
实例一:定时器/计数器实现固定时间的定时
题目:利用T0,使用工作方式0,在单片机的P1.0输出一个周期为 2ms,占空比为1:1的方波信号。(振荡频率为12MHZ)
解:周期为2ms,占空比为1:1的方波信号,只需要利用T0产生定时, 每隔1ms将P1.0取反即可。
编程步骤: 计算TMOD的值
工作方式2就具有自动重装载功能,即自动加载计数初值, 所以也有的文献称之为自动重加载工作方式。在这种工作 方式中,16位计数器分为两部分,即以TL0为计数器,以 TH0作为预置寄存器,初始化时把计数初值分别加载至 TL0和TH0中,当计数溢出时,不再象方式0和方式1那样 需要“人工干预”,由软件重新赋值,而是由预置寄存器 TH以硬件方法自动给计数器TL0重新加载。
中断允许寄存器IE (0A8H)
EA — ET2 ES ET1 EX1 ET0 EX0
如:任务中的SETB ET0 SETB EA指令
(4)启动定时器/计数器;
如:任务中的SETB TR0 指令
初值的计算方法
X=M-计数值
M是定时器的最大计数值。视工作方式不同而不同。
工作方式0: 13位定时/计数方式,因此,最多可以计到2的13次方,也就 是8192次。
( 8192 -计数初值)×机器周期 ( 8192 -计数初值)×振荡周期×12
如果单片机的晶振选为6.000MHz,
振荡周期=1/振荡频率=1/6 us 机器周期=12*振荡周期=12*1/6=2us
则最小定时时间为: 1*2us=2us
[8192—(8192—1)]×1/6×10-6×12=2×106(s)=2(us) 最长定时时间为: 8192*2us= 16384(us) (8192—0)×1/6×10-6×12=16384×10-6(s)=16384(us)。
流程图
主程序: 开始 设置堆栈地址 设置TMOD方式 送定时器初值 开T0中断 启动T0 等待
中断程序: 中断入口地址 P1.0取反
重新给T0赋初值 中断返回
主 程 序
中 断 服 务 程 序
3:程序清单 ORG 4000H LJMP MAIN ORG 400BH LJMP SER
MAIN:MOV SP,#50H MOV TMOD,#00H MOV TH0,#0E0H MOV TL0,#18H SETB EA SETB ET0 SETB TR0
相关文档
最新文档