是一个完整的一位微计算机,它具有自己的CPU、寄存器、I/0、存储器和指令集。80C51单片机把8位机和布尔(位)处理机的硬件资源复合在一起,这是80C51系列单片机的突出优点之一,给实际应用带来了极大的方便。
布尔处理机系统包括以下几个功能部件。
·位累加器:借用进位标志位CY。在布尔运算中,cY既是数据源之一,又是运算结果的存放处和位数据传送的中心。根据CY的状态实现程序条件转移:JC rel、JNC reI
·位寻址的RAM:内部RAM位寻址区中的0~127位(20H~2FH)。
·位寻址的寄存器:特殊功能寄存器SF、R中的可位寻址的位。
·位寻址的I/O口:并行I/O口中可位寻址的位(如P1.0)。
·位操作指令系统:位操作指令可实现对位的置位、清零、取反、位状态判跳、传送、位逻辑运算、位输入/输出等操作。
布尔处理机的程序存储器和ALU与字节处理器合用。利用内部并行I/O口的位操作,提高了测控速度,增强了实时性。利用位逻辑操作功能把逻辑表达式直接变换成软件进行设计和运算,免去了过多的数据往返传送、字节屏蔽和测试分支,大大简化了编程,增强了实时性能。还可实现复杂的组合逻辑处理功能。因此,一位机在开关决策、逻辑电路仿真和实时控制方面非常有效。
可以位寻址的单元包括两部分:一是内部RAM位寻址区中的0~127位(20H~2FH); 二是SFR中字节地址的低位地址为0H或8H的特殊功能寄存器。
【2一12】80C5l单片机的节拍、状态、机器周期、指令周期是如何设置的?当主频为12 MHz时,各种周期等于多少微秒?
【答】把单片机振荡脉冲的周期定义为节拍。节拍经过二分频后,就是单片机的时钟信号。时钟信号周期定义为状态S,其前半周期对应的节拍叫P1,后半周期对应的节拍叫P2。
一个机器周期宽度为6个状态,并依次表示为S1~S6。由于一个机器周期共有12个振荡脉冲周期,因此,机器周期就是振荡频率的1/12。机器周期是80C51单片机的最小时间单位。执行一条指令的时间被称为“指令周期”,80C51单片机执行一条指令的时间包含有1个、2个或4个机器周期。当主频为12 MHz时,振荡脉冲的周期为1/12μs,状态周期为1/6μs,机器周期为1 μs, 指令周期为1~4μs
【2一13】程序存储器指令地址、堆栈地址和外接数据存储器地址各使用什么指针?为什么?
【答】程序存储器指令地址使用程序计数器PC指针,PC中存放的是下一条将要从程序存储器中取出的指令的地址。程序计数器PC变化的轨迹决定程序的流程。PC最基本的工作方式是自动加1。在执行条件转移或无条件转移指令时,将转移的目的地址送入程序计数器,程序流向发生变化。在执行调用指令或响应中断时,将子程序的入口地址或者中断矢量地址送人PC,程序流向发生变化。 堆栈地址使用堆栈指针.SP。SP在80C51中存放当前的堆栈栈顶所指存储单元地址,是一个8位寄存器,对数据按照“先进后出”原则进行管理。外接数据存储器地址使用数据指针DPTR。DPTR是一个16位特殊功能寄存器,主要功能是作为片外数据存储器或I/0寻址用的地址寄存器,这时会产生RD或wR控制信号,用于单片机对外扩的数据存储器或I/0的控制。数据指针DPTR也可以作为访问程序存储器时的基址寄存器,此时是寻址程序存储器中的表格、常数等单元,而不是寻址指令。
【2-14】请说明80C51单片机ALE引脚的时序功能,并举例说明其在系统中有哪些应用?
【答】80C51单片机ALE引脚是地址锁存允许信号。在系统中主要有两种应用:
①在访问片外存储器或I/O时,用于锁存低8位地址,以实现低8位地址A0~A7与数据DO~D7的隔离。在ALE的下降沿将P0口输出的地址A0~A7通过锁存器锁存,然后在PO口上出现DO~D7。
②由于ALE以1/6振荡频率的固定速率输出,因此,可以作为对外输出的时钟或外部定 时