- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SPISIMO-SPI从输入、主输出
SPISOMI-SPI主输入、从输出
SPICLK -SPI时钟
SPISTE*-SPI从发送使能;(2)主/从操作模式。
(3)发送、接收双缓冲。
SPI模块中有9个寄存器用于控制该模块的操作:
(1)SPICCR:SPI配置控制寄存器。
(2)SPICTL:SPI操作控制寄存器。
(3)SPISTS:SPI状态寄存器。
(4)SPIBRR:SPI波特率寄存器。
(5)SPIRXEMU:SPI仿真缓冲寄存器。
(6)SPIRXBUF:SPI串行输入缓冲寄存器。;(7)SPITXBUF:SPI串行发送缓冲寄存器。
(8)SPIDAT:SPI串行数据寄存器。
(9)SPIPRI:SPI优先级控制。
11.2.1 SPI操作
下图是SPI用于两个控制器(一个主控制器和一个从控制器)通信的典型连接方式。;
;SPI可工作于主模式或从模式。
SPICTL.2位---MASTER/SLAVE用来选择操作模式和SPICLK的源。
(1)主模式
将Master的数据传送给Slave,数据传送完毕,申请中断。
(2)从模式
将 Slave的数据传送给 Master,数据传送完毕,申请中断。
;由图知,SPI有两种工作模式:主模式和从模式,操作模式由SPICTL.2(MASTER/SLAVE位)决定。
数据的发送方式有三种:
(1)主控制器发送数据,从控制器发送伪数据;
(2)主控制器发送数据,从控制器发送数据;
(3)主控制器发送伪数据,从控制器发送数据。
主控制器控制SPICLK信号,通过发出SPICLK信号启动数据发送,从控制器则通过检测SPICLK信号接收数据。
一个主控制器可以连接多个从控制器,但是一次只允许一个从控制器给主控制器发送数据;11.2.2 串行外设接口中断
有五个控制位用于初始化串行外设接口的中断:
SPI中断使能位:SPI INT ENA (SPICTL.0);
SPI中断标志位:SPI INT FLAG(SPISTS.6);
SPI超限中断使能位:OVERRUN INT ENA(SPICTL.4);
SPI接收器超限中断标志位:RECEIVER OVERRUN FLAG(SPISTS.7)
SPI中断优先级选择位:SPI PRIORITY(SPIPRI.6)。
;11.2.3 SPI模块的控制寄存器
1.SPI配置控制寄存器(SPICCR)7040H
对SPI的操作进行设置;2.SPI操作控制寄存器(SPICTL)7041H
;
3.SPI状态寄存器(SPISTS)7042H
SPISTS接受缓冲器状态位;
4.SPI波特率设置寄存器(SPIBRR)7044H
设置波特率;
6.SPI接收缓冲器寄存器(SPIRXBUF)7047H
SPIRXBUF接收缓冲器读取该寄存器会清除SPISTS.6;
9.SPI中断优先级控制寄存器(SPIPRI)704FH
SPIPRI控制SPI中断的优先级;11.2.4 SPI的设置
SPI通信时,要发送的数据从SPIDAT寄存器的MSB依次移出,接收的数据则从SPIDAT的LSB依次移入。
SPI数据字符位数(1-16位)由SPICCR.3-0指定。
当写入SPIDAT或SPITXBUF时,数据必须是左对齐的。
数据从SPIRXBUF读回时是右对齐的。
;2. SPI波特率和时钟模式
SPI模块支持125种不同的波特率和4种不同的时钟模
式。SPI最大波特率为CLKOUT频率的四分之一。
SPI波特率的确定
SPI波特率取决于CLKOUT和SPIBRR的值。
(1)对于SPIBRR=3-127
SPI波特率=CLKOUT/(SPIBRR+1)
(2) 对于SPIBRR=0-2
SPI波特率=CLKOUT/4
SPI最大波特率=CLKOUT/4=10MHz
;3 SPI时钟模式
SPI有四种时钟模式,由CLOCK POLARITY 和CLOCK
PHASE位控制。
CLOCK POLARITY位:选择时钟的有效沿是上升沿还是下降沿;
CLOCK PHASE位:选择是否有半个时钟周期的延时。
(1)下降沿,无延时:SPI在时钟下降沿发送数据,在时钟的上升沿接收数据;
(2)下降沿,有延时:SPI在时钟下降沿前半个周期发送数据,在时钟的下降沿接收数据;;(3)上升沿,无延时:SPI在时钟上升沿发送数据,在下降沿接收数据;
(4)上升沿,有延时:SPI在时钟上升沿前半个周期发送数据,在上升沿接收数据。
4种时钟模式如图所示。
;SPICLK
周期数; 11.2.5 SPI的复位和初始化
系统复位使SPI引脚功能被选定为通用输入,要对SPI的配置,需做以下工作:
(1)设置SPI SW
文档评论(0)