ADS8331手册驱动开发

发布于:2025-07-17 ⋅ 阅读:(19) ⋅ 点赞:(0)


1. 系统框架

ADS8331是一款低功耗、16比特分辨率500ksps采样率4通道的模数转换器。
在这里插入图片描述
其特点如下所示:

  • 2.7-5.5V模拟电压供电
  • 在AUTO-NAP模式下功耗低至8.7mW(250ksps,VA=2.7V,VBD=1.65V)
  • 14.2mW(500ksps,VA=2.7V,VBD=1.65V)
  • 500ksps采样率
  • 4通道采样
  • 24PIN

2. 引脚定义

在这里插入图片描述
在这里插入图片描述值得注意的就几个引脚,CONVST,EOC,CS,RESET,SDI,SDO,SCLK。
CONVST:转换开始标志
EOC:状态输出,转换过程中EOC是一直为低的,这个引脚也可以编程为INT中断信号。如果编程为INT信号,在转换后引脚会拉低并在cs拉低后拉高
CS:片选信号,低有效,没啥好说的
RESET:ADC复位信号,高有效
SDI:可以理解为SPI接口的MISO
SDO:MOSI,SPI接口
SCLK:SPI时钟

3. 时序

重要的时序来了,时序图如下:
在这里插入图片描述
这是ADC的采样时序,手动触发模式
在这里插入图片描述这是ADC的转换时序,自动触发模式

两种触发模式都可以采集数据,但是我只实现了手动触发的时序,自动触发的时序一直读取不了正确的数据,具体原因我i也不知道为什么。然后要想实现ADC驱动,必须要按照时序进行开发,SCLK的时钟频率最高为40MHz,转换信号CONVST拉低至少40ns。

3. 寄存器映射表

这款ADC的寄存器不是很多,分为CMR和CFR寄存器,CMR寄存器是4位,CFR是12位。
寄存器表如下;
在这里插入图片描述

3.1 CMR寄存器

  1. 0000:选择通道0
  2. 0001:选择通道1
  3. 0010:选择通道2
  4. 0011:选择通道3
  5. 1100:读CFR寄存器
  6. 1101:读数据
  7. 1110:写CFR寄存器

3.2 CFR寄存器

在这里插入图片描述
D11:手动/自动通道选择
D10:CCLK时钟来源选择,可以选SCLK或者内部时钟
D9:手动/自动触发模式选择
D8:采样率选择,可选500ksps/250ksps
D7:选择EOC引脚定义,EOC或者INT
D6:EOC的极性,低还是高
D5:EOC输出还是CDI输入
D4:AUTO-NAP模式使能
D3:
D2:
D1:TAG标志位,可以用来指示通道ID,三位
D0:软复位,拉低复位

4. 总结

整个介绍大概就这样吧,重点还是在时序和时序图上面,驱动开发最难的就是在于调试,一个时序图要debug很久才能得到正确的结果,希望后面能实现自动触发模式下的adc数据采集,好了,内容大概就这些了,希望大家喜欢我的文章,为我多多支持,我会努力更新的!


网站公告

今日签到

点亮在社区的每一天
去签到