6.6 串行外设接口SPI.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
6.6 串行外设接口SPI.ppt

6.6 串行外设接口SPI 一、 概述 二、 SPI模块特性 三、 两种控制模式 四 、SPI模块的波特率和时钟模式 五、 SPI的复位 六、 SPI的控制寄存器 七、 SPI模块的控制过程 八、SPI模块通信示例 一、 概述 串行外设接口SPI模块是一个高速、同步的串行输入/输出(I/O)端口,它只需要3根引线即可与外设通信。 SPI可以用于DSP控制器和外部器件或其它控制器间的通信,典型的应用包括与移位寄存器、显示驱动器、串行A/D、串行D/A、串行EEPROM以及日历时钟芯片等外围I/O器件相连进行外设扩展。 SPI与SCI相同点:都是串行信息交换。 不同点: SPI同步通信、传输速率高、3根引线; SCI异步通信、传输速率低、2根引线。 二、 SPI模块特性 1) 两种工作方式:主动和从动 2)波特率:125种可编程的波特率 3)数据字长:1~16位 4) 4种时钟方案 5)可同时接收和发送 6)发送和操作可通过中断或查询方式来完成 7) 9个SPI模块控制寄存器 8)4个外部引脚:SPISOMI:从动输出/主动输入引脚 SPISIMO:从动输入/主动输出引脚 SPISTE:从动发送使能引脚 SPICLK:串行时钟引脚 SPI功能引脚图 9个SPI模块寄存器 三、 两种控制模式 SPI主/从控制器的连接 三、 两种控制模式 (1)主模式 ①.主控制器由SPICLK输出时钟信号给从控制器,使二者同步。 ②.主控制器将数据写入SPIDAT,由最高位(MSB)开始,从主控制器SPISIMO引脚上串行输出。 (1)主模式 ③.从控制器从SPISIMO引脚接收串行数据并把数据移入自身SPIDAT的最低位(LSB)。 ④. 数据传输完毕后,从控制器的数据并行写入SPIRXBUF中,供CPU读出。同时可以产生中断。 从模式 ①.外部网络主控制器由SPICLK引脚为从控制器提供时钟,使二者同步。 ②.外部网络主控制器从SPISTE引脚输出一低电平给从控制器,响应从控制器发送数据。 ③.从控制器把数据写入其SPIDAT并向左移位,在SPCLK信号的合适边沿,由SPIDAT最高位(MSB)开始从SPISOMI引脚串行输出。 从动发送具体过程 ④.主控制器从SPISOMI引脚接收串行数据,并将数据移入其SPIDAT的最低位(LSB)。 ⑤. 数据传输完毕后,主控制器再将完整的数据并行写入SPIRXBUF中。同时可以产生中断。 注意: A)主控制器可以在任意时刻起动数据发送;而从控制器要发送数据,需用软件使能 SPISTE输入引脚。 B)串行数据长度编程。 若数据长度小于16位,写入SPITXBUF时,需左对齐;从SPIRXBUF读回时右对齐。 四 、SPI模块的波特率和时钟模式 (1).SPI波特率的设定 由SPI波特率寄存器SPIBRR中的值确定。 当SPIBRR=3~127时, SPI波特率=CLKOUT/(SPIBRR+1) 当SPIBRR=0~2时, SPI波特率=CLKOUT/4 其中CLKOUT——器件的CPU时钟频率; SPIBRR——主SPI器件中SPIBRR的值。 (2).SPI时钟模式 SPI的时钟模式由CLOCK POLARITY(SPICCR.6)和CLOCK PHASE (SPICTL.3)两个控制位来确定。前者确定时钟的有效沿是在上升沿还是在下降沿;后者确定是否有半个时钟周期的延时。 串行外设时钟模式选择 五、 SPI的复位 .系统复位时SPI模块处于从模式, .发送功能被禁止 .在SPICLK的下降沿锁存接收到的数据 .字符长度为1位 .SPIDAT中数据为0000h, .SPI中断被禁止 .SPI的引脚被配置为通用I/O引脚。 六、 SPI的控制寄存器 (4).SPI波特率寄存器SPIBRR—地址7044h (5).SPI仿真接收寄存器SPIRXEMU—地址7046h (6).SPI接收缓冲寄存器SPIRXBUF SPI模块接收到的数据。 SPIDAT接收完毕数据后,将其传送到SPIRXBUF,同时置位SPI INTFLAG;数据读出后,自动清除SPI INTFLAG 。 (7).SPI发送缓冲寄存器SPITXBUF 下一个需要发送的数据。 向SPITXBUF写数将置位TXBUF FLAG;当前数据传送完毕,SPITXBUF中数据自动装载到SPIDAT,同时清除TXBUF FLAG

文档评论(0)

zhoubingchina + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档