找回密码
 注册
关于网站域名变更的通知
查看: 332|回复: 1
打印 上一主题 下一主题

弄懂SPI接口

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-3-13 10:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
弄懂SPI接口
9 J1 ?* C- a: k

* g; s" |# ?/ P* }
PI(Serial Peripheral InteRFace,串行外设接口)是Motorola公司提出的一种同步串行数据传输标准,在很多器件中被广泛应用。; d8 D% i1 P6 N) C: T" L/ t& N

7 c7 i* l) U& {$ }, z& v' ]& k! W) I1. 接口
/ e' m/ C! [, c. x
! \# s8 R8 D% h  e- ^8 {. p9 pSPI接口经常被称为4线串行总线,以主/从方式工作,数据传输过程由主机初始化。如图1所示,其使用的4条信号线分别为:' e! |, B# q4 S3 m4 |
5 ~5 s% A/ q, D2 E" I: y5 R
1) SCLK:串行时钟,用来同步数据传输,由主机输出;
) t- [4 b1 c. r% b& I
% Z; Z4 }( z. o( S* T- U9 B  I1 k2 ?2) MOSI:主机输出从机输入数据线;
% X3 R5 ~  w3 A! M7 ^! j7 e) O; f2 Z
3) MISO:主机输入从机输出数据线;, x% }# Z" @/ |5 W5 F' b
, d5 e+ n' \* x* V1 ~$ `2 k
4) SS:片选线,低电平有效,由主机输出。
; s; Q' Z% s9 O( w+ ?- o8 O6 Q: J. v$ G+ T9 k" z8 W) B
在SPI总线上,某一时刻可以出现多个从机,但只能存在一个主机,主机通过片选线来确定要通信的从机。这就要求从机的MISO口具有三态特性,使得该口线在器件未被选通时表现为高阻抗。
+ z0 ^; i# k) l
4 f9 y# |5 ?) o9 {% p' U9 o工程师博客:弄懂SPI接口(电子工程专辑)9 i7 `9 C" K# A. V$ m4 w  n
/ Z& _+ ]8 p  U8 u6 w
2. 数据传输
% l6 E9 i  X8 H3 a$ l1 t; k
) \/ y# w* D- ]: t( I2 E6 z; P在一个SPI时钟周期内,会完成如下操作:# P3 X+ o$ v1 [- [- g

- N, \" v7 }# f: ^4 U' E0 t* j1) 主机通过MOSI线发送1位数据,从机通过该线读取这1位数据;- ^1 r6 k7 {/ M0 h  w7 X5 E

& {6 j# G) @7 r2) 从机通过MISO线发送1位数据,主机通过该线读取这1位数据。
0 t2 l' @+ g' S$ K! j- u$ K( v" v' i8 _( l" i- C( E# c/ ]2 J* Q
这是通过移位寄存器来实现的。如图2所示,主机和从机各有一个移位寄存器,且二者连接成环。随着时钟脉冲,数据按照从高位到低位的方式依次移出主机寄存器和从机寄存器,并且依次移入从机寄存器和主机寄存器。当寄存器中的内容全部移出时,相当于完成了两个寄存器内容的交换。
' k; |3 ?. K) D* Y( _* R
% r9 J! E2 R- r9 ]# u. G! o工程师博客:弄懂SPI接口(电子工程专辑)+ c% M( s1 P5 B- R

/ ]% s  W+ n% r) v) s3. 时钟极性和时钟相位3 M  [+ ]* I1 c2 {

: q" Y9 V( u' y* M. W5 e- g. Q在SPI操作中,最重要的两项设置就是时钟极性(CPOL或UCCKPL)和时钟相位(CPHA或UCCKPH)。时钟极性设置时钟空闲时的电平,时钟相位设置读取数据和发送数据的时钟沿。0 b, W# l' W; o3 I" d

* u8 B0 t* O& R. d# I主机和从机的发送数据是同时完成的,两者的接收数据也是同时完成的。所以为了保证主从机正确通信,应使得它们的SPI具有相同的时钟极性和时钟相位。
; Z9 V4 d' M( J- o1 H2 K9 c
. w4 w* g5 m9 w, _! F0 }" V+ W举例来说,分别选取MSP430控制器和OLED驱动SH1101A为主从机,图3和图4为它们的SPI时序。由图4可知,SH1101A的SPI时钟空闲时为高电平,并且在后时钟沿接收数据,则MSP430控制器SPI的设置应与此保持一致。从图3中可以看出,要使得时钟在空闲时为高电平,应将UCCKPL置1;要使得在后时钟沿接收数据,应将UCCKPH清零。
/ ?/ l. p& `; T5 \7 U: e/ T( v2 m* S, e
工程师博客:弄懂SPI接口(电子工程专辑)
: Y5 X" J7 \, P" \% s/ u0 C" G8 A/ F7 W
工程师博客:弄懂SPI接口(电子工程专辑)4 ^0 H, ]' D+ V  O, s6 J# e+ ^

6 S4 i: N  o5 ^% M, T6 A- f4 X5 X4. 优缺点
/ t* W' i" T* r8 {3 t
# o) B( E) }% f% ^+ r/ T7 L# DSPI接口具有如下优点:1 h4 m6 V3 U3 D( t& @7 G9 L: L9 n; H% [

$ b5 ~" i" [1 ^* h) @. h1) 支持全双工操作;
2 X% C0 \1 z1 u# S. b' V& ^# G4 e& _2 D- D/ C) b) t
2) 操作简单;/ i# d/ j' \8 }

. b; W- ~" A  q( }3) 数据传输速率较高。
% q+ r% y3 s. o8 G/ {
! \/ i( J+ k) L: V- W2 Y同时,它也具有如下缺点:( Q6 p, [1 I# G, a- ], j7 n5 U0 _
& }! |6 {9 g9 S
1) 需要占用主机较多的口线(每个从机都需要一根片选线);
$ X, M( V8 x  i% r
/ f0 e/ G, r( o  ]) Q' i2) 只支持单个主机。
. ]% M8 P4 i2 W0 R

该用户从未签到

2#
发表于 2019-3-13 14:40 | 只看该作者
给楼主点个赞
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-28 21:51 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表