习题
6-1 将6.1.4节实例的S2改接在P3.2脚时,应如何修改应用程序?为什么这样修改?
6-2 要想使6.1.4节实例中的扬声器发出高音警报声,应如何设置20H值或R2值?
6-3 什么是PC当前值,在6.1.4节实例的参考程序中执行01F7语句时的PC当前值是多少?若此时(20H)>0,则PC当前值将改为多少?
6-4 6.1.4节实例中,如果不用开关启动,而用延时启动,如何修改程序,并说明整个程序的设计思想。
6-5 6.1.4节实例中,如果第1道工序1个灯亮,第2道工序2个灯亮,依此类推,第7道工序7个灯亮,如何修改程序,并说明“MOV B,R2”和“MOV R2,B”在程序中的作用。
6-6 6.1.4节实例中,如果加一停工开关,如何修改程序和接线,并说明整个程序的设计思想。
6-7 6.1.4节实例中,如果报警信号用二极管显示,如何修改程序和接线,使有故障时报警二极管闪烁,而且故障消除后能马上恢复工序控制,并说明整个程序的设计思想。
6-8 MCS-51系列单片机提供了哪几种中断,在中断管理上有什么特点?
6-9 外部中断有哪两种触发方式?对触发脉冲或电平有什么要求?
6-10 如何选择和设定中断方式?
6-11 中断服务子程序与普通程序中的子程序调用有什么不同?
6-12 MCS-51系列单片机各中断源的中断服务程序入口地址是多少、用户能否任意设定;若想要任意设定应该怎么办?
6-13 中断服务子程序和普通子程序有什么区别?(可以从执行时间、入口动作、返回动作、现场保护和用途等方面考虑)
6-14 CPU在已响应中断并执行中断服务子程序期间能否再响应新的中断请求?为什么?
6-15 查阅资料,分析一应用实例中的中断应用情况。
6-16 利用MCS-51系列单片机的定时器分别实现下列要求,说明实现方法。
1)T1采用工作方式1或方式2,使P1.0引脚输出周期为400μs的连续方波。
2)测量不等宽方波的高低电平持续时间。
3)对外部脉冲计数,当计到200时,从P1.0引脚输出一个正跳变。
6-17 AT89S51单片机内部定时计数器,按计数器模式和方式1工作,对P3.4(T0)引脚进行计数10次。使用AT89S51单片机的T1作定时器,50ms中断一次,看T0内每0.5ms来了多少脉冲,将其数值送入片内RAM的50H为始地址的存储区。画出程序流程图,编制程序。
6-18 能否用定时器模式产生高、低电平分别为12μs和8μs的方波?为什么?
6-19 在6.2.6节的实例中若将T0与T1的角色对换,应如何修改程序?
6-20 在6.2.5节例2(图6-31)中如果脉宽大于65.5ms,如何测量?
6-21 在6.2.6节的实例中若将T0与T1的角色对换,应如何修改程序?
6-22 8051单片机时钟振荡频率为11.0592MHz,选用定时器T1模式2作波特率发生器,波持率为2400bit/s,求初值。