打印
[牛人杂谈]

M051的串行外围设备接口(SPI)控制器

[复制链接]
984|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
16串行外围设备接口(SPI)控制器                 
16.1 概述
SPI是英文“Serial Peripheral Interface”的缩写,中文意思是串行外围设备接口,SPIMotorola公司推出的一种同步串行通讯方式,是一种三线同步总线,因其硬件功能很强,与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。
SPI接口是Motorola 首先提出的全双工三线同步串行外围接口,采用主从模式(Master Slave)架构;支持多slave模式应用,一般仅支持单Master。时钟由Master控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSB first);SPI接口有2根单向数据线,为全双工通信,目前应用中的数据速率可达几Mbps的水平。
SPI接口主要应用在 EEPROMFLASH、实时时钟、AD转换器,还有数字信号微控制器和数字信号解码器之间。SPI是一种高速的、全双工、同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议,比如ATMEGA16LPC2142S3C2440
   SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)也是所有基于SPI的设备共有的,它们是MISO(数据输入)、MOSI(数据输出)、SCK(时钟)、CS(片选)。
串行外围设备接口(SPI)是一个工作于全双工模式下的同步串行数据通讯协议。设备通过4线双端接口工作于主机/从机模式进行通讯。NuMicro M051系列包括最多2SPI控制器,将从外设接收到的数据进行串并转换, 或将要发送到外设的数据进行并串转换。每组SPI控制器都可被设置成主机;也可设置为被片外主机设备控制的从机。

16.2 特性
l 最多两组SPI控制器
l 支持主/从机模式
l 可配置比特长度,一个传输字最多可达32比特;可配置的传输字数,一次最多可传输2个字,所以一次数据传输的最大比特长度是64比特
l 支持burst操作模式,在一次传输过程中,发送/接收可执行两次字传输
l 支持MSB LSB 优先传输
l 字节或字休眠模式  
l 主机模式下可输出多种串行时钟频率
l 主机模式下支持两个可编程的串行时钟频率

SPI通信有以下特点:
① 主机控制具有完全的主导地址。它决定着通信的速度,也决定着何时可以开始和结束一次通信,从机只能被动响应主机发起的传输。
② SPI通信是一种全双工高速的通信方式。从通信的任意一方来看,读操作和写操作都是同步完成的。
③ SPI的传输始终是在主机控制下,进行双向同步的数据交换。



沙发
mintspring|  楼主 | 2017-2-22 19:07 | 只看该作者

16.3 功能
    主机/从机模式 SPI控制器可通过设置SLAVE (SPI_CNTRL[18])被配置为主机或从机模式,来与片外SPI从机或主机设备通讯。在主机模式与从机模式下的应用框图如图16.3-1和图16.3-2所示。


16.3-1 SPI主机模式应用框图



16.3-2 SPI主机模式应用框图
l 从机选择
在主机模式下,SPI控制器能通过从机选择输出脚SPISS驱动一个片外从机设备。从机模式下,片外的主机设备驱动从机选择信号通过SPISS输入到SPI控制器。在主机/从机模式下,从机选择信号的有效电平可以在SS_LVL(SPI_SSR[2])被编程为低有效或高有效,SS_LTRIG (SPI_SSR[4])配置从机选择信号SPISS 为电平触发或边沿触发。触发条件的选择取决于所连接的外围从机/主机的设备类型

l 从机选择
    在主机模式下,SPI控制器能通过从机选择输出脚SPISS驱动一个片外从机设备。从机模式下,片外的主机设备驱动从机选择信号通过SPISS输入到SPI控制器。在主机/从机模式下,从机选择信号的有效电平可以在SS_LVL(SPI_SSR[2])被编程为低有效或高有效,SS_LTRIG (SPI_SSR[4])配置从机选择信号SPISS 为电平触发或边沿触发。触发条件的选择取决于所连接的外围从机/主机的设备类型。

…………………………

使用特权

评论回复
板凳
mintspring|  楼主 | 2017-2-22 19:07 | 只看该作者
书籍下载地址(复制到下载工具进行下载):



http://files.cnblogs.com/wenziqi/ARMCortex-M0原理与应用实践.part1.rar



http://files.cnblogs.com/wenziqi/ARMCortex-M0原理与应用实践.part2.rar

使用特权

评论回复
地板
734774645| | 2017-2-22 20:28 | 只看该作者
SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)也是所有基于SPI的设备共有的,它们是MISO(数据输入)、MOSI(数据输出)、SCK(时钟)、CS(片选)。

使用特权

评论回复
5
稳稳の幸福| | 2017-2-22 20:44 | 只看该作者
SPI应该是全双工的,可以双向同时传输。一般三根线就行了,实际上完整的功能需要4跟线。

使用特权

评论回复
6
yiyigirl2014| | 2017-2-22 21:46 | 只看该作者
通过四线制,可以控制好多个SPI从机了。

使用特权

评论回复
7
643757107| | 2017-2-25 17:31 | 只看该作者
可以用于存储字库文件,一般用的存储颗粒就是这种SPI的,新唐有不少。

使用特权

评论回复
8
643757107| | 2017-2-25 17:59 | 只看该作者
组SPI控制器都可被设置成主机;也可设置为被片外主机设备控制的从机。

使用特权

评论回复
9
dongnanxibei| | 2017-2-25 21:27 | 只看该作者
M051系列包括最多2组SPI控制器,将从外设接收到的数据进行串并转换, 或将要发送到外设的数据进行并串转换。每组SPI控制器都可被设置成主机;也可设置为被片外主机设备控制的从机。

使用特权

评论回复
10
gejigeji521| | 2017-2-26 16:08 | 只看该作者
根据SS的指向也可以确定谁是从机,SS的箭头都是由主机指向从机,这个就是选择信号。

使用特权

评论回复
11
598330983| | 2017-2-26 20:25 | 只看该作者
这些两三跟线的协议都被人研究透了。用M051的硬件收发器很容易操作,用IO也很容易模拟。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

282

主题

4813

帖子

24

粉丝