关键词不能为空

当前您在: 主页 > 英语 >

scrub第4章+SPI数据传输

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-01-28 15:53
tags:

scrub-hala

2021年1月28日发(作者:笛)




4




SPI


数据传输



本章主要内容包括:



?



SPI


的原理



?



SPI


模块的组成部分



?



SPI


模块的使用方法



?



片上


SP I


的功能



?



SPI


传输的实现


< br>本章全面介绍


SPI


总线技术的原理和使用方法。读者在 学习本章之后能够全面了解


SPI


的原理和模块的组成部分。< /p>


本章最后是


SPI


传输程序代码,


读者只需要稍微修改就可以应用


的其他程序。



4.1



SPI


模块概述


串行外围设备接口


SPI



Ser ial


Parallel


Interface


)总线技术是


Motorola


公司推出的一种


同步串行接口。


SPI


总线是一种三线同步 总线,由于其硬件能力很强,与


SPI


有关的软件相

< p>
当简单,使


CPU


有更多的时间来处理其他事务, 因此得到了广泛应用。



SPI


传输是 三总线结构,而且能够工作在主从模式下,图


4.1



SPI


总线模块结构图,


从图中看出,


SPI


总线模块包含有如下几部分:输入和输出部分,

< br>SPI


模块控制部分及波特


率产生和控制部分。下面将分 别介绍各个部分及其功能。



4.1.1



SPI


模块输入和输出



SPI


模块的输入和输出是


SPI

< br>模块与其它


SPI


模块或元件的接口,时钟信号决定着传 输


的速度。在进行


SPI


传输时,数据 先保存在


SPI


内部的数据寄存器,在


SPI


时钟的作用下,


数据通过移位寄存器依次出现在输出线上 ,或从输入线上接收数据。因此,输入输出部分包


含了输入输出引脚和对应的数据寄存器 。







1


单片机与数据通信




SPI


控制寄存器


1


BIDI ROE


SPI


控制寄存器


2

< p>
SPI


状态寄存器


SPIS


MODF


SPTEF


中断


输出


中断控制


从设备


控制


CPOL


CPHA


SCK


输入


SCK


输出


MOSI


S PC0


MISO


SCK


SS

< p>
从设备波特率


主设备波特率


主设备


控制


相位与极


性控制


相位与极


性控制


波特率发生器


时钟


信号


计数器


移位


采样


时钟


时钟


波特率


端口


控制


逻辑


分频系数

时钟选择


SPPR


SPR


LSBE F=1


SPI


波特率寄存器


LSBEF =0








SPI


数 据寄存器


LSBEF=1




LSBEF=1


LSBEF=0


LSBEF=0



4.1 SPI


模块




1



SPI


输入输出引脚

< p>


SPI


模块可以工作在主模式或从模式下,如图


4.2


所示,主模式和从模式的输入引脚和

输出引脚上不同的,而且主从模式的选择是通过


SS


选择的 。



?



MO SI


(主机输出从机输入引脚):在主模式下,该引脚输出数据到从机;在从模式


下,从机通过该引脚接收主机发送到数据。



?



MISO


(主机输入从机输出引脚):该引脚与


MOSI


引脚功能相反。 在主模式下,主


机通过该引脚接收从机发送到数据;在从模式下,该引脚输出数据到主机 。



?



SC K(


串行时钟


)


:该引脚为串行数据传 输提供时钟信号,主模式下,该引脚向从机提


供设置信号,从模式下,该引脚接收主机输 出的时钟信号。



?



SS


(从机选择引脚):在主模式下,该引脚置高电平;在从模式下,若该引脚 置低


电平,则说明主机选择了该从机。




2





4





SPI


数据传输


主模式


SPI


移位寄存器


MISO


MOSI


SCK


波特率发生器


SS


MISO


MOSI


SCK


SS


VCC


GND


从模式


SPI


移位寄存器




4.2 SPI


全双工主从模式连接图






4.2



SPI


通信连接示意图,该图中,由于只有一个从机,故从机< /p>


SS


引脚接地,主机


SS


引脚未用,接高电平。



2



SPI


移位寄存器和


SPI

< p>
数据寄存器(


SPIDR




SPI


移位寄存器实现并行数据和串行数据的相互转换,< /p>


它是一个


8


位的寄存器,


从图


4.2


中可以看出,主机和从机的


SPIDR


通过


MISO


和< /p>


MOSI


串联在一块,形成了一个


16< /p>


位的移


位寄存器,传输数据时,发生方移位寄存器中的

< p>
8


位数据串行移入接收方的移位寄存器中。



SPIDR


是在


SPI

传输中暂存输入或输出数据的寄存器,


它的作用类似于单片机串口中的


SBUF


缓存器。


SPIDR


的状态可以通过读取


SPI


状态寄存器的

SPIF


位和


SPTEF


位获得。 接


收数据时,当数据从移位寄存器移入


SPIDR



SPIF


置位;发送数据时,当

< br>SPIDR


空时,


SPTEF


置 位。可以在任意时刻读取该寄存器,通常情况下,当


SPIF


置 位时进行读取数据。



注意:当


SPI F


标志置位但数据未被读取,且后续字节已接收到移位寄存器时,该字节将一直保


存到移位寄存器中,


该字节不影响


SPIDR


中的字节。


但是,


在该字节变为无效之 前,


SPIF


中断必须被相应,即必须读取

SPIDR


中的数据,否则,该字节将被忽略。



4.1.2



SPI


控制模块


SPI


控制模块是


SPI


传输系统 的控制核心,它控制着


SPI


传输过程,


SPI


中断,


SPI


时钟

< p>
选择以及


SPI


的传输波特率。该模块包含三个控 制寄存器和一个状态寄存器。


1



1. SPI


控制寄存器


1



SPICR1





1


SPICR1



SP I


模块中第一个控制寄存器,它控制着


SPI

< br>传输过程的禁止和有效,


SPI



SPI Block Guide V04.01



Motorola, Original Release Date: 21 JAN 2000, Revised: 14 JUL 2004



3


单片机与数据通信



模块是否产生中断,同时控制着


SCK


时钟信号的相 位和时钟选择,控制着移位过程中是先



LSB


还是先移


MSB


。复位后该寄存器的值为


00000100


,图


4.3


是该寄存器各位的描述。




D7


SPIE


D6


SPE


D5


SPTIE


D4


MSTR



D3


CPOL


D2


CPHA


D1


SSOE


D0


LSBEF






4.3 SPI

< br>控制寄存器


1



SPICR1< /p>




?



SPIE



SPI


中 断允许控制位。


SPIE=1


:允许


SPI


中断;


SPIE=0


:禁止


SPI


中断。



?



SPE



SPI


使能控制位。


SPE=1


表:许


SPI


传输,


SPI


传输的任何操作都必须使该位置


位;

SPE=0


:禁止


SPI



SPI


进入低功耗状态)。



?



SPTIE



SPI


传输中断允许控制位。该位允许在

< br>SPTEF


置位时产生中断。






SPTIE=1

< br>:允许


SPITEF


中断;


SP TIE=0


表:禁止


SPITEF


中断 。



?



MS TR



SPI


主模式

< br>/


从模式选择位。


MSTR=1



SPI


工作在主模式;


MSTR=0



SPI



作 在从模式。



?


CPOL



SPI


时钟极性控制位 。该位选择


SPI


时钟的极性。



SPI


传输时,


传输双方必


须设置同样的


CPOL


值。主机在传输中,该位若发生 变化则会中止正在进行的传输。


CPOL =1



低电平时钟有效,


空闲时


SCK

信号为高电平;


CPOL =0



高电平时钟有效,


空闲时


SCK


信号为 低电平。



?



CPHA



SPI


采样时钟相位选择 。


CPHA =1


:在


SCK


时钟的偶数沿(


2



4



6


,…)


采 样数据;


CPHA =0


:在


SCK< /p>


时钟的奇数沿(


1


3



5


,…)采样数据。



SS


输出选择位。


?



SSOE



该位只能在主模式下有效,



MODFEN


1


的情况下,


SSOE


的设置如表


4.1


所示。




4.1


MODFEN


0


0


1


1


SSOE


0


1


0


1


SS


输入


/


输出选择表



主模式



从模式



SS


无效



SS


无效



SS


输入



SS


输入



SS


作为模式错误标志输入



SS


作为从机的选择信号



SS


输入



SS


输入




?



LSBFE


:优先传输


LSB


控制位。


LSBF E =1


:数据传输时,先传输


LBS



LSBFE =0



数据传输时,先 传输


MBS




2. SPI


控制寄存器


2

< p>


SPICR2





SPI


控制寄存器

< br>2


控制


SPI


的模式错误检测, 全双工传输和空闲模式下的


SPI


时钟信号

的停止与否。图


4.4


是该寄存器的各位的描述,复位后, 该寄存器值为


00000000




4






4





SPI


数据传输



D7


-


D6


D5


-









-


D4


MODFEN



4.4


D3


BIDIROE



D2


-


D1


SPISWAI


D0


SPC0 < /p>


SPI


控制寄存器


2


SPICR2




?



MODFEN

:模式错误检测(


MODF


)允许位。


MODFEN =1



SS


引脚作为


MODF



征输入;


MODFEN =0



SS


无效。详细功能见表


4.1




?



BIDIROE


:双向传输模式下输出缓冲区允许位。在双向传输时,该位控制着


MOSI



MISO


的输出缓冲区。 在主模式下,该位控制


MOSI


的输出缓冲区,在从模式下,< /p>


该位控制


MISO


的输出缓冲区。




BIDIROE =1


:使能输出缓冲区;


BIDIROE =0


:禁止输出缓冲区。



?



SPISWAI

< br>:空闲模式下


SPI


停止控制位。


SPISWAI =1


:空闲状态下停止


SPI


时钟发


生器;


SPISWAI =0


:空闲状态下不停止


SPI


时钟发生器。



?



SPC0

< p>
:双向串行传输控制位。详细描述如表


4.2


。< /p>




4.2


传输模式



正常传输



单线传输



正常传输



单线传输



SPC0


0


1


0


1


单线双向传输和正常传输下各控制位及各引脚的功能表



BIDIROE


×



0


1


×



0


1


MISO


脚状态



主机的操作



主机输入



无效



从机的操作



从机输出



从机输入



从机输入

< br>/


输出



MOSI


引脚状态



主机输出



主机输入



主机输入

< br>/


输出



从机输入



无效



说明:


单线传输是指主机和从机通过一条线,


主机用


MOSI



从机用


MISO


实现 单工或双工通信,


这种通信是由


SPC0



BIDIROE


共同控制的。




3



SPI


波特率控制寄存器(


SPIBR




SPIBR


用于控制

SPI


传输的传输波特率,实际上,


SPI


的时钟信号频率取自处理器的晶


振频率,


SPIBR< /p>


产生分频系数,从而控制了


SPI


时钟的 频率大小。图


4.5


为该寄存器各位的


描述,


SPPR2~SPPR0


为波特率预设系数;

< p>
SPR2~SPR0


为波特率选择系数。复位后,该寄存

< br>器值为


00000000




D7


-


D6


D5


SPPR2


SPPR1



4.5


D4


SPPR0


D3


-



D2


SPR2


D1


SPR1


D0


SPR0


SPI


波特率控制寄存器(


SPIBR2




波特率分频系数按如下公式计算:



x


?


(


SPPR


?


1


)


?


2< /p>


spr


?


1



























4.1




SPI


系统波特率按如下公式计算:



5


单片机与数据通信



B


?


BusClock


/< /p>


x
































4.2




注意:


主模式下,


CPOL

< p>


CPHA



SSOE< /p>



LSBFE



MODFEN



SPC0


以及


SPPR2~SPPR0



SOR2~SPR0


任意位发生变化,都会中止现行的


SPI


传输,从而进入空闲状态。



4.


SPI


状态寄存器(


SPISR




SPISR


描述了


SPI


操作过程中各种状态,


包括数据寄存器的空后不空的状 态和模式错误


诊断状态。图


4.4


为该 寄存器各位的描述。复位后,该寄存器值为


00100000




?



SPI F



SPIF


中断标志。



SPIE



1

< p>
的情况下,


SPI


数据寄存器收到传输数据时,< /p>


SPIF


D7


SPIF


D6


D5


-





SPTEF


D4


MODF



4.6


D3


-


D2


-


D1


-


D0


-



SPI


控制寄存器


2



SPISR

< p>



标志置


1

< p>


SPI


发生中断。该位由硬件清零。

< p>
SPIF =1



SPI


数据寄存器收到新数据,


该字节的传输完成;


SPIF =0< /p>



SPI


传输过程未完成。



?



SPTEF



SPI


发送数据寄存器空中断标志。


SPTEF=1


表明传输数据寄存器空,可以向


数据寄存器写入数据;


SPTEF=0


表明数据寄存器中有要发 送到数据,此时不能向寄


存器中写入数据,否则写入的数据将被忽略。

< br>


?



MODF



SPI


模式错误标志。



4.2



SPI


传输模式


SPI


传输过程是单片机和外围器件之间的一种双向的、同步的串行传输。当控制寄 存器


SPICR1


中的位


SPE



1


时,


SPI


模块的下列功能引脚有效:



?



从机选择引脚(

< br>SS




?



串行时钟(


SCK




?



主机输出


/


从机输入引脚(


MOSI




?



主机输入


/


从机输出引脚(


MISO

< br>)



SPI


数据寄存器是


SPI


系统中的重要部件,主机中的数据寄存器通过

< br>MOSI


和从机中的


数据寄存器通过

MISO


联接到一起形成一个


16


位的寄存器,


如图


4.2


所示。


SPI


传输过程就


是数据在

< br>16


位寄存器中移动


8


位,从而 完成主机和从机之间的数据交换,当主机输入时,


从机则输出数据,反之亦然。



SPI


模块可以选择工作主模式或从模式,当


SPICR1



MSTR



1


时,模块工作在主模


式 ,


MSTR



0


时,模块工作在从模式。



6





4





SPI


数据传输



4.2.1


SPI


主模式




MSTR



1

时,


模块工作在主模式。


在一个


S PI


传输系统中只有一个主模式模块,



为主机。


SPI


传输过程是在主机的控制下进行的。图


4.7


是一个多从机的


SPI


传输系统,主


机通过


SS


来选 择从机。下面分别介绍主模式下各功能引脚的作用和控制。



?




SPI


时钟(


SCK


):


SPI


传输系统的传输时钟是有主机提供的,

< p>
SCK


的频率决定了


传输系统的波特率。数据传输 速率是由波特率控制寄存器


SPIBR


控制的,通过预设


SPIBR


中的


SPPR2~SPPR0



SPR2~SPR0


来设置系统传输的波 特率,具体见


4.1


节。



?




MOS I



MISO




在主模式中,


MOSI


引脚作为数 据输出引脚,


MISO


引脚作为数


据输 入引脚。



?




SS



主模 式中,



MODFEN



SSOE


位置


1


时,


该引脚作为选择从机的输出引脚,


当该


SS< /p>


变低时,与该引脚相连的从机被选中,进行


SPI


数据传输;当


SS


变高时,从


机进入空闲状态。



主机


从机


SCK


MOSI


单片机


MISO


P1.0


P1.1


P1.2< /p>


SCK


MOSI


MISO


SS


SPI


设备


SCK


MOSI


MISO


SS


SPI


设备


SCK


MOSI


MISO


SS


SPI


设 备




4.7


SPI


多从机连接图




从图


4.7


中可以看出,主机是一个单片机或微处理器,它控制着这个


SPI


系统的传输。


主机可以包含


SPI


模 块,这样传输完全由


SPI


模块自动完成,单片机只需要向数据 寄存器中


写入数据或从数据寄存器中读取数据即可;


若主机不包 含


SPI


模块,


那么需要利用单片机的


I/O


端口模拟


SPI


系统来实现数据传输。从机是


SPI


设备或包含


SPI


模块的单片机。



7


单片机与数据通信



在传输过程中,


SCK


时钟沿的选择或采样时刻的选 择将在


4.3


节中介绍。


< p>


SPI


中,传输总是有主机启动的。如果使能< /p>


SPI


操作(


SPE=1


)并选择作为主机,主


机对


SPI

数据寄存器的写操作将启动


SPI


时钟发生器和数据的传输 。在数据写入


SPIDR



后的半个到 一个


SCK


周期后,数据将出现在


MO SI


引脚上。



另外,主机可以通过将 从机的


SS


引脚变为低来实现通信。写入主机

< br>SPIDR


寄存器的数


据从


MO SI


引脚移出到从机的


MOSI


引脚。 同时从机


SPIDR


寄存器的数据从


M ISO


引脚移


出到主机的


MISO


引脚。



传输完一个字节后,


SPI


时钟发生器停止,


传输完成标志


SPIF



1


并产生一个中 断


(若


SPIE=1


)。主机和从机的 两个移位寄存器可以看作一个


16


位循环移位寄存器。当数据从 主


机移位传送到从机的同时,数据也以相反的方向移入。这意味着在一个移位周期中,主 机和


从机的数据相互交换。



注意:主 机在传输过程中,下列位


CPOL



C PHA



SSOE


< br>LSBFE



MODFEN


,< /p>


SPC



BIDIROE



SPPR2~SPPR0



SPR2~SPR2


中的任一位改变都会中止传输过程并使系统进入空闲状态。



4.2.2


SPI


从模式




MSTR



0

时,模块工作在从模式,称为从机。一个系统中可以有多个从机,从模


式下各引脚的 功能和控制如下:



?



SPI


时钟(


SCK


):从 模式中


SCK


作为输入引脚接收主机输出的

SCK




?



MOSI



MISO


:在从模式中,


MOSI< /p>


引脚作为数据输入引脚,


MISO


引脚作 为数据输


出引脚。



?



SS


:从 模式中,


SS


为输入引脚,作为从机的选择信号。


SS


引脚必须在


SPI


传输 开


始前变为低,而且必须保持到


SPI


传输完成,


SS


变为高时,从机将进入空闲状态。




CPHA=1


时,


SSOE


必须为


0



SS


引脚必须取反并且在每个连续的串行字节之间重新


设置为高电平。如果


SPIDR


寄存器在


SS


未变化时执行写操作,则将导致一个写冲突错误。


所谓写冲突,就是在发送数据时,数据寄存器中的数据还没有发送出去,新的数据又写入数

< p>
据寄存器中,这时就会发生写冲突错误,在这种情况下,正在发送到数据将继续发送,新写


入的数据将丢失。当对主机或从机进行写冲突检测时,主机发生写冲突的情况是很罕见的,


因为主机拥有数据传输的完全控制权,但从机有可能发生写冲突,因为当主机启动传输时,


从机无法进行控制。



< br>CPHA=1


时,


SSOE


可以 置


1



如果


S SOE=0



SS


引脚可以在连续传输 之间保持有效。


这种方式适用于具有单固定主机和单固定从机驱动


MISO


数据线的系统。



注意:< /p>


SPI


传输过程中,下列位


CPOL



CPHA



SS OE



LSBFE


< br>MODFEN



SPC0



BIDIROE



8





4





SPI


数据传输



中的任一位改变都会中止传输过程并使系统进入空闲状态。



4.3



SPI


传输过程格式



SPI


传输中,数据能够同步的发送或接收,其中起关键作用的是同步时钟信号


SCK


,该


信号由主机发出,从机接收 并作为和主机的同步信号,可以选择在


SCK


的上升沿或下降沿


采样数据。



4.3.1


SCK


信号的相位和极性控制



SPICR1


中的两个位


CPOL

< p>


CPHA


用来控制


SC K


信号的极性和相位,这两位可以通


过软件改变。




CPOL


复位时,


SPI


系统以高电平为激活电平,在空闲状态下

SCK


为低电平;反之,


SPI


以 低电平为激活电平,空闲状态下


SCK


为高电平。



CPHA


置位时,


SPI



SCK


的偶数沿采样数据,


CPHA


复位时,


SPI



SCK


的奇数沿采


样数据,所以根 据


CPHA


的取值不同,


SPI


系统有两种传输格式。



4.3.2



CPHA=0


传输格式



在这种格式中,在


SCK


的第一个时钟沿进行数据的 采样,即主机中数据的第一位进入


从机中,同时,从机中数据的第一位进入主机中。



说明:第一个


SCK

沿应至少落后于


SS


有效点半个时钟周期。



半个


SCK


周期之后,


出现第二个


SCK


时钟沿,


同时先前的数据位锁存到移位寄存器中,


在这个


SCK


沿之后,主机中数据的第二位通过


MOSI

进入从机中


MOSI


引脚,与此同时,

从机中数据的第二位通过


MISO


进入主机中的

< p>
MISO


引脚,在第三个


SCK

< br>沿采样该位,并


在第四个


SCK


沿锁存到移位寄存器中。如是依次处理,


16



SCK


时钟沿后,传输数据的


8


位全部分别在奇数沿上锁存到移位寄存器中并在偶数沿进行移位。


在最后一位移到移位 寄存


器的同时,


该字节被传到系统的数据寄存器中。

< p>
该过程完成之后,


传输应完成如下两个功能:



?



先前在主机数据寄存器中的数据现 在应在从机的数据寄存器中,


而原先在从机中数据


寄存器中的数 据应在主机中。



9


单片机与数据通信



?



SPI


状 态寄存器中的


SPIF


位置位。




4.8



CPH A=0


时的传输格式。


该图给出了


CP OL=1



CPOL=0


两种


SCK


的波形图。


SCK


(CPOL=0)


SCK


(CPOL =1)


采样时刻


MOSI


MISO


SS


LSBFE=0


LSBFE=1


MSB


LSB


D6


D 1


D5


D2



4.8


D4


D3


D3


D4


D2


D5


D1

< p>
D6


LSB


MSB



SPI


传输格式


0



CPHA=0





同时,该图既可以作为主机的传输图,也可作为从机的传输图 。若作为主机,


MOSI


为数据


输出端 ,


MISO


为数据输入端,若作为从机,


MOSI


为数据输入端,


MISO


为 数据输出端。



4.3.3



CPHA=1


传输格式




CPHA=1


时,


SPI


传输的采样点在


SCK


的偶数沿上。< /p>



在该种模式中,同步信号出现半个


SC K


周期后,


SCK


信号的第一个沿立即 有效。在这


第一个沿上,


若从机为输出




则从机数据的第一位传输到主机的输入引脚上。


再过半个


SCK


周期,第二个


SCK


沿出现在


SCK


引脚上,在这 个沿上,主机和从机都会采样数据,则被传


输数据的第一位被采样。当第三个

< p>
SCK


沿产生时,被采样的第一位数据由输入引脚移位到

< br>移位寄存器中,在这个


SCK


沿之后,主机的输出数据的 第二位传输到从机输入引脚上。在


第四个


SCK


沿上采样第二位,如此


16



SCK


沿之后,则一个数据传输完成。在这


16



SCK


沿中,系统在奇数沿上移位数据位,在偶数沿 上采样数据。图


4.9



CPHA=1


时的


SPI


传输格式的波形图。



10





4





SPI


数据传输



SCK


(CPOL=0)


SCK < /p>


(CPOL=1)


采样时刻


MOSI


MISO


SS


LSBFE=0


LSBFE=1


MSB


LSB


D6


D1


D5


D2

< br>D4


D3


D3


D4


D2


D5


D1


D6


LSB


MSB



4.9



SPI


传输格式

1



CPHA=1






该过程完成之后,传输应完成如下两个功能:



?



先前在主机数据寄存器中的数据现 在应在从机的数据寄存器中,


而原先在从机中数据


寄存器中的数 据应在主机中。



?



SPI


状态寄存器中的


SPIF


位置位。




4.4



利用


SPI


单片机实现多从机传输系统



在这个实例中,

< br>利用单片机


STC12C5410


中的

< br>SPI


模块实现一个主机和两个从机的传输


系统,同时主 机通过


RS-232


接口与计算机连接可实现与计算机的通信。



4.4.1


STC12C5410


简介



STC12C5410


是一款宏晶科技生产的增强型的

< br>8051


内核的单片机,该单片机具有一个


SPI


模块。图


4.10


为一款

28


引脚的单片机。




11


单片机与数据通信


< p>
P2.2


P2.3


RES


RxD/P3.0


TxD/P3.1


XTAL2


XTAL1


INT0/P3.2


INT1/P3.3< /p>


T0/P3.4


T1/P3.5


P2.4


P2.5


Gnd


1

2


3


4


5


6


7


8


9


10


11


12


13


14


28


27


26

25


24


23


22


21


20


19


18

< p>
17


16


15


VCC


P2.1


P2.0


P1.7/SCLK


P1.6/MISO


P1.5/MOSI


P 1.4/SS


P1.3


P1.2


P1. 1


P1.0


P3.7


P2.7


P2.6




4.10


STC12C5410


引脚图





在图


4. 10


中,


P1.4~P1.7


为单片机 的


SPI


模块管脚,与之相对应的还有


SPI


模块的各种


寄存器和


SPI


传输的中断位。下面分别介绍。



1



SPI


控制寄存器


SPCTL


STC12C5410



SPI


模块只有一个是控制寄存器,地址为


85H


,复位后值为


00000100


< br>



D7


SSIG


D6


SPEN


D5


DORD



4.11


D4


MSTR


D3


CPOL


D2


CPHA


D1


SPR1


D0



SPR0


STC12C5410


的控制寄存器





4.3


为 该寄存器的各位的描述




4.3




D0




D1




D2


D3


D4


D5


D6


D7


符号



SPR0




SPR1


SPI


控制寄存器的位描述



描述



SPR0/SPR1


是时钟选择控制位



SPR1 SPR0


0 0 CPU_CLK/4


0 1 CPU_CLK /16


1 0 CPU_CLK/64


1 1 CPU_CLK/128


SPI


时钟相位选择位 (见


4.1


节)


SPI


时钟极性选择位(见


4.1


节)




/


从 模式选择(见


4.1


节)


< p>
SPI


数据顺序(同


4.1



LSBFE



< br>SPI


使能(同


4.1



SPE




分机选择 输出使能(同


4.1



SSOE




CPHA


CPOL


MSTR


DORD


SPEN


SSIG


说明:


SPI


传输协议最早为摩托罗拉公司制定的,但该协议并未成为国际标准 协议,故各器件厂


家并不是按摩托罗拉公司的


SPI

< p>
传输协议设计的


SPI


模块,而是有所差异。所以 ,介绍的


STC12C5410


单片机的寄存器与前面的协议介 绍有所不同。




2

< br>.


SPI


状态寄存器


SPSTA T


SPI


状态寄存器只有两个有效位,分别是


SPIF



WCOL


,如图< /p>


4.12


,地址为


84H


,复位


12


scrub-hala


scrub-hala


scrub-hala


scrub-hala


scrub-hala


scrub-hala


scrub-hala


scrub-hala



本文更新与2021-01-28 15:53,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/580306.html

第4章+SPI数据传输的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文