时序图如下:
我如果用3.3V供电,测试单通道,那么我能测到3.3V及以下的电压,SPI发送并且会回应我数据,3.3V都很正常。
但是我的电路要求是5V供电并且检测1~4.5V的电压,测试单通道,此时我的SPI设置电平为3.3V或者5V,SPI的发送和接收数据就变得好奇怪。
我换过3颗ads1118了,但是情况都是一样的。
一、这是3.3V供电,spi电平为3.3V,检测电压3V,在这里电压检测为3V,正常,如图:
二、这是5V供电,spi电平为3.3V,检测电压3V…
大家好,
我的需求是检测: 电压检测(0~5 V)和电流检测(4-20mA),如果我用ADS1118 这颗ADC芯片,可以直接用这个芯片检测吗,不需要加外部运放吧?因为看下面这个量程图可以设置为6.144V,是可以满足我们的需求的,谢谢各位的解答。
如果不加外部运放,会有什么影响吗?
hi 大家好,
目前想测试这块ADC模块的静态参数以及动态参数,静态参数包括:DNL INL offset error 等 ,动态参数 包括: THD SINAD ENOB SNR SFDR等,现在不知道如何测试,想问以下几点:
1. 需要哪些设备来测试?
2. 测试步骤有哪些?
3. 测试流程呢?
4. 怎么看测试结果是否和datasheet一致?ADS1118 ADC.pdf
我用的是STM32F407来配置ADS1118的驱动程序,硬件SPI,ADS1118的配置为0x8883(连续模式,AIN0和AIN1差分输入,+/-0.512V,128SPS,ADC模式)。AIN0和AIN1为两路输入信号,当差分电压为0.129V时,经常输出就是一个定值:36802(有时为其他的定值),主程序里面一直进行AD读取。希望各位大大能够帮忙看看,已经研究了好多天了,还是这样子。一直找不到原因。
…大家好!请教一个问题
我有一个应用需要测试-45~350度,工作环境噪声也很大。
我现在选ads1118+热电偶,我测试了K型热电偶,用TI提供的驱动没有问题,但是我选K型热电偶是发现,很多厂商都是K型热电偶的负温线性不好。
我们问题是ads1118可以支持T型热电偶吗?
或者有没有更好的方案。
谢谢!
我的邮箱1362289237@qq.com,烦请发一下,谢谢
最大的问题是当CS被拉低的时候,DOUT直接被拉高。导致读出来的数全部都为1.一直不理解这个是什么原因,求解答
ADS1118是上电之后,先选中芯片,将CS拉低,直接送配置字,然后拉高CS。再就是直接读数据?
SPI_CS_Low(); //拉低CS
SPI_Write_byte(0x85);
SPI_Write_byte(0x83);
SPI_CS_High(); //拉高CS
SPI_CS_Low();
Data_H=SPI_Rec_byte(); //读高字节
Data_L=SPI_Rec_byte…
1. 单端采样模式
两次采样之间,我需要做多少延迟?
调试过程中发现,延迟设置少了后,采样从一个通道切换到另外一个通道后,采样到的值却是前一个通道采样到的值。
2.关于差分采样模式
满量程范围和相应LSB 的大小如上图。
当使用差分模式采样两个点的电压差, 调测时,两个点的电压差为0.420V。
当我从6.144V的量程往下调低量程时, 发现 量程越小, 测出来的值离0.420V误差越大,甚至差的很远更本就不准了…
转温度详情如下附件,查表,然后转温度
#include "msp430.h"
#include "lcd12864p.h"
#include "main.h"
uchar str2[6]={0};
void ADS1118_GPIO_Init(void)
{ //P1OUT |= 0x02; // Set P1.0 for LED
// Set P1.1 for slave reset
// P1DIR |…
具体接线是这样的,一个ADS1118接了两路差分。
1、我想确认一下,是不是在CS拉低的情况下当DOUT输出低电平,直接SPI送寄存器的值就可以读取相应两路的数据,比如改变寄存器mux 的选择端A0p1 或 A2p3就可以读取相应的差分值。
2、想知道初始化的时候是不是送寄存器A0P1就可以了,不需要再送A2P3.
我目前正在使用ADS1118这个芯片,通过SPI读取内部温度传感器发现读取的温度比实际环境温度要高出4-5℃,请问这个可能是什么原因导致的呢?有没有相关的解决方案?谢谢!
进行高低温测试,其他温度情况下,ADC测试温度比环境温度高2~6度,但在-25度附近(±5°),ADS1118读取的温度却比环境温度小3~4度,而且此时测量的电压数据也比其他条件下高10mv左右。这是什么原因造成的?该如何处理呢?
代码如下:
/************************************************************************ADS1118驱动程序头文件******************************************************…
您好:
我们项目中想使用ADS1118这颗ADC,看到资料中提到内置了电压基准,请问该基准输出电平是多少V,另精度是多少?非常感谢!
程序如下,我直接用LCD12864显示转换的结果
//main.c
#include "sys.h"
#include "usart.h"
#include "ads1118.h"
#include "lcd12864.h"
#include "delay.h"
int main(void)
{
ADS1118_Init();
本人想通过stm32利用ADS1118(SPI)进行四路数据的采集,在参考网上的程序时,已经可以采集AIN0的数据。但是利用ADS_InitStructure.stru.MUX = 5/6/7;时,却不能采集AIN1/AIN2/AIN3的数据,请问可能是什么原因呢?谢谢了!
需要多通道ADC采集,发现使用单通道的时候可以正确的读出每个通道的ADC值,如果程序中采集多个通道的电压,就会发现通道错位的情况,比如通道0上的电压到通道1上,通道1上的电压值到通道2上,或者通道2的电压到通道0,2上。CPU用的是MSP430F6638,调试了一下感觉是程序的问题,请专家看一下是什么情况,谢谢!
void __DELAY(u32 n)
{
u32 m=4*n;
while(m…
ADS1118读取内部温度传感器温度值偏高,相对实际板上的温度偏高几度,这样正常吗,有什么原因导致偏高呢?
你好,我用了一个ADS1118!
IO口定义如下
//SPI1_CS PA4
//SPI1_SCK PA5
//SPI1_MISO PA6
//SPI1_MOSI PA7
uint8_t SPI1_SendByte(uint8_t byte)
{
/* 循环检测发送缓冲区是否是空 */
while(SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET)
请问ADS1118是直接一上来就给写字节,默认写的字节是到控制寄存器吗。还有是在写完之后,立马就可以读数据。还有读回来的应该是32位的数据吗?读的时候每次先读的是结果寄存器的两个字节的数据,然后是控制寄存器的数据吗?