[信息] 学习笔记+标准SPI模拟I2S接口

[复制链接]
1289|7
 楼主| tpgf 发表于 2019-12-24 12:00 | 显示全部楼层 |阅读模式
这里我描述了标准SPI(串行协议接口)和TIMER外设如何能够模拟I2S接口。在这里原理我就不赘述了,大家可以去官网下载资料查看,当时我就是按照资料上介绍的做的试验。


当时我用的采样频率是48KHZ,系统位数为16bit,通道数为2,根据计算公式I2S BITRATE = SAMPLE RATE × WIDTH × CHANNEL = 48000 × 16 × 2 = 1.536 Mbit/s.硬件连接如下图所示:

237395e018b23bbb9b.png

当时我使用UART进行的异步音频传输。使用UART流控制来管理数据交换机制,这样可以避免任何数据包丢失。如下所示:

952985e018c5049d5c.png


UART外设参数按照如下进行的配置:
UartHandle.Instance = USARTx;
UartHandle.Init.BaudRate = 460800;
UartHandle.Init.WordLength = UART_WORDLENGTH_8B;
UartHandle.Init.StopBits = UART_STOPBITS_1;
UartHandle.Init.Parity = UART_PARITY_NONE;
UartHandle.Init.HwFlowCtl = UART_HWCONTROL_RTS_CTS;
UartHandle.Init.Mode = UART_MODE_TX_RX;

上位机软件可以自己编写或者使用线程软件,官网文档中推荐的是Tera Term软件,需要注意的就是上位机的配置应与STM32 UART外设设置保持一致。




mmuuss586 发表于 2019-12-28 10:05 | 显示全部楼层
感谢分享
wowu 发表于 2020-1-17 14:38 | 显示全部楼层
非常感谢楼主分享
xiaoqizi 发表于 2020-1-17 14:49 | 显示全部楼层
非常感谢楼主分享
operating 发表于 2020-1-17 15:05 | 显示全部楼层
感谢分享,模拟通信接口的方式很多人用的
木木guainv 发表于 2020-1-17 15:08 | 显示全部楼层
非常感谢分享
guanjiaer 发表于 2020-1-17 15:23 | 显示全部楼层
非常感谢分享
heimaojingzhang 发表于 2020-1-17 15:27 | 显示全部楼层
非常感谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2384

主题

17636

帖子

21

粉丝
快速回复 在线客服 返回列表 返回顶部