5)SCI串行通信接口

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1)接收器数据准备好(RXRDY=1); 2)接收器错误标志位(RX ERROR=1); 3)如果SCIRXD引脚连续保持至少10个低电平,则产生一个间断条件 ( BRKDT =1)。
1、发送器中断:
1)置位TX INT ENA(SCICTL2.0); 2)只要SCITXBUF中数据传送到TXSHF中,就会产生发送器中断; 3)该操作将TXRDY置位(SCICTL2.7),表示CPU可以继续写数据。
错误标志位不能被直接清除,只能通过软件复位或系统复位来清除。 14
SCI的波特率计算
波特率:串行通信过程每秒钟传送的二进制脉冲数目,单位: bit/s (位/秒) 串行时钟SCICLK由低速外设时钟LSPCLK和波特率选择寄存器确定;
SCI使用16位波特率选择寄存器,可以设定为64K种波特率;
SCI波特率= LSPCLK
BRR+1= LSPCLK
(BRR+1)×8
SCICLK×8
注意:如果BRR=0,则波特率=LSPCLK/16. BRR--Baud-Select Register
SYSCLKOUT/4
15
SCI多处理器通信
在同一条串行连线上,多处理器通信模式允许一个处理器 (主机)向串行线上其它处理器(从机)发送数据。
本小节内容课下自学。
22
6.3 标准串行总线接口
1、 RS-232C标准(Recommended Standard) 计算机远程通信
DTE(Data Terminal Equipment)数据终端 DCE(Data Communications Equipment)数据通信装置 机械连接:25针,9针 电气方面:采用负逻辑电平:-5V~-15V 规定为逻辑 “1”
PC机1
RXD 2 TXD 3 GND 5 DCD 1 DTR 4 DSR 6 RTS 7 CTS 8
PC机2 双绞线:小于50英尺
2 RXD 3 TXD 5 GND 1 DCD 4 DTR 6 DSR 7 RTS 8 CTS
DCD 1
RXD TXD DTR GND
2 3 4 5
6 DSR
7 8 9
连接到串行总线上的所有处理器都将SCI Sleep位置1,这样只有检测到 地址字节后才会中断。当数据块地址与用户软件设置的处理器地址相符时, 用户必须清除Sleep位,以便SCI能够在接受每个数据字节时产生中断。
16
SCI多处理器通信
多处理器模式下,接受步骤如下: 接受地址块时,SCI端口被唤醒并申请中断,读取地址块 的第一帧,该帧包含目的处理器的地址; 比较接受的地址字节与内存中存放的器件地址; 如果二者一致,则编程使CPU清除SLEEP位,并读取数据 块中各个数据帧;否则,退出接受子程序并保持SLEEP置位, 直到下一个地址块的开始才接受中断。
RTS CTS RI
DB-9型连接器
24
半双工RS485通信
RS -485采用平衡线路,每个信号都有专用的导线对,其中一根导线上的 电压等于另一根导线上的电压取反,测量的是电压差。可以消除共模噪声 的影响,不受接地电势差异的影响。 • VA-VB > 0.2V 逻辑“1” • VA-VB >- 0.2V 逻辑“0”
第四讲 内容回顾
1、DSP开发系统组成 1)硬件开发工具;2)软件开发工具;3)DSP应用板。
2、DSP最小系统 1)DSP芯片;2)时钟电路;3)电源与复位电路; 4)JTAG仿真接口。 3、人机接口 1)输入:键盘、开关、按钮等; 2)输出:LED、LCD等
1
DSP原理及其应用技术
串行通信接口(SCI)
9
SCI通信格式
1) 4个SCICLK周期的连续低电平表示有效的起始位; 2) 接收器收到1个起始位后开始接受数据; 3) 每个串行数据位占用8个SCICLK时钟周期; 4) 在随后的各位中进行三次采样(4、5、6)确定该位电平; 5)串口两端的接收/发送器分别使用各自的时钟(异步方式)。
10
通信过程中的接收器信号
CPU SCIRXBUF
每个字符6个数据位
RXSHF
SCIRXD
地址位模式
11
Biblioteka Baidu信过程中的发送器信号 3个数据位
地址位模式
1)TXENA=1(SCICTL1.D1),使能发送器发送数据; 2)程序写数据到SCITXBUF寄存器,此时发送器不为空,TXRDY变低; 3)SCI发送数据到移位寄存器TXSHF后,产生中断请求,同时TXRDY变高; 4)TXRDY变高后,程序写第二个字符到SCITXBUF,随后TXRDY又变低; 5)发送完第一个字符,开始将第二个字符移位到寄存器TXSHF;
+5V~+15V 规定为逻辑 “0”
23
RS-232接口的硬件连接
RS232的信号定义: TXD/RXD : 是一对数据线,TXD称发送数据输出,RXD称接收数据输入,当 两台计算机以全双工方式直接通信时,双方的这两根线应交叉连接。 GND: 所有的信号都要通过信号地线构成回路。
其余为联络(握手信号)信号线.
较高,通常应用于11个或更少字节的数据块传送。而数据块较 大时推荐使用空闲线模式。
21
SCI的增强特性
SCIFIFO描述 发送器与接收器各有16级FIFO,有3个专门的寄存器控制; 复位时,SCI工作于标准模式,禁止FIFO功能。
自动波特率检测 自动检测SCI通信的波特率,并刷新BRR寄存器。
方法二: 利用TXWAKE位产生11位的空闲时间 1)首先置位TXWAKE(SCICTL1.3),控制数据发送特征; 2)写一个数据字节(内容不重要)到SCITXBUF,发送一个
块开始信号( 11位的空闲时间); 3)写一个新的地址到SCITXBUF,当TXSHF再次空闲后, SCITXBUF内容送TXSHF,TXWAKE被清零; 4)随后依次发送各个数据帧。
如何识别地址字节? SCI的两种模式均支持多处理器通信。
17
空闲线多处理器模式
数据块被各数据块间的空闲时间分开;
一帧空闲时间(10位或更多位个高电平)表示数据块的开始;
空闲时间
ADDR/IDLE MODE=0
18
空闲线多处理器模式
块起始信号的产生:
方法一:人为地在两个数据块间增加10或更多位的空闲时间。
6
SCI与CPU间的接口
CPU
两个外 部引脚
SCI模块
3.3V TTL 电平
13个控制 寄存器
只能以 16位方 式访问
7
SCI的数据格式
SCI的数据格式包括: 一个开始位 1~8个数据位(通常为8位) 一个奇/偶校验位或无奇偶校验位 1~2个停止位 区分地址和数据的附加位(仅地址位模式时存在)
与RS232 格式兼容
8
SCI数据格式的配置
SCIA的通信控制寄存器
STOP BITS:指定发送时停止位个数,0-1个停止位,1-2个停止位; EVEN/ODD PARITY:奇偶校验选择, 0-奇校验, 1-偶校验; PARITY ENALBE:校验使能, 0-禁止奇偶校验,1-允许奇偶校验; LOOPBACK ENA:环路测试模式使能,1-TX数据内部送Rx,0-禁止 ADDR/IDLE MODE:多处理器模式选择,0-空闲线模式,1-地址位模式 SCICHAR2~0:数据长度选择,1~8位数据(000-111)。
8255A PA0~7
打印机插座 2~9
DATA0~7
CPU
PC7
PC2 地
STB 1 BUSY 11 地
8255A并行打印机接口电路框图
3
串行通信概述
串行通信:通信线上既传输数据信息,也传输联络信息,因 此收发双方就必须要有通信协议。特点是串行传输成本低, 适用于远距离通信,但传输速度低。 串行通信分类:1)同步通信;2)异步通信。
1)发送地址帧:TXWAKE位置1,并写适当地地址值到SCITXBUF寄存器; 这样串行总线上的其它微处理器会读取该地址。 2)发送数据帧:将TXWAKE位清零,然后向SCITXBUF中写入要发送的第 一个数据; 3)依次发送其余的数据帧,直至整个数据块发送完毕。
提示: 地址位模式下数据块间不需要等待,传输小数据块时效率
典型的异步串行通信接口:RS-232、RS-422/485、USB等
4
计算机通信接口
5
6.2 SCI模块
主要特点:
串行通信接口(SCI-Serial Communication Interface) F2812包含两个SCI接口,记做SCIA和SCIB SCI是一种异步串行通信接口,即通常所说的UART SCI支持16级接收和发送FIFO,有助于减少CPU的开销 如果不使用FIFO时,SCI接收器和发送器采用两级缓冲方式 SCI可工作于半双工或全双工模式(RS485/422) 两种多处理器通信模式:空闲线与地址位多处理器模式 为保证数据的完整性,SCI模块对接收到的数据可以进行间 断、奇偶、超限和帧错误检测。
3、 在接收器错误中断服务子程序中,可以检测错误条件: 1)FE:当检测不到一个期望的停止位时,帧错误标志置位; 2)OE:在前一个字符被CPU读取前,有新的字符送到SCIRXBUF中时,置 位超时错误标志,此时前一个字符被覆盖; 3)PE:当接受字符中1的个数和它的奇偶校验位之间不匹配时(含地址位), 且校验模式被使能时,奇偶校验错误标志置位。
6)TXENA=0,禁止发送数据,SCI继续完成当前字符的发送; 7)第二个字符发送完成后,发送器变空,TXEMPTY=1。
CPU
SCITXBUF
TXSHF
SCITXD
12
SCI的中断
SCI通信过程可以使用中断方式或查询方式控制接收器和发送器的工作; 发送器和接收器有独立的中断使能位(TX INT ENA、RX/BK INT、RX ERR INT ENA). 当中断被屏蔽时,但标志位仍然有效,可以反映发送和接收状态; 发送器有一个SCITXBUF空标志(TXRDY=1),接收器有3个中断标志:
1)置RXENA=1(SCICTL1.D0),使能接收器接收器数据; 2)数据到达SCIRXD引脚后,检测起始位(SCI自动实现); 3)数据从RXSHF寄存器移位到接收缓冲寄存器(SCIRXBUF),
产生一个中断请求,同时接收器数据准备好标志RXRDY=1; 4)用户程序读取SCIRXBUF寄存器,标志位RXRDY自动清零; 5)数据的下一个字节到达SCIRXD引脚,检测到起始位; 6)RXENA=0,禁止接受数据。继续向RXSHF装载数据,但不送入SCIRXBUF。
同步通信:发送器和接收器通常使用同一时钟源来同步。方法是在发送器 发送数据时同时包含了时钟信号,接收器利用该时钟信号进行接收。
异步通信:收发双方的时钟不是同一个时钟,是由双方各自的时钟实现数 据的发送和接收。但要求双方使用同一标称频率,允许有一定偏差。 同步方法:要正确传输字符,准确读取每一位是必须用各自的时钟同步的, 为克服不同时钟的偏差,每个字符都有一个起始位进行同步。
13
SCI的中断(续)
2、接收器/间断中断:
如果置位RX/BK INT ENA (SCICTL2.1), 则下列条件之一产生接收器中断: 1)SCI接收到一个完整的帧,并将RXSHF中的数据送SCIRXBUF,就会产生 接收器中断,同时将RXRDY置位(SCICTL2.6); 2)间断检测条件发生(在一个缺少的停止位后,SCIRX保持10周期的低电 平)。该操作将BRKDT置位,并产生中断。
6.1 计算机通信概述 6.2 SCI串行通信接口 6.3 标准串行通信总线 6.4 SCI编程举例
2
6.1 计算机通信概述
计算机间或计算机与外部设备间交换信息,称为计算机通信。
计算机通信方式:1)串行通信;2)并行通信。
并行通信:一般包括8条数据线,几条控制线和状态线。特点 是传输速度快,但通信距离短、传输线多。 例如XINTF、并行打印机接口、仪器仪表用IEEE 488总线等。
19
地址位多处理器模式 地址位多处理器协议中,每帧的最后一个数据位后有一个附加的地址位;
数据块的第一帧的地址位设置为1,其余帧的地址位为0; 数据传输与数据块间的空闲周期无关。
ADDR/IDLE MODE=1
20
地址位多处理器模式 TXWAKE=1发送地址 TXWAKE=0发送数据
数据块发送:
一条串行线上每刻只能有一个节点发送数据(发送使能控 制),但可以多个节点同时接受数据。 1、地址字节
发送节点发送信息的第一个字节是地址字节(各个从机的地址预先定义 好),所有接受节点都读取该地址字节。只有地址字节与接受节点的地址 字相符,才能接受数据,否则等待下一个地址字节。
2、Sleep位 (接收器休眠位)
相关文档
最新文档