英飞凌tricore用户手册_第18章_同步串行口SSC_第1页
英飞凌tricore用户手册_第18章_同步串行口SSC_第2页
英飞凌tricore用户手册_第18章_同步串行口SSC_第3页
英飞凌tricore用户手册_第18章_同步串行口SSC_第4页
英飞凌tricore用户手册_第18章_同步串行口SSC_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、TC1728同步串行接口 (SSC)用户手册SSC, V1.41 2010-0618-1V1.0, 2011-12TC1728同步串行接口 (SSC)端口 MRST18 同步串行接口 (SSC)本章描述TC1728的四个高速同步串行接口 SSC0, SSC1, SSC2和SSC3。包括以下 内容:? SSC内核功能描述,适用于 SSC0,SSC1,SSC2和SSC3模块(见页18-1)? SSC内核寄存器描述,描述所有SSC内核专用寄存器(见页18-27)?TC1728中SSC模块具体实现及 SSC0/SSC1/SSC2模块寄存器(端口连接和控制、中断控制、地址译码、时钟控制,(见 页18-4

2、3)注:章节18.2中给岀的SSC内核寄存器在TC1728用户手册其它章节引用时,需 要分别添加模块名前缀 SSCO_' ,SSC1_”和SSC2_”。18.1 SSC内核描述图18-1为SSC接口框图* SCLK*-SLSI7:1 SLSO7:03LSOANDO(7:0|图18-1 SSC接口基本框图同步串行接口 (SSC)18.1.1概述SSC支持波特率高达 55.0 Mbit/s 的全双工和半双工串行同步通信( 110.0 MHz模块 时钟,主模式)。串行时钟信号由SSC模块自身产生(主模式),或从外部主机接收(从模式)。数据宽度、移位方向、时钟极性和相位均可编程设定,从而支持与

3、SPI兼容器件通信。数据发送和接收双缓存。移位时钟产生器为SSC提供独立的串行时钟信号。从模式操作具有7个从机选择输入。主模式支持8个可编程从机选择输出(片选)。特性:? 主模式和从模式操作- 全双工或半双工工作- 可进行自动引岀端控制?灵活的数据格式- 数据位个数可编程:2至16位(奇偶性使能:1至15数据位)- 移位方向可编程:LSB或MSB在先- 时钟极性可编程:移位时钟低电平空闲或高电平空闲- 时钟/数据相位可编程:在移位时钟的前沿或后沿进行数据移位?波特率产生:- 主模式:55.0 Mbit/s至U839.3bit/s(110 MHz 模块时钟)- 从模式:27.0 Mbit/s至U

4、839.3bit/s(110 MHz 模块时钟)? 中断产生发送缓存寄存器已空的情况接收缓存寄存器已满的情况岀错情况(接收、相位、波特率、发送错误,奇偶性错误) 排队SSC模式支持通过 DMA控制器的控制和数据处理 灵活的SSC引脚配置硬件支持奇偶性模式 -可独立选择传送和接收帧数-奇偶性选择?从模式下,7个从机选择输入 SLSI7:1?主模式下,8个可编程从机选择输出SLSO7:0- 自动产生SLSO时序可编程设置- 有效电平和使能控制可编程- 与其他SSC模块的SLSO输出信号组合18.1.2 一般操作SSC支持高达55.0 Mbit/s的全双工和半双工串行同步通信(10.0 MHz模块时

5、钟)。串行时钟信号由SSC模块自身产生(主模式),或从外部主机接收(从模式)。数据宽度、移位方 向、时钟极性和相位均可编程设定,从而支持与SPI兼容器件通信。数据发送和接收双缓存。移位时钟产生器为 SSC提供独立的串行时钟信号。用户可灵活设置高速同步串行接口:用于和其它同步串行接口通信;用于主机/从机或多主机通信;或者与主流的SPI接口兼容工作。SSC还可和移位寄存器(I/O扩展)、外设(如EEPROM 等)或其它控制器(网络)进行通信。SSC支持全双工和半双工通信。通过引脚 MTSR(主机发送/从机接收)和MRST(主机接收/从机发送)发送或接收数据。通过引脚 SCLK(串行时钟)输岀或输入

6、时钟信号。这 3个引脚通常具有端口引脚的复用输岀功能。如果 这3个引脚为专用双向引脚,则可直接由SSC控制。从模式下,主机通过专用从机输入线(SLSI)选中SSC模块。主模式下,可自动产生从机选择输出线(SLSO)。主模式下,转移的控制和数据处理也能被 DMA空制器(排队SSC模式)独立的控制。用户手册SSC, V1.41 2010-0618-3V1.0, 2011-12TC1728时®巾控11Fest移位时钟SSC拎制榄垠(商从机选择存誰产生输出CON/STA.T/EFM)单元TIREIRSLSO(7:q 1<=SLSOANDq7:0 1<=SLSOANDl7:q 11

7、:M/S送择RIR SSC罔用f接收中斷请求发送申斷请求'錯误中斷请求控制引卿控制逻殍SLSI7:1 -MTSRA -MTSR0 * MRSTMRSTA" -MRSTB11 MTSR15 -SCLKASCLKB SCLK °发送缓#奇佯器TB惯收缓存寄存器 尺已I内邮池线=f常隅性检査侪腥性产主MCB062143 mod图18-2 同步串行通道 SSC框图用户手册SSC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)STAT给出SSC状态信息18.121 工作模式选择由控制寄存器CON选择SSC模块工作模式。由状态

8、寄存器SSC移位寄存器通过引脚控制逻辑与发送引脚和接收引脚相连(见图18-2)。串行数据的发送和接收同步,且同时进行,即发送位数等于接收位数。发送数据写入到发送缓存TB 一旦移位寄存器为空,数据立即被转移至移位寄存器,包括传送奇偶性模式使能的情况下传送数 据产生的奇偶性位(CON.PARTEN= 1)。这时,SSC主机(CON.MS = 1)立即开始发送,SSC从 机(CON.MS= 0)则要等待有效移位时钟。开始传送时,忙碌标志STAT.BSY置位,激活发送中断请求线仃IR)指示发送缓存寄存器 仃B)可被重载。当已定个数(在CON.BM 中编程设定)的数据 位被接收之后,移位寄存器的数据位被

9、转移至接收缓存寄存器(RB)右对齐,接收奇偶位(如果被CON.PARREN 1使能)被装载到 STAT.PARRVAL接收中断请求线(RIR)被激活。如果不需要 继续传送数据仃B为空),STAT.BSY将同时被清零。软件不能修改STAT.BSY因为该标志只能由硬件控制。注:给定时间内只有一个SSC模块可作为主机。串行数据位传送操作的下列特性可编程设定:? 数据宽度:2至16位(奇偶性使能:1至15数据位) ? 移位方向:最低有效位 (LSB)或最高有效位(MSB)在先 ? 移位时钟极性:低电平空闲或高电平空闲?时钟/数据相位:在移位时钟信号的前沿或后沿进行数据移位? 波特率(移位时钟):839

10、.3 bit/s 至U 55.0 Mbit/s( 110 MHz模块时钟)? 可产生(主机)或接收(从机)移位时钟SSC的这些特性使得 SSC可满足各种串行数据传送应用的需要。数据宽度选择支持从2位字符”至16位字符”任何数据宽度的帧传送。如果奇偶性使能, 数据位最大的帧数为 15位。LSB在先(CON.HB = 0)的串行数据位传送设置使得SSC可与同步模式下的 SSC器件通信,或与8051式串行接口通信(页18-12),如果奇偶性使能,奇偶位先于串行数据位传送。MSB在先的设置(CON.HB = 1)使得SSC可与SPI接口操作兼容。如果使能奇偶性模式, 奇偶性位随着串行数据位传送( 页1

11、8-12),如果奇偶性使能,奇偶位落后于串行数据位的传 送。寄存器TB和RB中的传送数据始终右对齐,传送数据的LSB始终位于寄存器的位0,和选定的数据宽度以及先传送 LSB还是MSB均无关。内部移位寄存器逻辑会重排 传送数据。TB中未选中的位不予考虑,RB中未选中的位无效并被接收中断服务程序忽 略。时钟控制使SSC的发送和接收适用于各种不同串行接口。在特定时钟沿 (上升或 下降沿)移出发送数据;同时用另一个时钟沿锁存接收数据。位CON.PH选择在时钟前沿或后沿移位数据;位 CON.PO选择移位时钟线空闲状态电平。因此,对于高电平空闲 的时钟,时钟的前沿是下降沿,1到0的跳变(见图18-3)。1

12、)如果CON.PH=1,在从模式中,MRST上的首位被 PISEL.STIF替代MCT06215_mod图18-3 串行时钟SCLK相位和极性选择18.1.2.2 全双工操作本节描述中假设SSC使用软件控制双向GPIO端口线,具有漏极开路特性(参见章节 18.1.2.6)。SSC通过三条线与各种器件相连。始终由主机来定义这三条线:和主机的数据输岀引 脚MTSR相连的为发送线;和主机的数据输入引脚MRST相连的为接收线;移位时钟线连接至引脚SCLK。用户手册SSC, V1.41 2010-0618-5V1.0, 2011-12TC1728只有被选作主机的器件产生并从SCLK线上输岀移位时钟。由于

13、所有的从机接收该时钟,它们的SCLK引脚必须切换至输入模式。主机移位寄存器的输岀和外部发送线相连,同 时该外部发送线依次和众多从机的移位寄存器的输入相连。从机移位寄存器的输岀和外部接 收线相连,从而可使主机接收从机移岀的数据。外部连接是硬件连线,这些引脚的功能和方 向由各器件的主机操作或从机操作决定。注:图18-4所示的移位方向适用于 MSB在先和LSB在先的操作。在该设置下初始化器件,必须设定一个器件工作在主模式、所有其它器件工作在从模 式。初始化包括SSC的工作模式选择以及对应端口线的功能定义。图18-4 SSC全双工设置在该配置下,所有从机器件的数据输岀引脚MRST都连接到接收线上。数据

14、传送期间,每个从机从其移位寄存器中移出数据。有以下两种方式可避免不同从机同时向接收线发送数 据时导致的传送冲突:同步串行接口 (SSC)?只有一个从机驱动接收线 且使能该从机的 MRST引脚的驱动器。必须将所有其它从机 的MRST引脚设置为输入。从而只有一个从机可将数据发送到主机的接收线上。只能接收来自主机的数据。主机通过两种方式选择期望发送数据的从机器件:通过独立的选择 线、或向该从机发送特殊命令。被选中从机的MRST引脚切换为输岀,并始终保持输岀状态直到接收到取消信号或命令。?从机的MRST引脚采用漏极开路输岀,形成线与连接。这种情况下接收线需要一个外 部上拉器件。所有未被选中的从机只发送

15、“1”,从而避免了(被选中的从机发送到)接收线上的数据遭破坏。由于高电平不能被有效的驱动到接收线上,而只能由上拉器件保 存,被选中发送数据的从机在发送“0”时可有效的将接收线拉至低电平。主机通过两种方式选择期望发送数据的从机器件:通过独立的选择线、或向该从机发送特殊命令。完成必要的SSC初始化之后,串行接口被使能。对于主机器件,时钟线电平为所设定 的时钟极性。第一次传送开始之前,数据线为0或1。每次传送结束后,数据线将始终保持发送的最后一位数据的逻辑电平。若串行接口被使能,发送数据写入寄存器TB后,主机器件可启动首次数据传送。该发送数据被复制到移位寄存器中(假设此时移位寄存器为空),在下一个时

16、钟(由波特率发生器产生)发送数据的首位被 送到输出线 MTSR上(仅当CON.EN = 1时,才能开始 发 送)。根据选择的时钟相位,在SCLK线上产生时钟脉冲。同时,在相反的时钟沿,主机位寄存器同冲之后(由数中从机发送的数容被复制到接收缓将输入线MRST上检测到的数据位锁存并移入移位寄存器。从而发送数据和接收数据进行 了 “交换”。因为时钟线和所有从机相连,从机的移位寄存器将和主机的移 步:移岀寄存器中的数据,移入输入线上检测到的数据。设定数目的时钟脉 据宽度选择),主机发送的数据被保存到所有从机的移位寄存器中;而选 据被保存到主机的移位寄存器中。主机和所有从机中,移位寄存器的内 存(RB)

17、中,接收中断线 RIR被激活当发送缓存寄存器的内容被复制到从机的移位寄存器中,从机器件会立刻将选中的首 位数据(传送数据的 MSB或LSB)送到引脚 MRST上。直到SCLK上出现首个时钟沿,位STAT.BSY才被置位。从机器件无需等待下一个时钟脉冲(由波特率发生器产生),这 点与主机器件不同。原因在于:根据所选择的时钟相位,主机产生的首个时钟沿有可能用 于锁存首位数据,因此从机的首位数据此刻必须已经有效。同步串行接口 (SSC)注:无论是否已发送或接收有效数据,SSC的发送和接收操作总是同时发生。18.1.2.3 半双工操作本节中假设SSC使用软件控制双向 GPIO端口线,具有漏极开路特性(

18、参见章节18.1.2.6)。半双工配置仅需要一条数据线,负责接收和发送数据。该数据交换线与每个器件的 MTSR和MRST引脚相连,时钟线和 SCLK引脚相连。主机器件产生移位时钟以控制数据的传送,而从机器件接收移位时钟。由于所有发送 和接收引脚都连接到同一条数据交换线上,可在任意两个器件之间传送串行数据。和全双工模式相似,使用以下两种方式可避免数据冲突:?只有发送器件使能其发送引脚驱动器?不发送数据的器件采用漏极开路输岀,并且只发送“ 1”由于数据输入和输出相连,发送器件可从输入引脚 (主机 MRST引脚,从机MTSR引 脚) 读回自身发送的数据。若接收数据和发送数据不一致,通过这种方法可以检

19、测岀公共数据交换线上的数据已遭到破坏 。用户手册SSC, V1.41 2010-0618-9V1.0, 2011-12TC1728用户手册SSC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)主机器件nr->MTSR MRSTIi时钟.CLKi 时 1 fli、4器件#2从机移位寄存器1cL-Cs omrstI / CLKJ时钟公口发送/一 |1缗件#3丿g机pCMTSRITHikMR ST小>-<厂CLKf时钟iMCAJM21F图18-5 SSC半双工设置18.1.2.4 连续传送当发送中断请求标志被置位,指示发送缓存(T

20、B)已空并准备好可以加载下一个发送数据。如果当前发送结束时TB已经被重载,新数据立刻被传送到移位寄存器中,无任何附加延迟,立即开始发送该数据(根据所选择 SLSO时序)。如果不选择延迟,数据线上 连续两帧之间没有时隙。例如,两次传送字节数据的操作看上去和传送一个字数据相同。 使用该特性,SSC可和传送数据宽度为16位或多于16位的器件通信,只需软件规定数据 帧总长度即可。该特性可用于例如使字节宽器件与字宽器件共用一个串行接口。注:由于在数据传送过程中重新设定基本数据宽度必须禁止/使能 SSC因此,连续传送的数据宽度只能为基本数据宽度的整数倍。用户手册SSC, V1.41 2010-0618-1

21、1V1.0, 2011-12TC1728同步串行接口 (SSC)注:主模式下,当前传送结束时,可向发送缓存TB加载新数据。当选择前沿延迟> 0(SSOTC.LEAD不等于 OOH),后续发送操作的前沿延迟(< 1个SCLK移位时钟周期)被轻微拉长。18.1.2.5奇偶校验模式SSC允许增加一个奇偶校验位到一个串行帧中。对于帧传送(CON.PARTEN)和帧接收(CON.PARREN),可以独立使能奇偶校验模式。可以选择校验的类型 (奇校验 /偶校 验),可用于传送和接收奇偶性。如果使能传送奇偶校验(CON.PARTEN = 1),则通过传送缓存 TB的值,装载移位寄 存器来进行一个

22、帧的传送。奇偶校验位被计算出来并存储在STAT.PARTVAL中。根据位CON.HB,奇偶校验位可选择前置于传送数据位或后置于传送数据位。如果使能接收奇偶校验(CON.PARREN = 1)并且接收帧的末位,则帧接收数据存储 在RB中,接收奇偶校验位存储在STAT.PARRVAL中。接收和计算的奇偶校验位此时要进行比较。如果该比较失败,则检测岀一个奇偶性错误并把错误状态标志 STAT.PARE 置位。如果通过位CON.PAREEN 使能,奇偶性错误激活错误中断请求线。图18-6显示一个奇偶校验位如何加入到帧的传送数据位。假设COM.BM没有改变,不管有没有奇偶校验,一个完整帧的传送位数保持不变

23、。因此当奇偶校验模式使能时,通 过一个位可减少传送位数。如果起始控制位 CON.HB=0(LSB优先),奇偶校验位在奇偶校验模式中前置于数据 位,从而作为帧的首位来发送。如果起始控制位CON.HB=1(MSB 优先),奇偶校验位在奇偶校验模式中后置于数据位,并作为帧的末位来发送。用户手册SSC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)1I Bit1 BMBitBM- 11BitBit2Bit01ij(BM+1)位MSB优先数据帧(CON.HB = 1)奇偶校验模 式禁用LSB优先数据帧(CON.HB =0)奇偶校验模 式禁用式偶校验模时

24、间 Bit Bit、Bit "faBitBit、Parity BM-11BM- 2121110 |Bit l奇偶校验模式 使能(BM+1)位*时间位数X(X=0,1,2,,BM1, BM)在传送事件中指的是寄存器位TB.X,在接收事 件中指的是寄存器位 RB.x。BM是CONBM的位域值。图18-6 数据帧无/有奇偶校验18.1.2.6 端口控制SSC使用三条线与外部世界通信:引脚SCLK作为时钟线、引脚 MRST(主机接收/从机发送)和MTSR(主机发送/从机接收)作为串行数据输入/输出线。如图18-1所示,这3 条线(输入SCLK、主机接收、从机接收)和每个 SSC模块内核的两个

25、输入相连。寄存器 PISEL中的3位决定和哪个内核输入(A或B)相连。该特性允许每条 SSC通信线和来自 不同端口引脚的两个输入相连。由所选择的工作模式决定(主模式或从模式)SSC I/O线操作。工作模式还决定端口线方向。切换工作模式时,SSC自动使用正确的端口内核输岀或输入线。硬件或软件可控制分配给SSC I/O线的端口引脚。当SSC I/O线与专用引脚相连时,通常应当使用硬件I/O控制。在此情况下,两个输出引脚直接反映 CON.EN和CON.MS位状态(M/S选择线与CON.MS位定义相反)。当SSC I/O线与通用I/O端口双向线相连时,通常使用软件 I/O控制。在此情况下, 端口寄存器

26、必须设置为复用输岀和输入选择。在主模式和从模式之间切换时,必须重新设 置端口寄存器。使用端口线漏极开路输岀特性可避免总线竞争问题,减少对硬件连线握手信号或从机 选择线的需求。漏极开路输岀模式下,不需要总是切换端口引脚的方向。注意在硬件控制 I/O模式下,由所使用的专用输岀引脚类型决定是否可使用漏极开路输岀特性。SSC模块本身不提供任何漏极开路控制功能。注:SSC端口连接和配置的详细信息,见 页18-53。用户手册SSC, V1.41 2010-0618-13V1.0, 2011-12TC1728同步串行接口 (SSC)用户手册SSC, V1.41 2010-0618-#V1.0, 2011-1

27、2TC1728同步串行接口 (SSC)同步串行接口 (SSC)18.1.2.7波特率产生串行通道SSC提供专用的、具有16位重载能力的16位波特率发生器,从而无需定时器产生波特率。除 图18-2外,图18-7更详细的描述了 SSC波特率发生器原理。图18-7 SSC波特率发生器用户手册SSC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)用户手册SSC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)波特率发生器的输入时钟为模块时钟fSSC。定时器递减计数。寄存器 BR为双功能波特率发生器/重

28、载寄存器。使能 SSC时,读BR返回定时器内容。禁止 SSC时,读BR返回 编程设定的重载值,此时,可将需要的重载值写入BR。注:使能SSC时,绝不能对寄存器 BR进行写操作。根据下列公式,给定重载值计算波特率(Baud rate),或给定波特率计算重载值:一fs-u “2 x(BR_VALUE + 1)2- - 118.2沢波BR_VALUE代表重载寄存器中的内容,为16位无符号整数;波特率ssc等于fscLK,如图18-7所示。fscLK = 110MHz时,可获得的最大波特率分别为:主模式 55.0 Mbit/s(BR_VALUE=0000H ),从模式 275.0 Mbit/s ( B

29、R_VALUE=0001H )。表18-1列岀一些可能的波特率、对应的重载值以及相应的波特率偏差(模块时钟fssc 为 110 MHz)表18-1典型异步波特率使用固定的输入时钟分割器重载值波特率(=fsCLK)偏差0000 H55 Mbit/s (仅用于主模式)0.0%0001 H27.5 Mbit/s0.0%0003 H13.75 Mbit/s0.0%0036 h1 Mbit/s0.0%006D H500 kbit/s0.0%0225 h100 kbit/s0.0%157B H10 kbit/s0.0%D6D7 h1 kbit/s0.0%FFFFh839.3 bit/s0.0%TC1728

30、中,在SSC模块内核之外产生模块时钟fssc。因此,在计算波特率时,必须考虑到fssc和fsYS的关联性,详细描述见上面。18.1.2.8从机选择输入操作对于多从机系统,SSC模块具有7个SLSI从机选择输入线,允许在从模式下使能或禁止SCLK、MTSR和MRST信号。设置 CON.MS=0选择从模式。由寄存器 PISEL和CON共 同控制SLSI输入逻辑,见图18-8。注:在下面描述中,仅提到一条 SLSI输入线。其余6条SLSI输入线和PISEL.SLSIS控制的输入多选器的其他 6个输入相连。图18-8 从机选择输入逻辑PISEL.SLSIS = 000b且选择从模式时,SLSI输入线不

31、能控制SSC I/O线。从机接收输 入信号 MTSRA或MTSRB(由PISEL.SRIS选择)和从机时钟输入信号SCLKA或SCLKB(由PISEL.SCIS选择)经由MTRSI和SCLKI进一步送至内部 SSC控制逻辑。来自内部 SSC控制逻辑的从机发送信号 MRSTI被直接送至MRST。PISEL.SLSIS = 001b,输入信号SLSI作为从机选择信号控制 SSC I/O线的操作:? SLSI =1:未选择SSC作为从机。-由PISEL.SRIS (从模式接收输入选择)决定MTSRI与从机接收输入信号MTSRA 还是 MTSRB相连。-用位PISEL.STIP的逻辑电平(从机发送空闲

32、状态)驱动MRST-用CON.PO的逻辑电平(时钟极性控制)驱动SCLKI。? SLSI =0 :选择SSC作为从机。-由PISEL.SRIS(从模式接收输入选择)决定 MTSRI与从机接收输入信号MTSRA还是MTSRB相连。-用位PISEL.STIP的逻辑电平(从机发送空闲状态)驱动MRST-用CON.PO的逻辑电平(时钟极性控制)驱动SCLKI。18.1.2.9从机选择输岀产生单元主模式下,SSC从机选择输岀产生单元在串行传送操作中自动产生多达8条从机选择输岀线SLSO7:0。从机选择输岀产生单元还能够调整片选时序参数。可单独控制每个从机选择输 出的有效/无效以及使能/禁止状态(见 图1

33、8 -10)。从机选择输出基本时序见图18-9,假设SLSOn线为低电平有效。SCLKMRSTSLSOnMTSR注:这个时序例子是基于下列设置:CON.PH = 0; CON.PO = 1MCT06220_mod图18-9 SSC从机选择输出时序写访问寄存器TB之后,从机选择输岀周期开始。执行TB写操作之后,保存在SSOTC(LEAD,TRAIL,INACT和SLS07M0D和SSOC寄存器中的所有时序参数被锁存、并在 连续发送过程中保持有效。紧接着,在串行数据流的首位送至MTSR引脚之前,SLSOn变为有效(低电平)并持续几个SCLK周期(前沿延迟周期)。发送数据帧之后,SLSO保持有效(低

34、电平)几个 SCLK周期,然后再次变为无效。注:工作在主模式且设置CON.PH= 1,采样从机器件(由 SLSOn输岀使能的)的数据时,前沿延迟至少应该为1个移位时钟周期。原因是 CON.PH= 1, MRST上的首位数据已经在第一个SCLK边沿被锁定。从机选择输岀时序控制寄存器 SSOTC中的位域控制片选周期的 3个参数。这几个位 域都包含从0到3的值,将延迟周期设置为 tscLK移位时钟周期的0到3倍。这三个参数 是:1. 前沿延迟周期数(tsLSOL = SSOTC.LEAD X tSCLK)2. 后沿延迟周期数(tsLSOT= SSOTC.TRAIL X tsCLK)3. 无效延迟周期

35、数(tsLSOI= SSOTCNACT X tSCLK)如果SSOTC.INACT =00b,且已经将下一个数据帧载入寄存器TB,从前沿延迟阶段开始下一个片选周期(无需等待SLSOn变为无效)。如果在此情况下,未将下一个数据帧载入TB,SLSOn再次变为无效。从机选择输出控制可单独使能每个从机选择输出SLSOn。当SSOC.OENn =1时,SLSOn使能。另外,也可编程设定SLSOn输出有效或无效电平。位 SSOC.AOLn决定SLSOn有效电平的状态。从机选择输 出时序控制SSOTCSSOC.OENnSSOC.AOLnn = 0-70:无效1:有效从机选择输出产生单元-SLSOANDIn”

36、 SLSOANDOn-SLSOnMCA06221 mod图18-10从机选择输岀控制逻辑有一特殊功能,即每个SLSOn可与来自另一个SSC的外部信号SLSOANDIn结合(与操作)产生输出信号SLSANDOn。该与门可用于例如:结合来自两个SSC接口模块的从机选择输出信号,从而产生一个共同的 SLSOn输出信号。注意该功能只能工作于低有效SLSOn信号(SSOC.AOLn = 0)。从机选择输出7延迟模式SLSO7延迟模式下(SSOTC.SLSO7MOD = 1),由SSOTC中的三个参数(后沿延迟、前沿延迟和无效延迟周期数)编程设定从机选择输岀SLSO7的时序,以一个移位时钟周期为单位延迟无

37、效-有效的边沿。不延迟有效-无效的边沿。延迟模式下 SLSO7的时序见图18-11。加黑的实线为正常工作模式的SLSO7时序,虚线为延迟模 式下的SLSO7时序。注:该时序用于时钟极性控制位设置为CON.PO=1.MCT06222图18-11 SLSO7延迟模式从机选择寄存器更新内部发送序列启动时(执行TB寄存器写操作),寄存器 SSOC和SSOTC中的参数被缓 存。这意味着,这些参数在串行发送操作期间保持不变,始终确保以恒定的从机选择设置进 行串行数据发送。串行发送期间,重新编程SSOC或SSOTC进行的设置更改只有在启动下一次传送操作时才生效。18.1210错误检测机制SSC能够检测四种错

38、误情况。所有模式下均可检测接收错误和相位错误,而发送错误和波特 率错误仅适用于从模式。当检测到传送错误或接收错误时,对应的错误标志位始终被置位, 通过激活EIR线产生错误中断请求(只有相关的错误使能位被置位),见 图18-12。错误中断 处理器会检查错误标志位以确定中断的原因。错误标志位不能被自动清零,中断被服务后,必须由软件通过寄存器 EFM清零错误标志。从而允许通过中断处理某些错误情况;同时软件可查询其他错误标志位。可通过错误标志修改寄存器EFM软件置位和清零错误状态标志。注:错误中断处理器必须对相关(被使能)的错误标志清零,以避免重复产生中断 请求。软件设置的错误标志不会产生中断请求。图

39、18-12 SSC错误中断控制接收错误(主模式或从模式):当新数据帧已接收完毕,但上次数据仍未从接收缓存 寄存器RB中读岀时,则发生接收错误。该情况置位错误标志位STAT.RE,并可激活错误中断请求线EIR(如果通过CON.REN使能)。接收缓存RB中的旧数据将被新数据覆盖、且不 可 恢复。相位错误(主模式或从模式):用和模块时钟相同的频率对引脚MRST(主模式)或 引脚MTSR(从模式)上的输入数据采样,如果在移位时钟信号SCLK的锁存沿的一个周期之前或两个周期之后采样数据改变,则发生相位错误。该情况置位错误状态标志 STAT.PE,并可激活错误中断请求线EIR(如果通过CON.PEN使能)

40、。注:当设置 C0N.PH=1时,当从机选择输入信号在串行传送之后发生改变时,数据 输岀信号将会受到短暂的干扰,导致岀现相位错误。波特率错误(从模式):当输入时钟信号和设定的波特率(移位时钟)之间的偏差超过100%时,则发生波特率错误。即偏差超过期望波特率的一倍、或小于期望波特率的一半。该情况置位错误状态标志 STAT.BE,并可激活错误中断请求线EIR(如果通过CON.BEN使能)。使用该检错功能时,要求所设定的从机波特率和主机器件相同。该特性可用于检测时钟线 上可引起错误的多余脉冲或缺失脉冲(在一帧之内)。注:如果出现波特率错误且位CON.AREN=1,将自动执行 SSC复位。如果检测到过

41、少或过多时钟脉冲,自动复位操作将重新初始化SSC模块。注:若通信被主机终止,在任意传送之后在从机模式中可能岀现该错误。这是因为 SSC支持“背对背”的多次连续传送。为了处理这种情况,波特率检测逻辑期望 在完成一次传送之后,下一个时钟周期立即用于新的传送。如果波特率错误被使能且在完成当前数据帧的发送操作之前(当STAT.BSY = 1),下一个数据帧的新值被载入到从机SSC的发送缓存中。完成当前数据帧发送之后,从机SSC期望立即使用连续的时钟脉冲进行下一次数据帧发送操作。当STAT.BSY = 1时,任何对从机SSC中的TBUF的写入,将开始或维持从机中数据的持续发送。因此,主机时钟(移位时钟)

42、在当前帧发送之后必须连续。否则,从机SSC将会检测到波特率错误。注意主机SSC发送缓存未填充新数据或岀现发送延迟时,主机SSC不需要送岀连续移位时钟。在章节18.1.2.4页18-10中有更多的关于连续发送的描述。发送错误(从模式):当主机已启动数据传送(移位时钟变为有效),但从机的发送缓存TB自上一次传送之后还未更新,则发生发送错误。该情况置位错误标志位STAT.TE,并可激活错误中断请求线EIR(如果通过CON.TEN使能)。如果发送缓存还未被更新就开始进行数据传 送,从机会把移位寄存器中的“旧”内容移岀,通常为上次传送时接收的数据。如果该从机 未被选择发送数据,这可能会导致半双工模式下发

43、送/接收线上数据被破坏(设置为漏极开路)。该模式要求未被选中发送数据的从机只送岀“1”也就是说,在任何传送之前,必须将FFFFH载入这些从机的发送缓存。奇偶性错误(主模式或从模式):当数据帧被完全接收到,并且接收数据产生的奇偶性位与计算STAT.TE,并可激活的奇偶性位不相等时,则发生奇偶性错误。该情况置位错误标志位 错误中断请求线 EIR(如果通过CON.TEN使能)。注:带有推/拉输岀驱动的从机在未被选中发送数据时,通常关闭其输岀驱动。但为了避免可能的数据冲突或数据错误识别,建议用户在任何传送操作之前,始终将FFFFFd值装入从机发送缓存。可通过控制寄存器 CON中的错误状态标志确定错误中

44、断请求源(接收、相位、波特率或发送 错误)。注:与EIR线不同,进入错误中断服务程序时,错误标志位STAT.TE STAT.RE STAT.PE和STAT.BE不能被自动清零,必须由软件清零。用户手册SSC, V1.41 2010-0618-23V1.0, 2011-12TC1728同步串行接口 (SSC)18.1.2.11排列SSC模式在排列SSC模式中,两个位控制SSC的使能/禁止。其中一个控制位在寄存器CON中,另一个在寄存器 SSOTC中。该双使能控制性能使得 SSC的控制和数据操作可 完全由DMA控制器处理。排列SSC模式的位:? 位SSCTC.QSMEN:排歹廿SSC模式使能? 位

45、SSCTC.EN:使能SSC (对应位CON.EN的功能定义)表18-2排列SSC模式控制写入SSOTC寄存器SSC模块使能/禁止控制位 QSMEN位EN0XSSC的使能/禁止控制只能通过位 CON.EN实现(排 列SSC模式禁止)o10SSC的使能/禁止控制通过 位 SSOTC.EN 和 CON.EN 实现(排列SSC模式使 能) O:SSC禁止1SSC使能注:两个寄存器位,CON.EN和SSOTC.EN为使能/禁止控制来控制一个共同的触发图18-13为排列 SSC模式控制逻辑。读取SSOTC为SSOTC.EN返回 CON.EN的状态O写入设置 QSMEN=1对应 SSOTC女口果 SSOT

46、C.EN写入为 1,则置位 CON.EN , 如果SSOTC.E写入为 0,则清零 CON.EN。与存储在寄存器 SSOTC(LEAD, TRAIL, INACT,和SLSO7MOD)的时序参数相比 较,排列 SSC模式控制位 QSMEN和EN没有被锁闭,并且直接控制接收/发送功能。但是注意,当没有正在进行的传送时(STAT.BSY = 0),CON.EN只能被软件清零(使用 COI或SSOTC写入操作)。图18-13排列SSC模式控制排列SSC模式的应用例子:在主模式中的 SSC操作,用不同的帧设置和波特率来控制多个 SSC从机器 件。控制这样的应用任务,当 CPU用于SSC控制的关键时刻,

47、排列 SSC模式可被应 用。这 种情况下,SSC从机的控制和数据处理被三个 DMA通道处理。? DMA通道1一个DMA 事务由四次连续的DMA 写入传送组成,可编程寄存器 CON,BR,SSOC,和SSOTC。所有这些寄存器在连续地址上的偏移量为4。对应CON写入操作,CON.EN 置位为0(SSC禁止)。BR,SSOC 和SSOTC写入操 作编写SSC从机参数,比如波 特率,帧排布和从机 选择输岀时序 。通过 写入 SSOTC.QSMEN = 1和SSOTC.EN = 1,对SSOTC的第四次写入操作又一次使能SSC。在DMA通道1完成该4字节控制的事务设置之后,通过 DMA通道2或DMA

48、通道3(取决于应用),可编程来自动启动数据事务。? DMA通道2该DMA通道被设置来写入发送缓存寄存器TB。? DMA通道3该DMA通道被设置来读取接收缓存寄存器RB。根据具体应用,可以不需要 DMA通道的写入或读取。用户手册SSC, V1.41 2010-0618-27V1.0, 2011-12TC1728同步串行接口 (SSC)用户手册SSC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)DMAi9ig 1 控制怔島DMA it道 2 堆送酣肝务DMA通道3 接收绘据任苏图18-14 SSC错误中断控制Oueufjd3$CMoi用户手册S

49、SC, V1.41 2010-0618-#V1.0, 2011-12TC1728同步串行接口 (SSC)18.2 SSC内核寄存器本节描述SSC模块内核寄存器。在 TC1728用户手册其它章节引用本节描述的SSC内核寄存器时,需要分别添加模块名前缀“SSCO_、SSC1_。SSC地址空间中的所有寄存器同应用一起被复位(定义见 SCU部分“复位操作”)。SSC内核寄存器概览SSC模块地址映射的详尽描述参见本章节末。表18-3寄存器地址控制 -SSC内核寄存器模块起始地址结束地址注SSC0F010 0100HF010 01FF HSSC1F010 0200hF010 02FF hSSC2F010

50、0300HF010 03FF HSSC3F010 0000HF010 00FF H表18-4寄存器概述-SSC内核寄存器寄存器 缩略名寄存器完整名地址偏移量1)描述见PISEL端口输入选择寄存器04h页 18-29ID模块ID寄存器08h页 18-28CON控制寄存器10h页 18-31BR波特率定时重载寄存器14h页 18-41STAT状态寄存器28h页 18-34EFM错误标志修改寄存器2Ch页 18-36SSOC从机选择输出控制寄存器18h页 18-38SSOTC从机选择输出时序控制寄存器1Ch页 18-39TB发送缓存寄存器20h页 18-42RB接收缓存寄存器24h页 18-421)

51、寄存器的绝对地址计算方式如下:模块基地址(见表18-3)+偏移地址(见本列)18.2.1 模块ID寄存器SSC模块ID寄存器中存放SSC模块的版本信息(只读)ID(08 H)复位值:0000 45XXh模块ID寄存器11IIIIlli1101.k1iii1IllilidIl1 1 1 1 1MODNUM1 li k i i I I1 1 1 1MODREVIIkilnI3116 158 70rrr符号位序号类型功能描述MODREV【7:0r模块修订版编号MODREV给出模块修订版编号,从 01h开始编号 第一版)。MODNUM15:8r模块编号该位域定义SSC模块ID编号:45h符号位序号类型功能描述MRIS0rw主模式接收输入选择主模式下,由MRIS选择接收输入线。0B选择接收输入线MRSTA1 b选择接收输入线MRSTBSRIS1rw从模式接收输入选择从模式下,由SRIS选择接收输入线。 0 b选择接收输入线MTSRA1 b选择接收输入线 MTSRBSCIS2rw从模式时钟输入选择从模式下,由SCIS选择用于时钟输入线的模 块内核SCLK输入线。0 B选择从模式时钟输入线 SCLKA1 b选择从模式时钟输入线 SC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论