微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > SPI通信时SCK频率过高会导致失败吗?

SPI通信时SCK频率过高会导致失败吗?

时间:10-02 整理:3721RD 点击:
我用的是C8051F020的板子,一开始SPI的SCK频率是默认的SYSCLK/2,晶振是22.184M的也就是说SPI的SCK频率是11M多,SPI0DAT的输出用示波器测有一段波形是尖的,而且也不是我传输的数据。但是把SCK设置为300K后就正常显示0、1的方波了。
SPI的SCK频率过高会导致SPI数据传输出错吗?

原则上不会,这是由芯片设计时保证的,比如STC15系列单片机,SPI速度设置超过8MHz没任何问题

得看一下通信的双方能接受的最高速率是多少吧

通讯双方会有通讯速率的限定,超过限定就肯定不能通讯了,对于芯片来说,电路会有相应速度,超过这个速度,输出波形的确有变形的可能,也会有无信号输出的情况。至于示波器看到的波形出现尖峰,也要看示波器的测量范围是多少,接近示波器的极限或超过极限的信号,在示波器上也会出现失真,但不代表信号真的失真了,反而可能是示波器无法真实反映波形。

就单片机来说是不应该的,它内部可以设置那么高那它一般情况下是可以跑那么高的,外设就不好说了,每个外设都有自己的频率限制的。
至于示波器显示的波形是要做衰减的,这和示波器的性能有些关系,不同带宽的示波器是不一样的!

SPI的SCK频率过高会导致SPI数据传输出错,拿SD卡的SPI接口为例,一般不会超过25MHz,并且在初始化的时候,基本在200K一下,我设计的FPGA板卡的SD卡接口就是用的SPI接口,初始化时200K,数据访问时最快25MHz,具体可在 shop397545458.taobao.com 查看。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top