当前位置:首页 > 微机原理课后习题及答案
SETB EX0
SJMP $ ;主程序在此循环等待,等待中断发生
第六章习题答案
6-1.单片机的定时器/计数器具有哪些功能?
答:定时/计数器T0,T1具有一般的定时和计数的功能。当它们对内部机器周期信号进行计数时,由于此信号的周期时确定的,则此时它们实现的是定时器功能;当它们对外部脉冲信号进行计数时,它们实现的是计数器的功能。另外,T1可作为串行通讯时的波特率发生器。 T2是一个高级CTC,其具有四个功能:自动装入初值的定时器/计数器、捕捉外部信号、信号发生器、串行通讯的波特率发生器。
6-2.请说明CTC的定时器工作方式的工作原理。
答:当CTC设置成对内部信号计数时,由于该内部计数信号的周期和频率是确定的(频率为fosc/12,周期即为一个机器周期),所以其计入信号的个数就能换算成时间,在实际使用中,一般根据定时的需要,先给CTC一个初值,然后启动其计数工作,当其计数溢出时会置1溢出标志,产生一个定时信号。
6-3.请说明T2捕捉工作模式的工作原理、
答:略,参见113页。大致原理:外部信号(P1.1脚)每来一个下降沿,便触发一次中断,同时记录下当前定时器T2计数值,这样可通过对相邻两次中断(即两个相邻的脉冲)时记录下来的计数值相减,
49
便可得该脉冲信号的周期。其实这种功能也可通过T0,T1实现,只不过T2功能更强,实现起来相对容易。
6-4.若系统时钟的频率为fosc=6MHZ,请分析T1工作在模式1和模式2时,定时器最长的定时时间分别为多少? 答:已知fosc=6MHZ,故机器周期=12/fosc=2us
T1在模式1时为16位计数器,当其工作在定时方式(即作为定时器使用)时,每个机器周期加1,则其最长定时时间为216=65536个机器周期=131072(us)=131.072(ms)。
T1在模式2时为自动装入初值的8位计数器,当其工作在定时方式(即作为定时器使用)时,每个机器周期加1,则其最长定时时间为28=256个机器周期=512(us)。
6-5.已知系统时钟频率为fosc=6MHZ,若要求T1在模式1进行5ms定时,采用内部启动。请计算T1计数器的初值a,并对T1进行初始化编程。
答:由上题计算可知,当fosc=6MHZ时,T1在模式1最大定时为131.072ms > 5ms,所以T1在模式1可满足5ms定时需要。 初值计算:a=216- T定时/T机器=216- T定时×fosc/12=65536-5ms×6MHz/12=65536-5000/2=63036=F63CH 初始化编程
INIT: MOV TMOD,#10H ;T1工作在定时器方式,内部启动,模式
50
共分享92篇相关文档