刘一帆照片:如何区分串行通信中发送中断和接受中断

来源:百度文库 编辑:中科新闻网 时间:2024/05/04 17:02:48
在单片机8051中如何区分串行通信中发送中断和接受中断

8251A的发送接收
1异步接收方式 在RxD线上检测低电平 没有字符信息时RxD为高电平 将测到的低电平作为起始位 启动记数 记数进行到半个数位传输时间时再检测RXD 为低确认收到有效起始位 为高看作干扰脉冲
2异步发送方式 置TxEN为1 外设请求发送信号 CTS低电平有效 开始发送过程 停止位总在发送时钟TxC下降沿发出
3同步接收方式 监测RxD线 出现一个数据位 就接收送移位寄存器移位 并与同步字符寄存器比较 相等SYNDET升高电平 不等重复比较
4同步发送方式 TxEN为1 CTS低电平有效 发送器发送1或2个同步字符 然后发数据块 CPU来不及提供新数据时 发送器自动插入同步字符
实际使用时,如采用中断方式联系则TxRDY可作为中断请求信号 从CPU获得一个字符后TxRDY变为低电平
接受器准备好信号RxRDY用来表示从外设接受到一个字符 等待CPU取走 中断方式时 RxRDY可用来作为中断请求信号
CPU读取一个字符后RxRDY变低电平,下一次接收到新字符后升为高电平,即有效电平
8051总体结构

8051是ROM型单片机(只能写一次),内部有4K工厂掩膜编程的ROM程序存贮器(8031无ROM)。

硬件资源有:

面向控制的8位CPU;

128B内部RAM数据存贮器;

32位双向输入/输出线;

1个全双工的异步串行口;

2个16位定时器 /计数器;

5个中断源,2个中断优先级;

时钟发生器;

可寻址64KB的程序存贮器和64KB的外部数据存贮器。

8051的存储器

一、程序存储器

程序存储器用于存放编好的的程序和表格常数,
8051片内有4KB ROM,片外16位地址线最多可扩
展64KB ROM,两者统一编址(访问方式一样)。
如果EA端保持高电平,8051的程序计数器PC在
0000H-0FFFFH范围内(即前4KB地址)是执行片
内ROM的程序。当寻址范围在1000H-0FFFFH时,
则从片外存储器取指令。
当EA端保持低电平时,8051的所有取指令操作
均在片外程序存储器中进行,这时片外存储器
可以0000H开始编址(ORG 0000H
SJMP 200H
…)。

程序存储器中具有特殊功能的6个单元:
▲0000H:8051复位后,PC=0000H,程序从0000H开始执行指令
▲0003H:外部中断0入口
▲000BH:定时器0溢出中断入口
▲0013H:外部中断1入口
▲001BH:定时器1溢出中断入口
▲0023H:串行口中断入口
●使用时通常在这些入口地址处存放一条绝对跳转指令,使程序跳到用户安排的中断程序起始地址(因为这些中断入口间隙小,不足写中断程序,中断子程后面不要忘写上RETI返回主程序)。

二、数据存储器

数据存储器用于存放中间运算结果、数据暂存和缓冲、标志位等。8051片内有256B RAM,片外最多可扩充64KB
RAM,构成了两个地址空间,访问片内RAM用 MOV,访问片外RAM用 MOVX。

R0、R1和DPTR可以作为间址寄存器,前两个是8位地址指针(寻址范围:256B),DPTR是16位地址指针(可分为DPH和DPL两部分,寻址范围:64K)。对片外数据存储器只能采用间接寻址方式。

在8051片内数据存储器中有21个专用寄存器SFR,也叫特殊功寄存器。它们离散分布在高128B地址80H-0FFH中,☆访问这些专用寄存器仅允用直接寻址方式。

SFR 意义 地址
ACC 累加器A(用PUSH、POP指令时、位寻址时只能用ACC) 字节地址:0E0H
位地址:0E0H-0E7H
B B寄存器 字节地址:0F0H
位地址:0F0H-0F7H
PSW 程序状态字 字节地址:0D0H
位地址:0D0H-0D7H
SP 堆栈指针 字节地址:81H
不能位寻址
DPTR 数据存储器指针(由DPH和DPL组成) DPH字节地址:83H 不能位寻址
DPL字节地址:82H 不能位寻址
P0-P3 I/O端口 P0字节地址:80H 位地址:80H-87H
P1字节地址:90H 位地址:90H-97H
P2字节地址:0A0H 位地址:0A0H-0A7H
P3字节地址:0B0H 位地址:0B0H-0B7H
IP 中断优先级 字节地址:0B8H
位地址:0B8H-0BFH
IE 中断允许 字节地址:0A8H
位地址:0A8H-0AFH
TMOD 定时器/计数器方式 字节地址:89H
不能位寻址
TCON 定时器/计数器控制 字节地址:88H
位地址:88H-8FH
TH0 定时器/计数器0
(高字节) 字节地址:8CH
不能位寻址
TL0 定时器/计数器0
(低字节) 字节地址:8AH
不能位寻址
TH1 定时器/计数器1
(高字节) 字节地址:8DH
不能位寻址
TL1 定时器/计数器1
(低字节) 字节地址:8BH
不能位寻址
SCON 串行控制 字节地址:98H
位地址:98H-9FH
SBUF 串行数据缓冲器 字节地址:99H
不能位寻址
PCON 电源控制 字节地址:87H
不能位寻址

南京工程学院