您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 英飞凌tricore用户手册-第18章-同步串行口SSC
TC1728用户手册SSC,V1.412010-0618-1V1.0,2011-1218同步串行接口(SSC)同步串行接口(SSC)本章描述TC1728的四个高速同步串行接口SSC0,SSC1,SSC2和SSC3。包括以下内容:•SSC内核功能描述,适用于SSC0,SSC1,SSC2和SSC3模块(见页18-1)•SSC内核寄存器描述,描述所有SSC内核专用寄存器(见页18-27)•TC1728中SSC模块具体实现及SSC0/SSC1/SSC2模块寄存器(端口连接和控制、中断控制、地址译码、时钟控制,(见页18-43)注:章节18.2中给出的SSC内核寄存器在TC1728用户手册其它章节引用时,需要分别添加模块名前缀“SSC0_”,“SSC1_”和“SSC2_”。18.1SSC内核描述图18-1为SSC接口框图。图18-1SSC接口基本框图TC1728用户手册SSC,V1.412010-0618-2V1.0,2011-1218.1.1概述同步串行接口(SSC)SSC支持波特率高达55.0Mbit/s的全双工和半双工串行同步通信(@110.0MHz模块时钟,主模式)。串行时钟信号由SSC模块自身产生(主模式),或从外部主机接收(从模式)。数据宽度、移位方向、时钟极性和相位均可编程设定,从而支持与SPI兼容器件通信。数据发送和接收双缓存。移位时钟产生器为SSC提供独立的串行时钟信号。从模式操作具有7个从机选择输入。主模式支持8个可编程从机选择输出(片选)。特性:•主模式和从模式操作–全双工或半双工工作–可进行自动引出端控制•灵活的数据格式–数据位个数可编程:2至16位(奇偶性使能:1至15数据位)–移位方向可编程:LSB或MSB在先–时钟极性可编程:移位时钟低电平空闲或高电平空闲–时钟/数据相位可编程:在移位时钟的前沿或后沿进行数据移位•波特率产生:–主模式:55.0Mbit/s到839.3bit/s(@110MHz模块时钟)–从模式:27.0Mbit/s到839.3bit/s(@110MHz模块时钟)•中断产生–发送缓存寄存器已空的情况–接收缓存寄存器已满的情况–出错情况(接收、相位、波特率、发送错误,奇偶性错误)•排队SSC模式支持通过DMA控制器的控制和数据处理•灵活的SSC引脚配置•硬件支持奇偶性模式–可独立选择传送和接收帧数–奇偶性选择•从模式下,7个从机选择输入SLSI[7:1]•主模式下,8个可编程从机选择输出SLSO[7:0]–自动产生SLSO,时序可编程设置–有效电平和使能控制可编程–与其他SSC模块的SLSO输出信号组合TC1728用户手册SSC,V1.412010-0618-3V1.0,2011-12同步串行接口(SSC)18.1.2一般操作SSC支持高达55.0Mbit/s的全双工和半双工串行同步通信(@110.0MHz模块时钟)。串行时钟信号由SSC模块自身产生(主模式),或从外部主机接收(从模式)。数据宽度、移位方向、时钟极性和相位均可编程设定,从而支持与SPI兼容器件通信。数据发送和接收双缓存。移位时钟产生器为SSC提供独立的串行时钟信号。用户可灵活设置高速同步串行接口:用于和其它同步串行接口通信;用于主机/从机或多主机通信;或者与主流的SPI接口兼容工作。SSC还可和移位寄存器(I/O扩展)、外设(如EEPROM等)或其它控制器(网络)进行通信。SSC支持全双工和半双工通信。通过引脚MTSR(主机发送/从机接收)和MRST(主机接收/从机发送)发送或接收数据。通过引脚SCLK(串行时钟)输出或输入时钟信号。这3个引脚通常具有端口引脚的复用输出功能。如果这3个引脚为专用双向引脚,则可直接由SSC控制。从模式下,主机通过专用从机输入线(SLSI)选中SSC模块。主模式下,可自动产生从机选择输出线(SLSO)。主模式下,转移的控制和数据处理也能被DMA控制器(排队SSC模式)独立的控制。TC1728用户手册SSC,V1.412010-0618-4V1.0,2011-12同步串行接口(SSC)图18-2同步串行通道SSC框图TC1728用户手册SSC,V1.412010-0618-5V1.0,2011-12同步串行接口(SSC)18.1.2.1工作模式选择由控制寄存器CON选择SSC模块工作模式。由状态寄存器STAT给出SSC状态信息。SSC移位寄存器通过引脚控制逻辑与发送引脚和接收引脚相连(见图18-2)。串行数据的发送和接收同步,且同时进行,即发送位数等于接收位数。发送数据写入到发送缓存TB。一旦移位寄存器为空,数据立即被转移至移位寄存器,包括传送奇偶性模式使能的情况下传送数据产生的奇偶性位(CON.PARTEN=1)。这时,SSC主机(CON.MS=1)立即开始发送,SSC从机(CON.MS=0)则要等待有效移位时钟。开始传送时,忙碌标志STAT.BSY置位,激活发送中断请求线(TIR)指示发送缓存寄存器(TB)可被重载。当已定个数(在CON.BM中编程设定)的数据位被接收之后,移位寄存器的数据位被转移至接收缓存寄存器(RB)右对齐,接收奇偶位(如果被CON.PARREN=1使能)被装载到STAT.PARRVAL,接收中断请求线(RIR)被激活。如果不需要继续传送数据(TB为空),STAT.BSY将同时被清零。软件不能修改STAT.BSY,因为该标志只能由硬件控制。注:给定时间内只有一个SSC模块可作为主机。串行数据位传送操作的下列特性可编程设定:•数据宽度:2至16位(奇偶性使能:1至15数据位)•移位方向:最低有效位(LSB)或最高有效位(MSB)在先•移位时钟极性:低电平空闲或高电平空闲•时钟/数据相位:在移位时钟信号的前沿或后沿进行数据移位•波特率(移位时钟):839.3bit/s到55.0Mbit/s(@110MHz模块时钟)•可产生(主机)或接收(从机)移位时钟SSC的这些特性使得SSC可满足各种串行数据传送应用的需要。数据宽度选择支持从2位“字符”到16位“字符”任何数据宽度的帧传送。如果奇偶性使能,数据位最大的帧数为15位。LSB在先(CON.HB=0)的串行数据位传送设置使得SSC可与同步模式下的SSC器件通信,或与8051式串行接口通信(页18-12),如果奇偶性使能,奇偶位先于串行数据位传送。MSB在先的设置(CON.HB=1)使得SSC可与SPI接口操作兼容。如果使能奇偶性模式,奇偶性位随着串行数据位传送(页18-12),如果奇偶性使能,奇偶位落后于串行数据位的传送。TC1728用户手册SSC,V1.412010-0618-6V1.0,2011-12同步串行接口(SSC)寄存器TB和RB中的传送数据始终右对齐,传送数据的LSB始终位于寄存器的位0,和选定的数据宽度以及先传送LSB还是MSB均无关。内部移位寄存器逻辑会重排传送数据。TB中未选中的位不予考虑,RB中未选中的位无效并被接收中断服务程序忽略。时钟控制使SSC的发送和接收适用于各种不同串行接口。在特定时钟沿(上升或下降沿)移出发送数据;同时用另一个时钟沿锁存接收数据。位CON.PH选择在时钟前沿或后沿移位数据;位CON.PO选择移位时钟线空闲状态电平。因此,对于高电平空闲的时钟,时钟的前沿是下降沿,1到0的跳变(见图18-3)。移位时钟SCLK设置:CON.PO=0CON.PH=0CON.PO=0CON.PH=11)CON.PO=1CON.PH=0CON.PO=1CON.PH=11)SSC引脚MTSR/MRST首位1)锁存数据发送数据末位移位数据1)如果CON.PH=1,在从模式中,MRST上的首位被PISEL.STIP替代MCT06215_mod图18-3串行时钟SCLK相位和极性选择18.1.2.2全双工操作本节描述中假设SSC使用软件控制双向GPIO端口线,具有漏极开路特性(参见章节18.1.2.6)。SSC通过三条线与各种器件相连。始终由主机来定义这三条线:和主机的数据输出引脚MTSR相连的为发送线;和主机的数据输入引脚MRST相连的为接收线;移位时钟线连接至引脚SCLK。TC1728用户手册SSC,V1.412010-0618-7V1.0,2011-12同步串行接口(SSC)只有被选作主机的器件产生并从SCLK线上输出移位时钟。由于所有的从机接收该时钟,它们的SCLK引脚必须切换至输入模式。主机移位寄存器的输出和外部发送线相连,同时该外部发送线依次和众多从机的移位寄存器的输入相连。从机移位寄存器的输出和外部接收线相连,从而可使主机接收从机移出的数据。外部连接是硬件连线,这些引脚的功能和方向由各器件的主机操作或从机操作决定。注:图18-4所示的移位方向适用于MSB在先和LSB在先的操作。在该设置下初始化器件,必须设定一个器件工作在主模式、所有其它器件工作在从模式。初始化包括SSC的工作模式选择以及对应端口线的功能定义。主机移位寄存器器件#1MTSR发送器件#2从机移位寄存器MTSRMRST接收MRST时钟CLK时钟CLK时钟器件#3从机移位寄存器MTSRMRSTCLK时钟MCA06216图18-4SSC全双工设置在该配置下,所有从机器件的数据输出引脚MRST都连接到接收线上。数据传送期间,每个从机从其移位寄存器中移出数据。有以下两种方式可避免不同从机同时向接收线发送数据时导致的传送冲突:TC1728用户手册SSC,V1.412010-0618-8V1.0,2011-12同步串行接口(SSC)•只有一个从机驱动接收线且使能该从机的MRST引脚的驱动器。必须将所有其它从机的MRST引脚设置为输入。从而只有一个从机可将数据发送到主机的接收线上。只能接收来自主机的数据。主机通过两种方式选择期望发送数据的从机器件:通过独立的选择线、或向该从机发送特殊命令。被选中从机的MRST引脚切换为输出,并始终保持输出状态直到接收到取消信号或命令。•从机的MRST引脚采用漏极开路输出,形成线与连接。这种情况下接收线需要一个外部上拉器件。所有未被选中的从机只发送“1”,从而避免了(被选中的从机发送到)接收线上的数据遭破坏。由于高电平不能被有效的驱动到接收线上,而只能由上拉器件保存,被选中发送数据的从机在发送“0”时可有效的将接收线拉至低电平。主机通过两种方式选择期望发送数据的从机器件:通过独立的选择线、或向该从机发送特殊命令。完成必要的SSC初始化之后,串行接口被使能。对于主机器件,时钟线电平为所设定的时钟极性。第一次传送开始之前,数据线为0或1。每次传送结束后,数据线将始终保持发送的最后一位数据的逻辑电平。若串行接口被使能,发送数据写入寄存器TB后,主机器件可启动首次数据传送。该发送数据被复制到移位寄存器中(假设此时移位寄存器为空),在下一个时钟(由波特率发生器产生)发送数据的首位被送到输出线MTSR上(仅当CON.EN=1时,才能开始发送)。根据选择的时钟相位,在SCLK线上产生时钟脉冲。同时,在相反的时钟沿,主机将输入线MRST上检测到的数据位锁存并移入移位寄存器。从而发送数据和接收数据进行了“交换”。因为时钟线和所有从机相连,从机的移位寄存器将和主机的移位寄存器同步:移出寄存器中的数据,移入输入线上检测到的数据。设定数目的时钟脉冲之后(由数据宽度选择),主机发送的数据被保存到所有从机的移位寄存器中;而选中从机发送的数据被保存到主机的移位寄存器中。主机和所有从机中,移位寄存器的内容被复制到接收缓存(RB)中,接收中断线RIR被激活。当发送缓存寄存器的内容被复制到从机的移位寄存器中,从机器件会立刻将选中的首位数据(传送数据的MSB或LSB)送到引脚MRST上。直到SCLK上出现首个时钟沿,位STAT.BSY才被置位。从机器件无需等待下一个时钟脉冲(由波特率发生器产生),这点与主机器件不同。原因在于:根据所选择的时钟相位,主机产生的首个时钟沿有可能用于锁存首位数据,因此从机的首位数据此刻必须已经有效。TC1728用户手册SSC,V1.412010-0618-9V1.0,2011-12同步串行接口(SSC)注:无论是否已
本文标题:英飞凌tricore用户手册-第18章-同步串行口SSC
链接地址:https://www.777doc.com/doc-6907634 .html