标题:
STM32中的DFSDM应用介绍
[打印本页]
作者:
掘金小分队
时间:
2017-4-25 11:45
标题:
STM32中的DFSDM应用介绍
前言
STM32超低功耗系列中基于Cortex M4内核的STM32L4系列芯片内部
集成了
DFSDM
数字滤波模块,配合
Σ-Δ
器件的使用,可进行高精度、高速率的
AD
测量。这里就
DFSDM做些基本介绍,并结合STM32L4 MCU做一个实例应用演示。
应用系统框图
系统被分为两部分:
STM32
外部的模拟前端
Σ-Δ
模块
和内置的数字部分
DFSDM
模块。
DFSDM
是
STM32
产品内置的一个新的数字外设,通常搭配外部的
Σ-Δ
器件使用。可根据相应的应用选择外部的模拟部分,进行测量、马达控制等应用。模拟部分提供串行数据给
DFSDM
,
DFSDM
负责对数字信号进行处理。
DFSDM
数字部分集成了模拟看门狗、注入和常规转换、灵活的触发系统、中断信号生成、极值检测等。
Σ-Δ
模块
输入模拟信号。
输出
1
位或
2
位的快速串行数字信号,可达
20MHz
速率。
广泛的厂商支持:
ST, TI,Analog Devices。
DFSDM= Digital Filter for Sigma Delta Modulators
从
Σ-Δ
模块接收串行数据
对接收到的
Σ-Δ
模块数据进行滤波
最大
24
位的输出精度
典型应用
电信号测量:电流、电压等。
马达控制
医疗应用
麦克风音频
STM32 DFSDM
架图如下:
收发器
快速串行输入
(20MHz)
SPI
或曼切斯特编码模式
时钟生成
内部并行输入
由
CPU/DMA
写入的
16
位寄存器数据输入
收发器提供串行连接到外部
Σ-Δ
模块,支持
SPI
、曼切斯特协议。收发器也支持通过
CPU
或
DMA
写入到
DFSDM
数据寄存器的内部
16
位并行数据输入,
滤波器
Sinc1
,
Sinc2
,
Sinc3
,
Sinc4
,
Sinc5
,
FastSinc
内插滤波器,过采样因子可达
1024.
积分器过采样因子可达
1024
STM32 DFSDM
应用框图如下:
整个
DFSDM
模块包含如下接口
:
8
个串行收发器
4
个
Sinc
滤波器和积分器
4
个输出数据单元
4
个模拟看门狗
8
个短路检测器
4
个极值检测器
8
个并行数据进入寄存器
串行收发器
功能
从
Σ-Δ
模块接收
1
位的串行数据,提供时钟和数据给滤波阶段,最大支持
8
个输入串行通道。
支持的协议
1
线曼切斯特编码
SPI
模式
(
时钟和数据线
)
上升沿、下降沿采样
数据速率测量
时钟缺失检测
时钟速率高达
20MHz
串行输入
(
时钟和数据
)
通道的
DFSDM_DATINy
和
DFSDM_CKINy
引脚可被重定向,通道重定向用于收集来自立体麦克风类型的
PDM
音频数据,
PDM
立体麦克风具有时钟和数据信号,数据通道提供左右声道信息,左声道进行时钟上升沿采样,右声道进行时钟下降沿采样。
并行收发器
功能
从内部数据源接收
16
位的并行数据,并提供数据给滤波阶段。多达
8
个并行通道。
内部并行输入数据源
RAM
数据后期处理
来自内部
ADC
的数据处理
来自被收集数据的后期处理数据
CPU
或者
DMA
提供数据到
DFSDM
输入寄存器
利用STM32 DFSDM进行
温度测量的应用原理图如下:
作者:
掘金小分队
时间:
2017-4-25 11:46
STPMS2是一个双通道的二阶Σ-Δ模块,一个通道感知PT100的电压,另一个通道感知PT100的电流。使用1秒定时器来触发2个通道进行注入扫描转换。PC7(DFSDM1_DATIN3)是通道3,时钟为PC2(DFSDM1_CKOUT)。通道3测量PT100的电压,通道2测量PT100的电流。
PT100温度计算公式为:T = (PT100 – 100) / (0.385),只要通过能够测量出PT100的电压和电流,就能计算出PT100电阻值,进而得到温度值。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0