1、80C51 的外部中断有哪两种触发方式?它们对触发脉冲或电平有什么要求?
(1)电平触发方式:CPU在每个机器周期的S5P2期间采样外部中断引脚的输人电平。若为低电平,便置IEl(IEO)为“1” ,申请中断;若外部中断引脚为高电平,则IEl(IEO)清零。
(2)边沿触发方式:CPU在每个机器周期的S5P2期间采样外部中断请求引脚的输人电平。如果在相继的两个机器周期采样过程中,一个机器周期采样到外部中断请求为高电平,接着下一个机器周期采样到外部中断请求为低电平,则使IEl(IEO)置1,申请中断;否则,IEl(1E0)置0。
2、单片机怎样管理中断?怎样开放和禁止中断?怎样设置优先级? (1)由中断源提出中断请求,由中断控制允许控制决定是否响应中断,如果允许响应中断,则CPU按设定好的优先级的顺序响应中断。如果是同一优先级的中断,则按单片机内部的自然优先级顺序(外部中断0→定时器0中断→外部中断l→定时器1中断→串行接口中断)响应中断。
CPU响应中断请求后,就立即转入执行中断服务程序。保护断点、寻找中断源、中断处理、中断返回,程序返回断点处继续执行。 (2)由中断允许寄存器IE控制开放和禁止中断。欲开放某一中断,则应先开放总中断允许(EA置1),然后开放相应中断的中断允许(相应位置1);若要要禁止中断,则EA置O即可。
(3)由中断优先级控制寄存器IP控制中断优先级,相应位置1,则设为高级中断,置0则为低级。其中:PS为串行中断优先级,PTl(0)为定时中断1(0)优先级,PXl(0)外部中断1(0)优先级。 3、写出下列特殊功能寄存器的名称 TCON :定时器控制寄存器
TMOD :定时器/计数器方式控制寄存器 SCON :串行口控制寄存器 PSW :程序状态字(标志寄存器) IE :中断允许控制寄存器
4、80C51 响应中断的条件是什么?各个中断源的中断入口地址是多少?
(1)有中断源发出中断请求。
(2)中断总允许控制位EA=l, CPU开放总中断。
(3)申请中断的中断源的中断允许位为1,即该中断没有被屏蔽。 (4)无同级或更高级中断正在服务。 (5)当前指令周期已经结束。
(6)若现行指令为RETI或访问IE或IP指令时,读指令以及紧接着的另一条指令已执行完毕。 外部中断0(INT0 ) 0003H 定时器T0中断 000BH 外部中断1(INT1 ) 0013H 定时器T1中断 001BH 串行口中断 0023H
5、简单叙述多机通信的原理
当一片80C51(主机)与多片80C51(从机)通信时,
① 主机的SM2位置0,所有从机的SM2位置1,处于接收地址帧状态。
② 主机发送一地址帧,其中,8位是地址,第9位为地址/数据的区分标志,该位置1表示该帧为地址帧。
③ 所有从机收到地址帧后,都将接收的地址与本机的地址比较。对于地址相符的从机,使自己的SM2位置0(以接收主机随后发来的数据帧),并把本站地址发回主机作为应答;对于地址不符的从机,仍保持SM2=1,对主机随后发来的数据帧不予理睬。
④ 从机发送数据结束后,要发送一帧校验和,并置第9位(TB8)为1,作为从机数据传送结束的标志。
⑤ 主机接收数据时先判断数据接收标志(RB8),若接收帧的RB8=0,则存储数据到缓冲区,并准备接收下帧信息。若RB8=1,表示数据传送结束,并比较此帧校验和,若正确则回送正确信号00H,此信号命令该从机复位(即重新等待地址帧);若校验和出错,则发送0FFH,命令该从机重发数据。
⑥ 主机收到从机应答地址后,确认地址是否相符,如果地址不符,发复位信号(数据帧中TB8=1);如果地址相符,则清TB8,开始发送数据。
⑦ 从机收到复位命令后回到监听地址状态(SM2=1)。否则开始接收数据和命令。
6、简述在串行通信过程中,两种数据传送方式:同步方式和异步方式的定义和特点
一、异步方式:指数据传送以字符为单位,字符与字符之间的传送是异步的,位与位之间的传送基本是同步的(1)以字符位单位传送信息(2)相邻两字符的间隔是任意长(3)发收和接收的始终彼此独立、互不同步,靠起止位判定数据同步(4)字符间异步,字符内部各位同步
二、同步方式:指数据传送是以数据块(一组字符)位单位,字符与字符之间,字符内部的位与位之间都同步(1)以数据块(信息帧)为单位传送信息(2)在一个数据块内,字符与字符之间无间隔(3)因为一次传输的数据块中包含的数据较多,所以接收时钟与发送时钟严格同步,通常需有同步时钟。
7、8051 单片机内设有几个可编程的定时器/计数器?它们有几种工作方式,如何选择和设定? 2 4
TMOD用于控制定时器/计数器T0和T1的工作方式,M1M0为工作方式选择位。
M1M0=00 方式0,13位定时器/计数器; M1M0=01 方式1,16位定时器/计数器;
M1M0=10 方式2,自动重新装入计数初值的8位定时器/计数器;
M1M0=11 方式3,两个8位定时器/计数器(仅适用于T0)。 为定时方式/计数方式选择位。若设定 =0,则选择定时器工作方式;若设定 =1,则选择计数器工作方式。一个定时器/计数器同一时刻或者作定时用,或者作计数用,不能同时既作定时又作计数用。 GATE:门控位。它的状态决定了定时器/计数器启/停控制取决于TR0还是取决于TR0和 引脚两个条件的组合。若GATE=0,则只由TCON中的启/停控制位TR0控制定时器/计数器的启/停。此时,只要TR0=1,则接通模拟开关,使计数器进行加法计数,定时器/计数器启动工作。而如果TR0=0,则断开模拟开关,定时器/计数器停止工作。若GATE=1,由外部中断请求信号 和TCON中的启/停控制位TR0组合状态控制定时器/计数器的启/停。只有TR0=1,且 引脚也是高电平,才能启动定时器/计数器工作,否则,定时器/计数器停止工作。
定时器/计数器的定时器/计数器范围为:
工作方式0:13位定时器/计数器方式,因此,最多可以计到213,也就是8 192次。
工作方式1:16位定时器/计数器方式,因此,最多可以计到216,也就是65 536次。
工作方式2和工作方式3:都是8位的定时器/计数器方式,因此,最多可以计到28,也说是256次。
8、某软件中对寄存器 IE、 IP 设置如下MOV IE, # MOV IP, #
问: (1)CPU 是否允许中断? 允许
(2)CPU 如果允许中断,则允许哪些中断源中断?
外部中断0,外部中断1,定时器/计数器0,定时器/计数器1
(3)允许中断源的中断优先次序是什么?
定时器/计数器0>外部中断1>外部中断0>定时器/计数器1
9、同“6”
10、 MCS-51 指令系统主要有哪几种寻址方式?试举例说明。 MCS-51指令操作数主要有以下7种寻址方式: 寻址方式 举 例 立即寻址 MOV A,#16 直接寻址 MOV 20H,P1 寄存器寻址 MOV A,R0 寄存器间接寻址 MOVX A, @DPTR 变址寻址 MOVC A, @A+DPRT 相对寻址 SJMP LOOP 位寻址 ANL C,70H
11、定时器 T0 和 T1 各有几种工作方式?
12、8051 的振荡周期、机器周期、指令周期是如何分配的?当晶振频率为 6MHz 时,一个机器周期为多少微秒。
8051单片机每条指令的执行时间(即指令周期)为1~4个机器周期,有单字节单周期指令、两字节单周期指令、单字节两周期指令、两字节两周期指令、三字节两周期指令以及单字节四周期指令。一个机器周期有6个状态:S1~S6每个状态又包含两个振荡周期,分为两拍: