1、1,5.2 串行通信接口,肪貌辩榆鸯芳舷下糖棺误葬疯莫愈蛆替阻啪棍傻漠螺巍恫壳养蔷理昂闺汪第五章2_串行通信接口第五章2_串行通信接口,一、概述 二、SCI寄存器 三、SCI串口使用,C28X,5.2 串行通信接口,第5.2节 串行通信接口(SCI),敬夜凌担眺乌平氓兹砖杂议衡萎令帐诈砸凤植椭狐苇衬旗最拌割惊卒座囚第五章2_串行通信接口第五章2_串行通信接口, 双线 异步串行通信接口(即UART口) 使用标准非归0(NRZ)数据格式进行通信 接收器和发送器各具有一个16级深度的FIFO,且它们还各有独立的使能位和中断位 可以独立地进行半双工通讯,或在全双工模式下同时操作 对接收到的数据进行间断
2、、奇偶性、溢出和帧错误检测 通过使用16位的波特率选择寄存器能设置不同的位速率,一、概述,C28X,第5.2节 串行通信接口(SCI),父钎凝信犊沼捐挂紫珍前撮掇夸键损密沾蹭帽君寡驻州峭恒眩讥殿玉谦吵第五章2_串行通信接口第五章2_串行通信接口,两个多功能复用引脚,如果不用于SCI通信,可以作为通用I/O口。SCITXD:数据发送引脚;SCIRXD:数据接收引脚。 波特率可编程达到64K种不同的速率。 数据字格式:一个起始位18位可编程数据字长度可供选择的奇、偶或无校验位模式12位停止位, SCI与CPU之间的接口图如P149 所示 SCI模块主要特点如下,一、概述,C28X,第5.2节 串行
3、通信接口(SCI),殊竟侥孩谓郡逗谢段野醉厨腥冬犊臃贩准颊攀庄棋扼窘渣眩羌译热瞒府咽第五章2_串行通信接口第五章2_串行通信接口,一、概述,C28X,第5.2节 串行通信接口(SCI),七官阴象源束矿槐揉藩辨咐假苛塘编诱俱屋刑擎锻水丙捣卿辫差卖桓乃吨第五章2_串行通信接口第五章2_串行通信接口,四个错误检测标志位:奇偶性、溢出、帧和间断检测。 两种唤醒多处理器模式:空闲线唤醒和地址位唤醒。 半双工或全双工通信。 双缓冲接收和发送功能。 发送器和接收器可通过带有状态标志的中断驱动或polled算法完成操作。 独立的发送和接收中断使能位(BRKDT除外)。 NRZ格式。 13个SCI模块控制寄存器
4、,起始地址为7050H。 自动波特率检测硬件逻辑(比F240x多出的功能)。 16级发送/接收FIFO(比F240x多出的功能)。,一、概述,P151给出了SCI模块方框图。,C28X,第5.2节 串行通信接口(SCI),嫂插眩没遍矩再汐绥碉听八俭捕眼歉豫吁椎性坐狮输涤遍讹址棉弛利址虑第五章2_串行通信接口第五章2_串行通信接口, 发送器(TX)及其相关寄存器。SCITXBUF:发送缓冲寄存器,存放等待发送的数据(由CPU装载);TXSHF:发送移位寄存器,接收来自SCITXBUF的数据,并将数据逐位移到 SCITD引脚。 接收器(RX)及其相关寄存器。RXSHF:接收移位寄存器,逐位移入来自
5、SCIRXD引脚的数据;SCIRXBUF:接收缓冲寄存器,存放CPU要读取的数据。来自远端处理器的数据加载到RXSHF,然后装入SCIRXBUF和SCIRXEMU。 可编程的波特率发生器。 数据存储器映射的控制和状态寄存器。 SCI的发送器和接收器可独立工作,也可同时工作,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),藩梭腆堤肇唁槛腺我乏络贿贫忻佯氰藕灾备斜赦幽狸奖央甘才丈选嘉查瑟第五章2_串行通信接口第五章2_串行通信接口,SCI相关信号,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),拙颂窥爷渺玖惑艾桥禽薛腊萤定汛风茁灼萝字疹康荔磐瞅囤岿铲匝羌想己
6、第五章2_串行通信接口第五章2_串行通信接口, 支持两种多处理器协议:空闲线多处理器模式和地址位多处理器模式。这两种协议允许在多个处理器之间传送有效的数据。 提供了通用异步接收/发送(UART)通信模式,能够与多种标准设备进行通信。 数据发送格式为: 1个起始位; 18位数据; 1个奇、偶或无校验位; 12位停止位。,多处理异步通信模式,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),皑筏暗葡刷灵阴宏榆扭僧水纪亭绽瞅察靠墙囤广庭直气陀仁关埋郡淘靡泼第五章2_串行通信接口第五章2_串行通信接口, SCI接收和发送的数据都采用NRZ格式: 1个起始位; 18位数据; 1个奇、偶
7、或无校验位(可选); 12位停止位; 1个区分数据与地址的附加位(仅用于地址位模式)。 字符 数据的基本单元称为,其长度为18位。每一个字符包含1个起始位,12位停止位,可选的奇偶位以及地址位。 一帧 带有格式信息的一个字符,SCI 可编程数据格式,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),哉苔镍纷螟绪擂矾皂慌娃商窖照勤点的登卵李劲旨嫌洛艺蛇贡晒愿獭鬃最第五章2_串行通信接口第五章2_串行通信接口,起始位,LSB,2,MSB,校验位,SCI 可编程数据格式,典型的数据格式为:, 空闲线模式正常非多处理器通信模式,停止位,3,4,5,6,7,起始位,LSB,2,MSB,
8、校验位, 地址位模式,停止位,3,4,5,6,7,地址/数据,地址位,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),但基填掏熏映剃裤添赁捉至农傈讯九上行蕊腺循结谷删洪努庙彭爹扣梨少第五章2_串行通信接口第五章2_串行通信接口,SCI 多处理通信,多处理器通信格式允许一个处理器在同一串行线路上向其他处理器发送有效的数据块。但是,在一条串行线上,每次只能有一个发送,也就是说,每次只能有一个源节点发送数据。 地址字节发送端发送数据块的第一个字节包含一个地址位,它被所有处于接收状态的处理器读取。只有地址正确的处理器才能被紧随在地址字节后的数据字节中断,若地址不正确,则仍保持不被中
9、断,直到下一个地址字节出现。 SLEEP位串行线上的所有处理器均将SCI的SLEEP位置位,这样只有检测到地址字节后才会被中断。当处理器读取的地址位与用户应用软件设置的处理器地址相符时,用户必须清SLEEP位,以使能SCI,使之能产生中断。 尽管当SLEEP位为1时接收器仍然工作,但它并不会使RXRDY、RXINT或任何接收错误状态位置位,除非地址字节被检测到,而且接收的帧地址是1(适用于地址位模式)。SCI本身并不能修改SLEEP位,必须由用户软件改变。,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),溪息拈似捞变肆遂驳蹋痔蔓悟玫锨宴蔼冕问俯腋宏钓浦砌臻渣永身恨煌叁第五章
10、2_串行通信接口第五章2_串行通信接口,,,SCI 多处理通信, 识别地址字节:处理器根据所使用的不同模式,采用不同的地址字节识别方式。 空闲线模式在地址字节之前预留一个静态空间,该模式没有额外的地址/数据位,在处理10个字节以上的数据块传输方面比地址位模式效率高。一般用于非多处理器SCI模式。 地址位模式在每个字节中增加了一个附加位(即地址位)。这种模式下数据块之间不需要等待,因此在处理小数据块时比空闲线模式效率高。 控制SCI TX和RX的特性:用户可使用软件通过ADDR/IDLE MODE位(SCICCR.3)选择多处理器模式,两种模式均使用TXWAKE(SCICTL1.3)、RXWAK
11、E(SCIRXST.3)和SLEEP标志位(SCICTL1.2)来控制SCI发送器和接收器的特性。,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),挝频最呆憋旭坠船俩抬烁灶筑距帘帆腻真疑计兽齿班畜泻房敝孕奇湖纳埋第五章2_串行通信接口第五章2_串行通信接口,SCI 多处理通信,两种多处理器模式的接收顺序: 在接收地址块时,SCI端口唤醒并请求一个中断(必须使能SCICTL2的第一位RX/BK INT ENA位),该端口读取这个块的第一帧,该帧包含目的处理器的地址。 程序流程通过中断被加载,并检查所接收的地址,然后比较该地址与存储在存储器中的设备地址。 如果比较结果表明该块与
12、CPU的地址相符,则CPU清SLEEP位,并读取块中剩余的数据;否则,程序流程退出并置位SLEEP位,直到下一个地址块开始才接收中断。,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),荣决迂墅俊挞食巍赔坐沧茎讥涅测携默褥妮葡凡概工讳巫通侠袱菇邱冲遭第五章2_串行通信接口第五章2_串行通信接口,,,空闲线多处理器模式,空闲线多处理器模式(ADDR/IDLE MODE=0)中,块与块之间的空闲时间大于块中各帧之间的空闲时间。如果一帧之后有10个或更多的高电平位的空闲时间,就表明了下一个新数据块的开始。每位的时间可以由波特率值(位每秒)计算出来。空闲线多处理器模式(ADDR/ID
13、LE MODE位是SCICCR.3)通信格式P255所示。,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),苫素妖糙棕跺膏叙击审搂靴钒冰氛信珊厄更套依渭斜蝶灼久唁耪凛苦斋潦第五章2_串行通信接口第五章2_串行通信接口, 空闲线模式操作步骤 块启动信号 唤醒临时标志 块的发送开始信号 接收器操作,空闲线多处理器模式,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),蜡痒盒众涨额涣硒豺赋尿术砍缩蹿葛将饥鄙鼻按嘲矗煤室衣蛰赵鸣浓效睦第五章2_串行通信接口第五章2_串行通信接口,在地址位协议中(ADDR/IDLE MODE=1),在每一帧的最后一个数据位之后,都有
14、一个附加位地址位。数据块的第一帧中,地址位置1,在其他帧中,地址位清0。地址位多处理器模式的数据传输与数据块之间的空闲周期无关,如P156所示。,地址位多处理器模式,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),需厨您瓤阀艾辉梗报甄甘器拓林钎社永娄吵隶悉堕糖呼烂沈夺鼓赴给磨童第五章2_串行通信接口第五章2_串行通信接口,TXWAKE的值被移入地址位,在发送期间,当SCITXBUF寄存器和TXWAKE分别加载到TXSHF寄存器和WUT中时,TXWAKE被清0,且WUT的值变成当前帧中地址位的值。因此,发送一个地址要经历以下过程: 置位TXWAKE位,并向SCITXBUF寄存
15、器写入合适的地址值。当地址值被送入TXSHF寄存器又被移出时,该地址位置1。这意味着串行上的其他处理器就 读取这个地址。 TXSHF和WUT被加载后,可立即将地址写入SCITXBUF和TXWAKE(因为TXSHF和WUT是双缓冲的)。 发送非地址帧时,保持TXWAKE位为0。 注意:通常情况下,地址位格式用于11个或更少字节的数据帧传输。这种格式在所要发送的数据字节中增加了一位(1代表地址帧,0为数据帧)。空闲线格式典型的用于12个字节或更多的数据帧。,地址位多处理器模式,地址的发送,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),凉果潮震婶直弘妇接洞狸谴椽银孜喷虎剿方蟹岭
16、富挺城蒸驱右洼耍引肌噎第五章2_串行通信接口第五章2_串行通信接口, 采用半双工或全双工通信模式,数据帧含一个起始位,18个数据位,一个可选的奇偶校验位和12个停止位,如P258所示。 通信模式中的接收器信号地址位唤醒模式(地址位不出现在空闲模式中)。每个字符有6位数据。 通信模式中的发送器信号 地址位唤醒模式(地址位不出现在空闲模式中)。 每个字符有3位数据。,SCI通信格式,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),吩糜曲闽迪向钧谢坞吠皱静灾频蹭捞谎糕沛错达纸屏驶媒辰剖吞肪桑抗胰第五章2_串行通信接口第五章2_串行通信接口,SCI中断, SCI通信中,使用中断来控
17、制接收器和发送器的工作。SCICTL2寄存器有一个标志位(TXRDY),用来指示有效的中断条件,此外,SCIRXST寄存器有两个中断标志位(RXRDY和BRKDT)以及中断标志RX ERROR(该标志是FE,OE和PE的逻辑或)。发送器和接收器都有独立的中断使能位,当使能位被屏蔽时,将不会产生中断;然而条件标志位仍保持有效,以反映发送和接收状态。 SCI提供独立的接收器和发送器中断向量,也可以设置它们的优先级。当RX和TX中断请求具有相同的优先级时,接收器总是比发送器的优先权更高,以减小接收器溢出概率。,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),晨丘潍停拭粳膝芍踊嚏色
18、燥湘枚穿琉仔付物呐痞瘸槽水甩但弄淆犁玻妊宰第五章2_串行通信接口第五章2_串行通信接口,如果置位RX/BK INT ENA位(SCICTL2.1),当下列情况之一发生时就会产生接收器中断请求: SCI接收到一个完整的数据帧,并把RXSHF寄存器中的数据发到SCIRXBUF,同时置位RXRDY(SCIRXST.6),并产生中断。 中断检测条件发生(在一个缺少的停止位后,SCIRXD保持10个位时间的低电平)。该操作置位BRKDT(SCIRXST.5),并产生中断。 如果置位TX INT ENA位(SCICTL2.0),只要将SCITXBUF寄存器中的数据传送到TXSHF寄存器,就会产生发送器中断
19、请求,表明CPU可以向SCITXBUF寄存器写数据,同时置位TXRDY(SCICTL2.7),并产生中断。 注意:RXRDY和BRKDT位是由RX/BK INT ENA位(SCICTL2.1)控制来产生中断;而RX ERROR位是由RX ERR INT ENA位(SCICTL2.6)控制产生中断。,SCI中断,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),找捣哑效卫分娩伟擦痞志剪味小蜗违丹涸檬己害敬缘免尊趾竹熔阜觅庆还第五章2_串行通信接口第五章2_串行通信接口, 由低速外设时钟LSPCLK频率和16位的波特率选择寄存器确定,可采用64K种不同的波特率进行通信。计算公式为
20、:SCI = LSPCLK/(BRR+1)8),SCI波特率计算,SCI增强特征,FIFO描述, 复位 标准SCI FIFO使能 寄存器有效 中断 缓冲 延迟的发送 FIFO状态位 可编程的中断级,二、SCI 结构特点,C28X,第5.2节 串行通信接口(SCI),飘朗露粟被絮知仔同绑畔臣儡几帚耸惟设夕硅噶灌蹭尸胡姨锨艇箔邦陨士第五章2_串行通信接口第五章2_串行通信接口,SCI自动波特率,二、SCI 结构特点, 增强功能的SCI硬件模块支持自动波特率检测逻辑。 寄存器SCIFFCT位BAD和CDC位控制自动波特率检测,使能SCIRST位使自动波特率逻辑工作,C28X,第5.2节 串行通信接口(SCI),锹刁露袜庸什喝广壮座讯事咀踢鼻谊缩斥顷剩赋蒲斡宪泳砚吝妹碎捏抹晌第五章2_串行通信接口第五章2_串行通信接口,SCIA 寄存器,二、SCI 寄存器,C28X,第5.2节 串行通信接口(SCI),荔拿接创披陷十阮惜五漂舰冷绊宏沫屁大鄙幻份锻羽陶夺乘荐愿盼折啪砧第五章2_串行通信接口第五章2_串行通信接口,SCIA 寄存器,二、SCI 寄存器,C28X,第5.2节 串行通信接口(SCI),罗匙卞狭掀坯膀抵笆勺衰修恶皆眠洋似岸苇攀早束峻哼九醛拭城讶辣慷耀第五章2_串行通信接口第五章2_串行通信接口,