第6章
1.中断服务子程序与普通子程序有哪些相同之处与不同之处?
答:相同之处:都是让主程序转去执行子程序,执行完后回到主程序;
不同之处:①中断服务子程序是随机的,而普通子程序是事先安排好的;
②中断服务子程序以RETI结束,而普通子程序以RET结束;(RETI除将断点弹回PC外,还要清楚中断优先标志位,以便新的中断请求能被响应)
2.中断响应需要满足那些条件?
答:①有中断请求信号;②中断请求没有被屏蔽;③中断是开放的;
第7章
1.定时器/计数器T1、T0的工作方式2有什么特点?适用于那些场合?
特点:该工作模式为自动重装初始值(即计数到预设的计数值后,会重新开始从初值进行累加计时),这意味着它不需要手动设置或调整参数。这种方式下,定时器的当前值寄存器和预置的值保持不变,直到溢出发生为止。此后它将从头开始新的周期并继续累积时间或者执行其他操作。
使用场合:需要精确测量时间的场合。例如在实时控制和测试系统中,可以用于产生时钟脉冲以及检测特定的系统事件等。
2.THx与TLx(x=0,1)是普通寄存器还是计数器?其内容可以随时用指令更改吗?更改后的新值是立即刷新还是等当前计数器满后才能刷新?
答:THx与TLx(x=0,1)是特殊功能寄存器构成的计数器;
其内容可以随时用指令更改;
更改后的新值立即刷新
3.如果系统的晶振的频率为24MHz,定时器/计数器工作在方式0、1、2下,其最大定时时间各为多少?
答:晶振为24MHz,则周期为μs;
方式0:μs×213=μs×8192=4096μs
方式1:μs×216=μs×65536=327686μs
方式2:μs×28=μs×256=128μs
5.一个定时器的定时时间有限,如何用两个定时器的串行定时来实现较长的定时?
当一个定时器溢出时,设置另一个定时器初值为0;
6.当定时器T0用于方式3时,应该如何控制定时器T1的启动和关闭?
用定时器TMO寄存器的D6位“C/T*”来控制T1启动与关闭;