单片微型计算机与接口技术第4版课后答案第7章
- 格式:docx
- 大小:262.04 KB
- 文档页数:4
7.2 8XX51单片机内部设有几个定时器/计时器?它们是由哪些专用寄存器组成的?
答:MCS-51单片机的定时/计数器有4种操作模式。
方式0:13位计数/定时器。
13位由TLi的低五位和THi构成,手动重载入时间常数,软件启动/停止计数/定时器。
方式1:16位计数/定时器。
16位由TLi和THi构成,手动重载入时间常数,软件启动/停止计数/定时器。
方式2:8位计数/定时器。
TLi被定义为加1计数器,THi被定义为赋值寄存器,自动重载入时间常数,软件启动/停止计数/定时器。
方式3:T0 被用作两个独立的8位计数/定时器,手动重载入时间常数,软件启动/停止计数/定时器。
T1常被用作波特率发生器。
7.4 设单片机的fosc=6MHz,定时器处于不同工作方式时,最大定时范围分别是多少?
答:方式0:16.38ms,方式1:131ms,方式2:512us
7.6 在p1.0引脚接一驱动放大电路驱动扬声器,利用T1产生1000HZ的音频信号从扬声器输出。
答:1000Hz的周期为1ms,即要求每500usp1.0变反一次,使用t1方式1,MC=12/f0sc=1us.c=216-500us/1us=FE0CH,除TMOD=10H,TH0=FEH,TL0=0CH外,程序如下:ORG 0000H
MOV TMOD,#06H
MOV TH0,#0F6H
MOV TL0,#0F6H
SETB TR0
ABC:JNB TF0,$
CLR TF0
CPL P1.0
SJMP ABC
END
7.8 在8XX51单片机中,已知时钟频率为12MHz,编程使P1.0,P1.1分别输出周期为2ms和50us的方波。
答:程序如下:
ORG 0000H
MOV TMOD,#02H
MOV TH0,#0E7H
MOV TL0,#0E7H
SETB TR0
MOV R0,#04H
AA:JNB TF0,$
CLR TF0
CPL P1.1
DJNZ R0,AA
CPL P1.0
AJMP AA
end
7.10 利用8XX51单片机定时器t0测量某正单脉冲宽度,已知此脉冲宽度小于10ms,主机频率为12MHz。
编程测量脉宽,并把结果转换为BCD码,顺序存放在以50H单元为首地址的内存单元中(50H单元存个位)。
#include<reg51.h>
sbit p3_2=P3^2;
main(){
unsigned char *p,i;
int a;
P=0x50;
TMOD=0x09;
TL0=0; TH0=0;
while(P3-2==1);
TR0=1;
while(P3-2==0);
while(P3-2==1);
TR0=0;
i=TH0;
a=i*256+TL0;
for(;a!=0;)
{
*p=a%10; a=a/10; p++;
*p=a; }
}。