This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] ADS1220:我需要ads1220 SPI模式代码

Guru**** 2392435 points
Other Parts Discussed in Thread: ADS1220

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/620936/ads1220-i-want-the-ads1220-spi-mode-code

部件号:ADS1220

您好,  

我想 连接ATSAMD21G18A MCU和ADS1220。

我激活 了ATSAMD21G18A的SPI。但我需要ADC的代码(使用ADS1220)。请任何人都可以发送代码,为什么因为我在获得 一个伪代码时阅读了ADS1220的数据表, 基于此,我正在编写代码,因为我无法理解 下面突出显示的内容,请任何人帮助我解决此问题

通电;
μs电源稳定和通电重置完成的延迟(最小50 μ s);
将微控制器的SPI接口配置为SPI模式1 (CPOL = 0,CPHA = 1);
如果CS引脚未永久连接到低电平,请将连接到CS的微控制器GPIO配置为
输出;
将连接到DRDY引脚的微控制器GPIO配置为下降边缘触发中断
输入;
将CS设为设备低;
至少延迟TD (CSSC);
发送reset命令(06h)以确保设备在通电后正确复位;
至少50 μs + 32·t (CLK)的延迟;
使用WREG命令(43h,08h,04h,10h和00h)编写相应的寄存器配置;
作为可选的健全性检查,使用REG命令(23h)读回所有配置寄存器;
发送启动/同步命令(08h)以在连续转换模式下开始转换;
至少延迟运输司(SCCS);
将CS清除为高(重置串行接口);
循环

等待DRDY向低位过渡;
降低CS;
至少延迟TD (CSSC);
发送24个SCLK上升边缘以读取DOUT/DRDY上的转换数据;
至少延迟运输司(SCCS);
清除CS至高;
}
降低CS;
至少延迟TD (CSSC);
发送powerdown命令(02h)停止转换并将设备置于断电模式;
至少延迟运输司(SCCS);
清除CS至高;

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Venkatesh,

    欢迎参加论坛!  启动过程显示为伪代码的一个原因是许多处理器变化。  某些处理器具有SPI外设,而其他处理器则需要使用GPIO进行位惊叹处理。  我们确实有一些MSP430处理器的通用功能代码,可在此处找到:

    http://www.ti.com/lit/zip/sbac227

    WREG命令在ADS1220数据表的第36页的8.3 .5.6 部分中进行了说明。  在伪代码示例中,突出显示 的命令是0x43,它解码为WREG命令,从寄存器0开始,写入4个寄存器。  其余数据是写入寄存器的数据。

    要读取转换结果,可以发出RDATA,也可以在DRDY从高到低转换后发出24个SCLK来直接读取结果。  对于大多数SPI外围设备,这需要向SPI传输缓冲区写入(或分配)一个值。  发送数据后,返回的数据将位于接收缓冲区中。  可以写入传输缓冲区的伪字节为0xFF。  

    此致,

    Bob B