登录/注册

SPI采集ad7691数据

更多

使用SPI接口采集AD7691数据时,需遵循以下步骤和注意事项(中文详解):


一、AD7691关键特性


二、硬件连接(SPI四线制)

AD7691引脚 控制器引脚 说明
SDI MOSI 配置数据输入(某些模式下可固定接低)
SDO MISO 转换结果输出
SCK SCK SPI时钟
CNV GPIO 转换启动信号(上升沿触发采样)
REF 2.5V基准源 参考电压(建议用低噪REF5025)
VDD 5V/3.3V 电源(注意模拟/数字隔离)

? 注意CNV是独立于SPI的触发信号,需GPIO控制。


三、SPI配置要点

  1. 时序模式

    • CPOL = 1, CPHA = 1(SCK空闲为高,数据在第二个边沿采样)
    • 模式选择:
      • 模式1(默认)CNV上升沿采样,下次CNV上升沿输出数据。
      • 模式2:转换期间SDO保持高阻。
  2. 配置寄存器(16位)

    // 配置寄存器结构示例(MSB first)
    typedef struct {
     uint8_t REF_SEL    : 1;  // 0=内部REF,1=外部REF
     uint8_t INCC       : 3;  // 输入通道选择(000:单端0通道)
     uint8_t INX       : 2;  // 保留(通常置0)
     uint8_t BW        : 1;  // 0=全带宽,1=50%降噪
     uint8_t REF_BUF    : 1;  // 0=REF缓冲禁用,1=启用
     uint8_t SEQ       : 1;  // 0=单次转换,1=自动序列
     uint8_t ...        : 7;  // 其他位(根据需求设置)
    } AD7691_Config;

四、数据采集流程(代码示例-C语言)

// 步骤1:启动转换(CNV拉高)
GPIO_Set(CNV_PIN, HIGH);
delay_us(0.1); // 保持t_CONV时间(查手册,典型值~2.3us)

// 步骤2:SPI读取(先发配置字,再读结果)
uint16_t adc_config = 0x8000; // 示例配置字(MSB=1使能链式模式)
uint16_t adc_data = 0;

// 发送16位配置字(同时接收数据)
HAL_SPI_TransmitReceive(&hspi, 
                       (uint8_t*)&adc_config,
                       (uint8_t*)&adc_data,
                       2, // 数据长度(2字节)
                       100); // 超时时间

// 步骤3:结束转换(CNV拉低)
GPIO_Set(CNV_PIN, LOW);

// 处理数据(16位结果在adc_data中)
float voltage = (adc_data >> 2) * (2.5f / 16384.0f); // 右移2位后换算电压

⚠️ 关键点

  • AD7691输出数据为18位(16位有效数据 + 2位状态位),需右移2位处理。
  • 链式模式下:连续读取两个16位字(第一个是上一周期数据)。

五、常见问题处理

  1. 无数据输出
    • 检查CNV时序是否符合t_CNVH > 10ns(上升沿触发)
    • 确认SPI模式是否正确(CPHA=1, CPOL=1)
  2. 数据跳动大
    • 增加参考电压滤波电容(REF引脚接10μF+0.1μF)
    • 避免数字信号线与模拟线并行走线
  3. 时序冲突
    • CNV上升沿后等待t_ACQ(模拟采集时间)再启动SPI

六、官方文档重点

务必查阅AD7691 Datasheet

通过以上步骤,可稳定采集AD7691数据。实际调试建议用示波器抓取SCK/SDO/CNV波形验证时序匹配性。

AD7691:高性能18位差分ADC的技术解析与应用

AD7691:高性能18位差分ADC的技术解析与应用 在电子设计领域,模数转换器(ADC)是实现模拟信号到数字信号转换的关键器件。今天,我们来深入探讨一款高性能的18位差分ADC——AD7691

2026-04-02 11:20:06

AD7691读取的后4位总是0,请问可能是什么原因造成的?

我读取的18位AD7691,后4位总是0,请问可能是什么原因造成的。

2024-07-02 07:28:42

STM8 SPI外设采集外部AD芯片数据错位的原因?

AD7988-1与stm8的SPI进行通信时spi的MISO引脚处于拉高状态,在cnv引脚加入脉冲来使能AD采集,AD

2024-04-30 06:38:26

基于NCV7691_Typical Application通用发光二极管驱动器的参考设计

View the reference design for NCV7691_Typical Application. http://www.elecfans.com/soft/ has

资料下载 佚名 2021-07-11 15:16:18

EVAD7691 AD7691 评估套件

EVAL-AD7691CBZ是针对AD7691的全功能评估套件。此评估板可单独使用,也可与评估控制器板配合使用。配合评估控制器板使用时,用户可利用提供的软件对ADC进行详尽的性能分析。此软件还包括技术笔记,说明评估板

资料下载 张艳 2021-06-08 14:25:51

AD7691-EP:增强型产品数据

AD7691-EP:增强型产品数据表

资料下载 吴湛 2021-05-12 17:01:40

AD7691 FMC-SDP转接器和评估板/Xilinx KC705参考设计

AD7691 FMC-SDP转接器和评估板/Xilinx KC705参考设计

资料下载 无人岛 2021-04-21 14:29:23

AD7691: 18位、1.5 LSB INL、250 kSPS PulSAR差分ADC,采用MSOP或QFN封装

AD7691: 18位、1.5 LSB INL、250 kSPS PulSAR差分ADC,采用MSOP或QFN封装

资料下载 王树林 2021-03-19 03:05:09

AD7685+AD8275对标准模拟信号的采样,采样数据不稳定是什么原因造成的?

缩小0.2倍,提供给AD7685进行采样。 采集信号通过接口SPI 通过磁隔与MCU相接。采集电路,如附图如下: 另外,如果在AD8275 与

2023-11-20 07:28:46

NCV7691GEVK

EVALKITNCV7691G

2023-03-30 11:57:44

EVAL-AD7691-PMDZ

AD7691 Analog to Digital Converter (ADC) Data Acquisition Pmod™ Platform Evaluation Expansion Board

2023-03-30 11:49:47

EVAL-AD7691SDZ

BOARD EVAL FOR AD7691

2023-03-30 11:46:22

AD7691BRMZ是一款转换器

1970-01-01 08:00:00 至 1970-01-01 08:00:00

AD7691

AD7691 - 16-Bit, /-0.65 LSB INL, 500 kSPS PulSAR Differential ADC in MSOP/QFN - Analog Devices

2022-11-04 17:22:44

EVAL-AD7691 EVAL-AD7691评估板

电子发烧友网为你提供ADI(ti)EVAL-AD7691相关产品参数、数据手册,更有EVAL-AD7691的引脚图、接线图、封装手册、中文资料、

2021-08-31 19:00:03
7天热门专题 换一换
相关标签