本帖最后由 林堪堪 于 2022-3-14 19:45 编辑
SPI(SerialPeripheral interface)是一种由Motorola最先推出的同步串行传输协议。SPI是一种高速、全双工、同步的通信总线,使用简单高效。 I2S (Inter-IC Sound)总线,又称集成电路内置音频总线,是Philips为数字音频设备之间的音频数据传输而制定的一种总线标准。I2S是一种同步、半双工的信总线。AT32部分型号增加了全双工功能及对应引脚,具体请本文参考I2S全双工章节。 AT32控制器的大部分型号都是SPI和I2S共用SPI接口,根据软件编程配置来选择SPI还是I2S功能。本文分别介绍了SPI和I2S的几种模式/协议,配置流程和使用案例。
目录如下,更多内容可下载附件。
1 SPI接口概述.. 6 2 SPI功能介绍.. 7 2.1 SPI硬件接口... 7 2.2 SPI数据接收和发送... 8 2.3 SPI时序... 9 2.4 SPI数据接收/发送方式... 11 2.4.1 轮询方式... 11 2.4.2 中断方式... 11 2.4.3 DMA方式... 11 2.5 时钟控制器... 11 2.5.1 极性... 11 2.5.2 相位... 11 2.5.3 分频系数... 12 2.6 CS管理... 12 2.7 CRC校验... 13 2.8 TI模式(TI SSP协议)... 14 2.9 SPI错误... 14 2.9.1 CSPAS-- CS脉冲异常置位标志... 15 2.9.2 ROERR--接收器溢出错误标志... 15 2.9.3 MMERR--主模式错误标志... 15 2.9.4 CCERR--CRC校验错误标志... 15 2.10 SPI中断... 15 3 I2S功能介绍.. 17 3.1 I2S硬件接口... 17 3.2 I2S数据接收和发送... 17 3.3 I2S音频协议... 17 3.4 I2S帧格式... 18 3.5 I2S时钟控制器... 19 3.5.1 I2S采样率(Fs)... 19 3.5.2 I2S时钟(CK)和主时钟(MCK)... 19 3.6 I2S全双工... 19 3.6.1 AT32F435/F437的I2S全双工... 20 3.6.2 AT32F425的I2S全双工... 20 3.7 I2S错误... 20 3.7.1 ROERR--接收器溢出错误标志... 20 3.7.2 TUERR--发送器欠载错误标志位... 21 3.8 I2S中断... 21 4 SPI案例... 22 4.1 案例1-- SPI全双工轮询方式通信... 22 4.1.1 功能简介... 22 4.1.2 资源准备... 22 4.1.3 软件设计... 22 4.1.4 实验效果... 22 4.2 案例2-- SPI全双工DMA方式通信... 22 4.3 案例3-- SPI只收通信... 22 4.4 案例4-- SPI半双工中断方式通信... 22 4.5 案例5-- SPI 半双工中断方式通信--加收发切换... 23 4.6 案例6-- SPI CRC功能使用... 23 4.7 案例7-- SPITI模式使用(TISSP协议)... 23 4.8 案例8-- SPI读写FLASH(W25Qxxx)... 23 5 I2S案例... 24 5.1 案例1-- I2S半双工DMA方式通信... 24 5.2 案例2-- I2S半双工中断方式通信... 24 5.3 案例3—AT32F435/F437 I2S全双工DMA方式通信... 24 5.4 案例4—AT32F425 I2S全双工DMA方式通信... 24 5.5 案例5-- I2S和SPI功能切换通信... 24
|