ADS8331手册
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寄存器
- 0000:选择通道0
- 0001:选择通道1
- 0010:选择通道2
- 0011:选择通道3
- 1100:读CFR寄存器
- 1101:读数据
- 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数据采集,好了,内容大概就这些了,希望大家喜欢我的文章,为我多多支持,我会努力更新的!