【F28335】第16章 串行外设接口SPI

本文详细介绍了F28335中SPI接口的通用知识,包括SPI模块的结构、特点、工作方式、数据格式、传输速率、时钟配置、FIFO功能以及中断机制。重点讲解了主从工作模式的切换和如何禁用从机发送功能,以及如何计算不同SPIBRR配置下的数据传输速率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目前接触过的SPI接口,连接的外设有FLASH和EEPROM。
存储芯片有支持不同总线访问的类型。

简述

  • SPI = Serial Peripheral Interface
  • 在开发F28335时,有时候可能需要扩展一些外围设备,例如,觉得F28335内部12位的ADC精度不够,想要外扩一个串行高精度的ADC,或者向外扩EEPROM、LCD显示驱动器、网络控制器、DAC等,就需要用到F28335的串行外围设备接口SPI。
  • SPI是一种高速的同步串行输入/输出接口,允许1~16位的数据流在设备与设备间进行交换。
  • 通常用于DSP与外围设备或者DSP与其他控制器之间进行通信。
  • 本章介绍以下内容:
    • 介绍SPI接口通用的一些基本知识
    • 详细介绍F28335内部SPI的结构、特点、中断、工作方式等内容

16.1 SPI模块的通用知识

  • SPI是同步通信,SCI是异步通信。

    • 同步通信:通信双方的设备必须拥有相同的时钟脉冲,以相同的频率进行数据传输。
    • 异步通信:通信双方的设备拥有独立的时钟脉冲,可以独自进行数据传输,就像两个人在散步,各走各的。
  • SPI接口一般使用4根线。当然并不是所有的SPI接口都采用四线制,有的SPI接口带有中断信号线INT,而有的SPI接口没有主机输出/从机输入线MOSI。

  • F28335中的SPI采用四根线的方式。

    线路名称 线路作用
    SCK 串行时钟线
    MISO 主机输入/从机输出线
    MOSI 从机输入/主机输出线
    CS 低电平有效的从机选择线
  • SPI的通信原理:
    在这里插入图片描述

    • SPI以主从方式进行工作,这种模式的通信系统中通常有一个主设备,多个从设备。CS信号用来控制从机的芯片是否被选中。从机只有通过CS信号被选中之后,对此从机的操作才会有效。
    • 片选信号的存在,使得同一总线上可以挂载多个SPI设备。
    • 当从机被选中,和主机建立连接后,接下来起作用的就是负责通信的3根线。
    • SPI采用串行通信协议,即通信时数据是一位一位进行传输的。
    • 传输时,由SCK时钟信号提供时钟脉冲,当M1给S1发送数据时,数据在时钟脉冲的上升沿或者下降沿通过M1的MOSI引脚发送,在紧接着的下降沿或者上升沿通过S1的MOSI引脚接收。
    • SCK信号只由主设备控制,从设备不能控制时钟信号线。
    • 在一个SPI通信系统中,必须有一个主控设备,其向整个SPI系统提供时钟信号,系统内所有的设备都基于这个时钟脉冲进行数据的接收和发送,所有SPI是同步串行通信接口。
    • 在点对点的通信中,SPI接口不需要寻址操作,且为全双工通信,因此显得高效简单。
    • 在多个从设备的系统中,每个设备都需要独立的使能信号,硬件上比I2C系统稍微复杂一些。
    • SPI是环形总线结构,在SCK时钟信号的控制下,两个双向移位寄存器SPIDAT进行数据交换。
      在这里插入图片描述
    • 假如主机M1与从机S1进行通信,主机的8位寄存器SPIDAT1内的数据是10101010,而从机的8位寄存器SPIDAT2内的数据是01010101,在时钟脉冲上升沿的时候发送数据,在下降沿的时候接收数据,最高位的数据先发送,主机和从机之间进行全双工通信,即两个SPI接口同时接收发送数据。
    • SPIDAT移位寄存器总是将高位的数据移出,接着将剩余的数据分别左移一位,然后将接收到的数据移入其最低位。
    • 如图16-3所示,当时钟脉冲第一个上升沿来的时候,SPIDAT1将最高位1移出,并将剩余所有的数据左移一位,这时主机的MOSI引脚为高电平1,而SPIDAT2将最高位0移出,并将剩余所有的数据左移一位,这时从机的MOSI引脚为低电平0。然后,当时钟脉冲下降沿来的时候,SPIDAT1将锁存主机MISO引脚上的电平,也就是从机发出的低电平0,并将数据0移入其最低位,同样,SPIDAT2将锁存从机MISO引脚上的电平,也就是主机发出的高电平1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值