串行通信接口模块(SCI)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.4串行通信接口中断
串行通信接口的接收器和发送器可由中断来控制, 标志位TXRDY用来指示发送中断条件,
标志位RXRDY和RBKDT用来指示接收中断条件
电气工程学院
Electrical Engineering Institute of NEDU
一条串行线上某一时刻只能进行一次传送
地址字节:发送机发送数据块,首先发送一个地址字节, 它被所有的接收机读取,仅地址相符的接收机才接收 地址字节后面的数据. SLEEP位:所有处理器将各自的SLEEP位置成1,在 监测到地址字节时产生中断。当处理器读取到的地址 与应用软件设置的本处理器地址相符时,用户须清除 SLEEP位来确保收到每个数据字节时产生中断。
5. 如RXENA为零,接收器被禁止,数据继续保持在 RXSHF中,没有移入到SCIRXBUF中
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式 通信模式中的发送器信号
电气工程学院
Electrical Engineering Institute of NEDU
第十二章 串行通信接口模块(SCI) Serial Communication Interface
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.1串行通信接口概述
SCI模块支持异步通信; SCI接收器和发送器是双缓冲的,各自有独立 的使能位和中断标志位。可以独立工作,或全 双工方式工作; SCI对接收到的数据进行间断检测,奇偶校验, 越限和帧出错的检查; 数据传输速度可编程为65535种方式;
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信 地址位多处理器模式(ADDR/IDLE MODE=1)
帧格式中有一个附加位,叫地址位,紧跟 在数据位之后,在数据块的第一帧中附加位被 置成1,在其他帧中被置成0,通信格式如下:
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
电气工程学院
Electrical Engineering Institute of NEDU
2Hale Waihona Puke Baidu13年3月21日星期四
12.2.2 SCI的多处理器通信 空闲线模式接收步骤如下:
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式
每个数据位占用8个SCICLK周期,有效的启 始位由4个连续的内部SCICLK周期的0位识别出来。 对于启始位后的位,处理器对中间位采样3次来决 定其位值,这些采样点出现在 第4、5、6个 SCICLK周期,位值取决于多数(三分之二以上)。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
12.2.2 SCI的多处理器通信 地址位模式下发送地址步骤:
1. 置TXWAKE为1并将地址写入SCITXBUF,当 SCITXBUF内容送到TXSHF移出时, TXWAKE内容送WUT作为地址位移出; 2. 因为TXSHF和WUT是双缓冲的,因此 TXWAKE 和SCITXBUF可在装入TXSHF和 WUT后,立即装入新值; 3. 发送数据帧时,应将TXWAKE 清零。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
在两种多处理器模式中,接收步骤如下:
接收地址块时,在RX / BK INT ENA位使能条件 下,串行通信接口唤醒并请求中断,读取地址帧。 在中断服务程序中校对地址。
八位外设接口。
电气工程学院
2013年3月21日星期四
Electrical Engineering Institute of NEDU
12.1串行通信接口概述 SCI模块的特性包括: 两个外部引脚 SCIRXD、SCITXD 一个16位的波特率选择寄存器,可编程为64K种 波特率 帧格式:一位启始位,1~8数据位,可选的奇偶校验位, 一位或两位停止位 4种错误检测标志:奇偶错,越限,帧出错,间断检测 两种多处理器唤醒方式:空闲线或地址位唤醒 半双工或全双工操作
如果地址相符,则CPU就清除SLEEP位并读取块 中的剩余的数据;否则,SLEEP位依旧置位,直 到下一个地址块开始才接收并产生中断。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
1.空闲线多处理器模式(ADDR/IDLE MODE=0) 数据块被块间的时间间隔分开,该时间间隔 比块中的数据帧之间的时间间隔要长,一帧后的 空闲时间(10个或更多个高电平位)表明了一个 新块的开始。如下页图所示:
接收到块启动信号后SCI唤醒; 处理器识别出下一个SCI中断; 在中断服务程序中校对地址; 如果该地址与本控制器的地址相符,则CPU就 清除SLEEP位并读取块中的剩余的数据; 否则,SLEEP位依旧置位,直到下一个地址块的 开始才接收中断。
电气工程学院
Electrical Engineering Institute of NEDU
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式 例如:地址位唤醒模式,每个字符6位
1. 设置RXENA位为1来使能接收器接收数据;
2. 数据到达SCIRXD引脚后,检测到启始位; 3. 数据从RXSHF移到SCIRXBUF中,标志RXRDY 置1表示已收到一个新字符,产生中断请求标志; 4. 读SCIRXBUF时,标志位RXRDY自动被清除;
RXD
TXD
RXD
从机1
从机n
2013年3月21日星期四
12.2.1串行通信接口可编程的数据格式 串行通信接口的NRZ数据格式包括: 一个起始位; 1~8个数据位; 一个奇/偶校验位 或 无奇/偶校验位; 1~2个停止位; 一个用于区分数据和地址的额外位。
12.2.2 SCI的多处理器通信
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
地址字节的识别 空闲线模式在地址字节前留有一定长度的 空闲空间, 这种模式对于大数据块传输更有效。 地址位模式在每帧中加入额外地址/数据位, 这种模式对于小数据块传输更有效。
2013年3月21日星期四
12.2.3 SCI通信格式
例如:地址位唤醒模式,每个字符3位 1. 设置TXENA位为1使能发送器发送数据; 2. SCITXBUF被写入,TXRDY变低; 3. SCITXBUF 数 据 传 到 TXSHF , 发 送 器 准 备 第 2 个 字 符 (TXRDY变高),并发出中断请求(TX INT ENA位允许); 4. 程序将第2个字符传到SCITXBUF,写入后TXRDY又变 低 ,TX EMPTY清零,发送完第1个字符后,TX EMPTY 位置1 。第2个字符传到TXSHF操作开始; 5. 如TXENA位为低,发送器被禁止,SCI结束发送。 6. 发送完第2 个字符后,发送器变空并准备发送新字符。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.1串行通信接口概述 1. 2. 双缓冲的接收和发送功能; 发送和接收操作可利用状态位查询或中断完成; 发送器:TXRDY标志(发送缓冲器准备接收另一个 来自CPU的字符),TX EMPTY标志位(发送移位寄 存器空) 接收器:RXRDY(接收缓冲器准备接收另一字符), BRKDT(间断条件出现),RX ERROR(监视4个中 断条件 (FE.OE.PE.BRKDT) 不返回零格式;
电气工程学院
2.
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
唤醒暂存标志位 Wake-UP Temporary (WUT) Flag WUT是一个内部标志,与TXWAKE构成双缓冲。 TXSHF与SCITXBUF构成双缓冲,当SCITXBUF 向TXSHF装载数据时, TXWAKE值传送给WUT,然后 TXWAKE自动清零。
2013年3月21日星期四
12.2.2 SCI的多处理器通信
空闲线模式下有两种方法可传送块的开始信号
1.
在前一块的最后一帧的数据传送与新块的地址 帧传送之间留出10位或更多位的空闲时间。 首 先 将 发 送 唤 醒 位 TXWAKE 置 1 , 然 后 再 向 SCITXBUF写入任意一个数据,这样可以在数 据线上产生11位的空闲时间。
2013年3月21日星期四
12.2.5串行通信接口波特率计算 BRR=1到65535时波特率为: SCI波特率=SYSCLK/[(BRR+1)*8] BRR=0时: SCI波特率=SYSCLK/16 例如:已知SYSCLK=24MHz,所需波特率为 9600bps,进行RS-232通信,试确定波特 率寄存器的值BRR BRR=24000000/(9600*8)–1=311.5 取138H 所以波特率选择寄存器设置为 SCIHBUAD=01H,SCILBAUD=38H
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2多处理器异步通信模式 两个多处理器通信协议: 空闲线模式 和 地址位模式 提供了通用异步接收/发送(UART)通信接口
主 机
TXD RXD
TXD
电气工程学院
Electrical Engineering Institute of NEDU
电气工程学院
Electrical Engineering Institute of NEDU
3. 4.
5.
2013年3月21日星期四
12.1串行通信接口概述 全双工模式下SCI的主要部件
1.
2. 3. 4.
一个发送器(TX)及和它相关的主要寄存器; 一个接收器(RX)及和它相关的主要寄存器; 一个可编程的波特率发生器; 控制和状态寄存器。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
空闲线模式下发送一个块起始信号步骤 1. 设置发送唤醒位TXWAKE为1;
2. 将一个数据字(内容不重要)写到SCITXBUF寄存器 来作为传送一个块的开始信号;当TXSHF寄存器再次 空闲时,SCITXBUF寄存器的内容被传送到TXSHF寄 存器中, TXWAKE被移位到WUT,而后TXWAKE位被清 0。因为WUT为1,则启始位、数据位和奇偶位被11 位空闲周期所取代; 3. 将新的地址写入SCITXBUF寄存器。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式
通信模式中的接收器信号
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.4串行通信接口中断
串行通信接口的接收器和发送器可由中断来控制, 标志位TXRDY用来指示发送中断条件,
标志位RXRDY和RBKDT用来指示接收中断条件
电气工程学院
Electrical Engineering Institute of NEDU
一条串行线上某一时刻只能进行一次传送
地址字节:发送机发送数据块,首先发送一个地址字节, 它被所有的接收机读取,仅地址相符的接收机才接收 地址字节后面的数据. SLEEP位:所有处理器将各自的SLEEP位置成1,在 监测到地址字节时产生中断。当处理器读取到的地址 与应用软件设置的本处理器地址相符时,用户须清除 SLEEP位来确保收到每个数据字节时产生中断。
5. 如RXENA为零,接收器被禁止,数据继续保持在 RXSHF中,没有移入到SCIRXBUF中
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式 通信模式中的发送器信号
电气工程学院
Electrical Engineering Institute of NEDU
第十二章 串行通信接口模块(SCI) Serial Communication Interface
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.1串行通信接口概述
SCI模块支持异步通信; SCI接收器和发送器是双缓冲的,各自有独立 的使能位和中断标志位。可以独立工作,或全 双工方式工作; SCI对接收到的数据进行间断检测,奇偶校验, 越限和帧出错的检查; 数据传输速度可编程为65535种方式;
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信 地址位多处理器模式(ADDR/IDLE MODE=1)
帧格式中有一个附加位,叫地址位,紧跟 在数据位之后,在数据块的第一帧中附加位被 置成1,在其他帧中被置成0,通信格式如下:
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
电气工程学院
Electrical Engineering Institute of NEDU
2Hale Waihona Puke Baidu13年3月21日星期四
12.2.2 SCI的多处理器通信 空闲线模式接收步骤如下:
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式
每个数据位占用8个SCICLK周期,有效的启 始位由4个连续的内部SCICLK周期的0位识别出来。 对于启始位后的位,处理器对中间位采样3次来决 定其位值,这些采样点出现在 第4、5、6个 SCICLK周期,位值取决于多数(三分之二以上)。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
12.2.2 SCI的多处理器通信 地址位模式下发送地址步骤:
1. 置TXWAKE为1并将地址写入SCITXBUF,当 SCITXBUF内容送到TXSHF移出时, TXWAKE内容送WUT作为地址位移出; 2. 因为TXSHF和WUT是双缓冲的,因此 TXWAKE 和SCITXBUF可在装入TXSHF和 WUT后,立即装入新值; 3. 发送数据帧时,应将TXWAKE 清零。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
在两种多处理器模式中,接收步骤如下:
接收地址块时,在RX / BK INT ENA位使能条件 下,串行通信接口唤醒并请求中断,读取地址帧。 在中断服务程序中校对地址。
八位外设接口。
电气工程学院
2013年3月21日星期四
Electrical Engineering Institute of NEDU
12.1串行通信接口概述 SCI模块的特性包括: 两个外部引脚 SCIRXD、SCITXD 一个16位的波特率选择寄存器,可编程为64K种 波特率 帧格式:一位启始位,1~8数据位,可选的奇偶校验位, 一位或两位停止位 4种错误检测标志:奇偶错,越限,帧出错,间断检测 两种多处理器唤醒方式:空闲线或地址位唤醒 半双工或全双工操作
如果地址相符,则CPU就清除SLEEP位并读取块 中的剩余的数据;否则,SLEEP位依旧置位,直 到下一个地址块开始才接收并产生中断。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
1.空闲线多处理器模式(ADDR/IDLE MODE=0) 数据块被块间的时间间隔分开,该时间间隔 比块中的数据帧之间的时间间隔要长,一帧后的 空闲时间(10个或更多个高电平位)表明了一个 新块的开始。如下页图所示:
接收到块启动信号后SCI唤醒; 处理器识别出下一个SCI中断; 在中断服务程序中校对地址; 如果该地址与本控制器的地址相符,则CPU就 清除SLEEP位并读取块中的剩余的数据; 否则,SLEEP位依旧置位,直到下一个地址块的 开始才接收中断。
电气工程学院
Electrical Engineering Institute of NEDU
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式 例如:地址位唤醒模式,每个字符6位
1. 设置RXENA位为1来使能接收器接收数据;
2. 数据到达SCIRXD引脚后,检测到启始位; 3. 数据从RXSHF移到SCIRXBUF中,标志RXRDY 置1表示已收到一个新字符,产生中断请求标志; 4. 读SCIRXBUF时,标志位RXRDY自动被清除;
RXD
TXD
RXD
从机1
从机n
2013年3月21日星期四
12.2.1串行通信接口可编程的数据格式 串行通信接口的NRZ数据格式包括: 一个起始位; 1~8个数据位; 一个奇/偶校验位 或 无奇/偶校验位; 1~2个停止位; 一个用于区分数据和地址的额外位。
12.2.2 SCI的多处理器通信
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
地址字节的识别 空闲线模式在地址字节前留有一定长度的 空闲空间, 这种模式对于大数据块传输更有效。 地址位模式在每帧中加入额外地址/数据位, 这种模式对于小数据块传输更有效。
2013年3月21日星期四
12.2.3 SCI通信格式
例如:地址位唤醒模式,每个字符3位 1. 设置TXENA位为1使能发送器发送数据; 2. SCITXBUF被写入,TXRDY变低; 3. SCITXBUF 数 据 传 到 TXSHF , 发 送 器 准 备 第 2 个 字 符 (TXRDY变高),并发出中断请求(TX INT ENA位允许); 4. 程序将第2个字符传到SCITXBUF,写入后TXRDY又变 低 ,TX EMPTY清零,发送完第1个字符后,TX EMPTY 位置1 。第2个字符传到TXSHF操作开始; 5. 如TXENA位为低,发送器被禁止,SCI结束发送。 6. 发送完第2 个字符后,发送器变空并准备发送新字符。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.1串行通信接口概述 1. 2. 双缓冲的接收和发送功能; 发送和接收操作可利用状态位查询或中断完成; 发送器:TXRDY标志(发送缓冲器准备接收另一个 来自CPU的字符),TX EMPTY标志位(发送移位寄 存器空) 接收器:RXRDY(接收缓冲器准备接收另一字符), BRKDT(间断条件出现),RX ERROR(监视4个中 断条件 (FE.OE.PE.BRKDT) 不返回零格式;
电气工程学院
2.
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
唤醒暂存标志位 Wake-UP Temporary (WUT) Flag WUT是一个内部标志,与TXWAKE构成双缓冲。 TXSHF与SCITXBUF构成双缓冲,当SCITXBUF 向TXSHF装载数据时, TXWAKE值传送给WUT,然后 TXWAKE自动清零。
2013年3月21日星期四
12.2.2 SCI的多处理器通信
空闲线模式下有两种方法可传送块的开始信号
1.
在前一块的最后一帧的数据传送与新块的地址 帧传送之间留出10位或更多位的空闲时间。 首 先 将 发 送 唤 醒 位 TXWAKE 置 1 , 然 后 再 向 SCITXBUF写入任意一个数据,这样可以在数 据线上产生11位的空闲时间。
2013年3月21日星期四
12.2.5串行通信接口波特率计算 BRR=1到65535时波特率为: SCI波特率=SYSCLK/[(BRR+1)*8] BRR=0时: SCI波特率=SYSCLK/16 例如:已知SYSCLK=24MHz,所需波特率为 9600bps,进行RS-232通信,试确定波特 率寄存器的值BRR BRR=24000000/(9600*8)–1=311.5 取138H 所以波特率选择寄存器设置为 SCIHBUAD=01H,SCILBAUD=38H
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2多处理器异步通信模式 两个多处理器通信协议: 空闲线模式 和 地址位模式 提供了通用异步接收/发送(UART)通信接口
主 机
TXD RXD
TXD
电气工程学院
Electrical Engineering Institute of NEDU
电气工程学院
Electrical Engineering Institute of NEDU
3. 4.
5.
2013年3月21日星期四
12.1串行通信接口概述 全双工模式下SCI的主要部件
1.
2. 3. 4.
一个发送器(TX)及和它相关的主要寄存器; 一个接收器(RX)及和它相关的主要寄存器; 一个可编程的波特率发生器; 控制和状态寄存器。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.2 SCI的多处理器通信
空闲线模式下发送一个块起始信号步骤 1. 设置发送唤醒位TXWAKE为1;
2. 将一个数据字(内容不重要)写到SCITXBUF寄存器 来作为传送一个块的开始信号;当TXSHF寄存器再次 空闲时,SCITXBUF寄存器的内容被传送到TXSHF寄 存器中, TXWAKE被移位到WUT,而后TXWAKE位被清 0。因为WUT为1,则启始位、数据位和奇偶位被11 位空闲周期所取代; 3. 将新的地址写入SCITXBUF寄存器。
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四
12.2.3 SCI通信格式
通信模式中的接收器信号
电气工程学院
Electrical Engineering Institute of NEDU
2013年3月21日星期四