设为首页 - 加入收藏
广告 1000x90
您的当前位置:78345黄大仙救世网24码 > 接口分析 > 正文

SPI接口的出错分析及其改进

来源:未知 编辑:admin 时间:2019-05-26

  单片机(MCU)系统为了与SPI标准外围接口器件进行通信,必须使用SPI( Serial Peripheral Interface,串行外设接口)总线。SPI总线系统是Motorola提出的一种同步串行外设接口,有信号线少、协议简单、传输速度快的特点,因此有不少外围器件都采用SPI总线,如Flash RAM、A/ D转换器、LED显示器、MCU以及计算机网络等。MCU中的

  对于那些没有SPI接口功能的MCU来说,SPI接口的功能靠软件控制MCU的I/O口的方法来模拟。不过,用软件来模拟SPI接口的功能,工作速度非常慢,并且需要主从器件的软件之间配合得非常好。如果在单片机芯片内部用硬件电路来完成SPI接口功能,在硬件增加不多的情况下,能够极大地提高传输速度(最高频率可达主器件的频率的1/4),减轻软件的负担,使用极为方便。

  SPI接口工作的时候,没有应答信号,并且数据在发送的时候无需校验位,所以,要求主从器件的软件必须完全符合SPI的时序要求,否则数据传输很容易出现错误。本文通过MCU中SPI接口模块的设计,分析数据传输的各种出错情况,并针对各种情况,增强SPI接口的错误处理能力。

  在从器件时钟频率小于主器件时钟频率时,如果SCK的速率设得太快,将导致接收到的数据不正确(SPI接口本身难以判断收到的数据是否正确,要在软件中处理)。

  整个系统的速度受三个因素影响:主器件时钟CLK主、从器件时钟CLK从和同步串行时钟SCK,其中SCK是对CLK主的分频,CLK从和CLK主是异步的。要使SCK无差错无遗漏地被从器件所检测到,从器件的时钟CLK从必须要足够快。下面以SCK设置为CLK主的4分频的波形为例,分析同步串行时钟、主时钟和从时钟之间的关系。

  如图1所示,当T从Tsck/2,即T从<2T主时,无论主时钟和从时钟之间的相位关系如何,在从器件CLK从的上升沿必然能够检测到SCK的低电平,即SCK=0的范围内至少包含一个CLK从的上升沿。

  图2中,当T从≥TSCK/2=2T主时,在clk_s的两个上升沿都检测不到SCK的低电平,这样从器件就会漏掉一个SCK。在某些相位条件下,即使CLK从侥幸能检测到SCK的低电平,也不能保证可以继续检测到下一个SCK。只要遗漏了一个SCK,就相当于串行数据漏掉了一个位,后面继续接收/发送的数据就都是错误的了。

本文链接:http://acrylinkg.com/jiekoufenxi/101.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top