- 11
- 0
- 约1.49千字
- 约 2页
- 2022-02-14 发布于湖南
- 举报
单片微型计算机与接口技术第三版课后习题答案(单片机第7章作业
单片微型计算机与接口技术第三版课后习题答案(单片机第7章作业
PAGEPAGE2
单片微型计算机与接口技术第三版课后习题答案(单片机第7章作业
单片微型计算机与接口技术 思考与习题7
8XX51单片机内部设有几个定时/计数器它们是由哪些专用寄存器组成的
答:(1)8XX51单片机内部设有2个定时/计数器。
(2)定时/计数器T1由寄存器TH1、TL1组成,定时/计数器T0由寄存器TH0、TL0组成。
定时/计数器用作定时时,其定时时间与哪些因素有关用作计数时,对外界计数频率有何限制
答:设置为定时工作方式时,定时器计数的脉冲是由51单片机片内振荡器经12分频后产生的。每经过一个机器周期定时器(T0或T1)的数值加1直至计数满产生溢出。
设置为计数工作方式时,通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数。当输入脉冲信号产生由1至0的下降沿时,定时器的值加1, 在每个机器周期CPU采样T0和T1的输入电平。若前一个机器周期采样值为高,下一个机器周期采样值为低,则计数器加 1。由于检测一个1至0的跳变需要二个机器周期,故最高计数频率为振荡频率的二十四分之一。
利用8XX51的T0计数。每计10个脉冲,变反一次,用查询和中断两种方式编程。
使用方式2,计数初值C=100H—0AH=F6H
查询方式:
ORG 0000H
MOV TMOD,#06H
MOV TH0,#0F6H
MOV TL0,#0F6H
SETB TR0
ABC:JNB TF0,$
CLR TF0
CPL
SJMP ABC
中断方式:
ORG 0000H
AJMP MAIN
ORG 0000BH
CPL
RETI
MAIN:MOV TMOD,#06H
MOV THO,#0F6H
SETB EA
SETB ET0
SETB TR0
SJMP $
已知8XX51单片机系统时钟频率为6MHz,利用定时器T0使每隔350us,输出一个50us脉宽的正脉冲。
解:=6MHz,MC=2us,方式2的最大定时为512us,合乎题目的要求。50us时,计数初值为C1=256-25=E7H,350us时,计数初值为C2=256-175=51H
ORG 0000H
MOV TMOD,#02H
NEXT:MOV TH0,#51H
MOV TL0,51H
CLR
SETB TR0
AB1:JBC TF0,EXT
SJMP AB1
EXT:SETB
MOV TH0,#0E7H
MOV TL0,#0E7H
AB2:JBC TF0,NEXT
SJMP AB2
设系统时钟频率为6MHz,试用定时器T0作为外部计数器,编程实现每计到1000个脉冲后,使T1定时2ms,然后T0又开始计数,这样反复循环。
解:C语言程序
T0计数1000个脉冲,采用方式1;T1定时2ms,=6MHz,C=-2ms/2us=-1000
include
counter()
{
TH0=-1000/256;TL0=-1000%256;TR0=1;TR1=0;
while(TF0!=1) ;
TF0=0;
}
timer()
{
TH1=-1000/256;TL1=-1000%256;TR1=1;TR0=0;
while(TF1!=0);
TF1=0;
}
main()
{
TMOD=0x15;
for(;;)
{
counter();
timer();
}
}
原创力文档

文档评论(0)