- 19
- 0
- 约2.77万字
- 约 32页
- 2017-01-02 发布于湖南
- 举报
第5、6、7、8章习题
郭波 312011080301124 2011级机设“卓越”
一、问答题
1.说明51单片机读端口锁存器的必要性,为什么?
答:MCS-51系列单片机有不少指令可以直接进行端口操作,例如:ANL、ORL、XRL、JBC、CPL、INC、DEC、DJNZ、MOV PX.x,C、CLR PX.x、SETB PX.x。这些指令的执行过程分成“读-修改-写”三步,即先将端口的数据读入CPU,在ALU中进行运算,运算结果再送回端口。执行“读-修改-写”类指令时,CPU实际上是通过三态门读回锁存器Q端的数据。
这种读锁存器的方式是为了避免可能出现的一种错误。例如,用一根口线直接去驱动端口外的一个NPN晶体管基极,当向口线写“1”时,该晶体管导通,导通了的三极管集极与发射极间只有0.7V,会把端口引脚的高电平拉低,这样直接读引脚就会把本来的“1”误读为“0”。但若从锁存器Q端读,就能避免这样的错误,得到正确的数据。也就是说,如果某位输出为1时,有外接器件拉低电平, 读端口引脚与读锁存器就有区别了,读锁存器状态是1,读引脚状态是0,锁存器状态取决于单片机企图输出什么电平,引脚状态则是引脚的实际电平。
因此,当作为读引脚方式使用时,应先对该口写“1”,使场效应管截止,再进行读操作,以防止场效应管处于导通状态,使引脚为“0”,而
原创力文档

文档评论(0)