欢迎光临散文网 会员登陆 & 注册

STM32 HAL库 模拟SPI驱动 ADS1118

2021-05-28 09:47 作者:僚机Wingplane  | 我要投稿

首先是SPI相关的简介:

    然后是用STM32CubeMx初始化模拟SPI的引脚:

    STM32CubeMx的GPIO输入输出的配置可以参考:

    我所用到的四个输出口分别对应ADS1118上的三个SPI通信口。

    SYNC:PA4

    SCLK:PA5

    DOUT:PA6

    DIN:PA7

    在具体的应用中可以自行修改头文件中的GPIO口以配合硬件完成工程。

    ADS1118 datasheet

https://www.ti.com.cn/lit/gpn/ads1118

    ADS1118 数据手册

https://www.ti.com.cn/cn/lit/gpn/ads1118

        由上面的信息我们可以知道ADS1118是上升沿触发,此外它有两种通讯模式分别是一段32位和两段16位。

上面这张表是ADS1118中的16位寄存器各个位数对应的信息

Reserved :  [0] 转换完成标志

NOP : [1:2] 无操作

PULL_UP_EN : [3] 上拉使能

TS_MODE : [4] 温度传感器模式

DR :  [7:5] 数据传输速率

MODE :  [8] 设备运行模式

PGA :  [11:9] 可编程增益放大器配置

MUX :  [14:12] 输入多路复用器配置

 SS :  [15] 操作状态或单次转换开始



user_ads1118.h

配合硬件修改对应的IO口

user_ads1118.c

    24位从高到低通过移位的方法依次发出,发送这24位前我们需要先拉低CS,在发送完成后再拉高。

    注意:由于是下降沿触发因此我们需要先移位再拉低时钟

使用示例

参考文献:

关于ADS1118的调试笔记(基于STM32):

https://blog.csdn.net/Hgrjtz/article/details/105664562

16-bit, 860-SPS, 4-channel, delta-sigma ADC with PGA, oscillator, VREF, temp sensor and SPI:

https://www.ti.com.cn/cn/lit/ds/symlink/ads1118.pdf


STM32 HAL库 模拟SPI驱动 ADS1118的评论 (共 条)

分享到微博请遵守国家法律