版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章DSP片上串行通信外设7.1串行外设接口(SPI)7.1.1SPI模块概述
串行外设接口(SPI)是一个高速同步的串行输入/输出接口,通常用于DSP与外设或其他处理器之间的通信。SPI可采用主/从模式实现多处理器通信,典型的应用包括扩展I/O、移位寄存器、显示驱动器、模数转换器(ADC)等器件的外设拓展。SPI与CPU接口如图7-1所示7.1串行外设接口(SPI)(1)SPI模块特点:SPISOMI:SPI从输出/主输入引脚。SPISIMO:SPI从输入/主输出引脚。:SPI从发送器使能引脚。SPICLK:SPI串行时钟引脚。两种操作模式:主控制模式和从控制模式。波特率:125种可编程波特率,最大波特率受限于SPI引脚I/O缓冲器最大速度。数据字长:1~16位。4种时钟模式:无相位延时的下降沿、有相位延时的下降沿、无相位延时的上升沿、有相位延时的上升沿。同步接收和发送(发送功能可通过软件屏蔽)。通过中断或查询方式实现发送和接收操作。12个SPI模块控制寄存器,起始地址位于0x7040H。增强特点:16级发送/接收FIFO;延时发送控制。7.1串行外设接口(SPI)(2)SPI模块结构框图7.1串行外设接口(SPI)图7-2是SPI工作于从模式时的结构框图7.1串行外设接口(SPI)2.SPI模块信号概述信号名称功能描述
外部信号SPICLKSPISIMOSPISOMISPISTESPI时钟;SPI从入,主出;SPI从出,主入;SPI从发送使能。
控制信号SPIClockRateLSPCLK
中断信号
SPIRXINTSPITXINT非FIFO模式下,作为发送中断/接收中断(作为SPIINT使用);FIFO模式下的接收中断。FIFO模式下的发送中断。7.1.2SPI模块工作模式1.SPI操作介绍SPI可以工作于主控制器模式也可以工作于从控制器模式。图7-3介绍了两个控制器(一主一从)间的SPI通信典型连接。7.1.2SPI模块工作模式1.SPI操作介绍SPI接口有3种可以使用的发送数据方式:主控制器发送数据,从控制器发送伪数据;主控制器发送数据,从控制器发送数据;主控制器发送伪数据,从控制器发送数据。由于主控制器控制SPICLK信号,它可以在任何时刻启动数据发送。但是需要通过软件确定主控制器如何检测从控制器何时准备好发送数据。7.1.2SPI模块工作模式1.SPI操作介绍(1)主设备模式
工作在主模式下(MASTER/SLAVE=1),SPI通过SPICLK引脚为整个串行通信提供时钟。数据从SPISIMO引脚输出,并锁存SPISOMI引脚上输入的数据。SPIBRR寄存器决定数据传输速率,可配置125种速率。
当指定数量的数据位通过SPIDAT寄存器移出后,则会发生下列事件:SPIDAT中的内容发送到SPIRXBUF寄存器中;SPIINTFLAG位(SPISTS.6)置1;如果在发送缓冲器SPITXBUF中还有有效的数据(SPISTS寄存器中的TXBUFFULL位指示是否存在有效数据),则这个数据将被传送到SPIDAT寄存器并被发送出去,否则所有位从SPIDAT寄存器移出后,SPICLK时钟立即停止;如果SPIINTENA位(SPICTL.0)置1,则产生中断。7.1.2SPI模块工作模式1.SPI操作介绍(2)从设备模式在从模式中(MASTER/SLAVE=0),SPISOMI引脚为数据输出引脚,SPISIMO引脚为数据输入引脚。SPICLK引脚为串行移位时钟的输入,该时钟由网络主控制器提供,传输速率也由该时钟决定。SPICLK输入频率不应大于LSPCLK/4。要发送字符的所有位移出SPIDAT寄存器后,写入到SPITXBUF寄存器的数据将会传送到SPIDAT寄存器。
当TALK位(SPICTL.1)清零,数据发送被禁止,输出引脚(SPISOMI)处于高阻状态。如果在发送数据期间将TALK位清零,即使SPISOMI引脚被强制置成高阻状态,也会完成当前的字符传输,这样可以保证SPI设备能够正确地接收数据。TALK位允许在网络上有多个从SPI设备,但在某一时刻只能有一个从设备驱动SPISOMI引脚。7.1.2SPI模块工作模式2.SPI数据传送(1)数据格式
在数据字符中,SPICCR.3~0四个控制位指定字符的位数(1~16位)。状态控制逻辑根据SPICCR.3~0对接收和发送字符的位数计数,从而确定何时处理完一个数据。当数据位少于16位时,按照下列要求存放在寄存器中:当数据写入SPIDAT和SPITXBUF寄存器时,须左对齐;当读取SPIRXBUF寄存器数据时,须右对齐;SPIRXBUF中存放最新接收到的数据(右对齐的)和已移位到左边的上次遗留的位。7.1.2SPI模块工作模式2.SPI数据传送(2)波特率和时钟模式①
波特率的确定SPIBRR=3~127时,波特率=LSPCLK/(SPIBRR+1)
(7-1)SPIBRR=0、1或2时,波特率=LSPCLK/4(7-2)②SPI时钟方式4种不同的时钟方式如下:无相位延时的下降沿:在SPICLK信号的下降沿发送数据,在SPICLK信号的上升沿接收数据;有相位延时的下降沿:在SPICLK信号下降沿的前半个周期发送数据,在SPICLK信号的下降沿接收数据;无相位延时的上升沿:在SPICLK信号的上升沿发送数据,在SPICLK信号的下降沿接收数据;有相位延时的上升沿:在SPICLK信号上升沿的前半个周期发送数据,在SPICLK信号的上升沿接收数据。7.1.2SPI模块工作模式2.SPI数据传送SPI对应4种时钟方式的数据传输时序如图7-5所示。7.1.2SPI模块工作模式2.SPI数据传送(3)复位初始化
系统复位会使SPI模块进入如下的默认配置:该模块被配置为从模式(MASTER/SLAVE=0);禁止发送功能(TALK=0);在SPICLK下降沿输入的数据被锁存;字符长度设定为1;禁止SPI中断;SPIDAT中的数据复位为0000H;SPI模块引脚功能被配置为通用输入(在I/O复用控制寄存器B中配置)。7.1.2SPI模块工作模式3.SPIFIFO介绍
以下的步骤描述了SPIFIFO的特点以及如何对FIFOs编程。
系统复位会使SPI模块进入如下的默认配置:1)复位:上电复位时,SPI处于标准SPI模式,FIFO功能被禁止。SPI的寄存器SPIFFTX、SPIFFRX和SPIFFCT为无效状态。2)标准SPI:标准的240xSPI模式工作时以SPIINT/SPIRXINT作为中断源。3)模式转换:将SPIFFTX寄存器的SPIFFEN位置1使能FIFO模式,SPIRST可以在操作的任何阶段复位FIFO模式。4)激活寄存器:所有SPI、SPIFIFO寄存器(SPIFFTX、SPIFFRX、SPIFFCT)将有效。
5)中断:FIFO模式有两个中断,一个用于发送FIFO(SPITXINT),另一个用于接收FIFO(SPIINT/SPIRXINT)。标准SPI模式中发送和接收中断SPIINT在FIFO模式下被禁止,在FIFO模式下,该中断将作为SPI接收FIFO中断使用。6)缓冲器:发送和接收缓冲器使用两个16×16位的FIFO。标准SPI的16位发送缓冲器(TXBUF)功能是作为发送FIFO和移位寄存器间的发送缓冲器。移位寄存器的最后一位被移出后,发送缓冲器将从发送FIFO装载。7)延迟传送:SPIFFCT寄存器的7~0位(FFTXDLY7~0)定义两个发送字间的延时。这个延时由SPI串行时钟周期来定义,最小0个、最长255个时钟周期。0周期延迟时,SPI模块将连续发送FIFO字;255个时钟周期延迟时,SPI模块以字与字之间间隔255个时钟周期的速率将数据字移出。7.1.2SPI模块工作模式3.SPIFIFO介绍8)FIFO状态位:发送和接收FIFO都有状态位TXFFST和RXFFST(位12~0),通过这些状态位可以知道任何时刻在FIFO中有效的数据字个数。发送FIFO复位位和接收复位位置1会将FIFO指针清0,一旦这两个控制位清0,FIFO将重新开始操作。9)可编程中断级别:发送和接收都能产生CPU中断。对于发送,一旦发送FIFO状态位TXFFST(12~8位)和发送中断触发级别位TXFFIL(4~0位)匹配(小于或等于),就会触发发送中断;对于接收,当接收FIFO状态位RXFFST(12~8位)和接收中断触发级别位RXFFIL(4~0位)匹配(大于或等于),将触发接收中断。这给SPI发送和接收提供了一个可编程的中断触发器。接收FIFO的触发级别位默认值是11111b,发送FIFO触发级别位默认值为00000b。7.1.2SPI模块工作模式3.SPIFIFO介绍7.1.2SPI模块工作模式3.SPIFIFO介绍SPIFIFO中断标志和使能逻辑产生如图7-8所示。中断标志模式如表7-2所示。7.1.2SPI模块工作模式3.SPIFIFO介绍FIFO选项SPI中断源中断标志中断使能FIFO使能中断线
不使用FIFO接收超载数据接收发送器空RXOVRNSPIINTSPIINTOVRNINTENASPIINTENASPIINTENA000SPIRXINTSPIRXINTSPIRXINT使用FIFO接收FIFO溢出FIFO接收发送空RXFFOVFRXFFILTXFFILRXFFIENARXFFIENATXFFIENA111SPIRXINTSPIRXINTSPITXINT7.1.3SPI模块寄存器说明1.SPI配置控制寄存器(SPICCR)2.SPI操作控制寄存器(SPICTL)3.SPI状态寄存器(SPIST)4.SPI波特率寄存器(SPIBRR
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商洽调整合作区域范围的商洽函(3篇)
- 2026国企竞聘面试题库及答案
- 2026海南建行面试题目及答案
- 2026年上海市松江区七年级语文下学期期末试卷及答案
- 河边摆摊项目可行性研究报告
- 基于智能圆弧避障算法的精密测量系统空间柔性运动与安全选型解析
- 2026年网络诈骗防范题库(含答案)
- 癫痫的病因、症状与全面治疗策略总结2026
- 起重机械安全检验与检查方法培训
- 红茶制作技艺分享
- 2025年广东省中考物理试题卷(含答案)
- 2024-2025学年外研版(一起)四年级下学期期末英语试卷(含答案含听力原文无音频)
- 2025届浙江省杭州滨江区六校联考八年级英语第二学期期末考试模拟试题含答案
- T/CECS 10022-2019埋地用改性高密度聚乙烯(HDPE-M)双壁波纹管材
- 各地市可编辑的山东地图
- HY/T 0460.11-2024海岸带生态系统现状调查与评估技术导则第11部分:泥质海岸
- 企业品牌形象的视觉识别系统设计
- 工地防洪防汛安全教育
- 中国广电笔试试题及答案
- 2025年上海市松江区高三一模作文素材积累
- 周围血管与淋巴管疾病第九版课件
评论
0/150
提交评论