Skip to content

Latest commit

 

History

History
227 lines (147 loc) · 5.94 KB

README_zh-Hans.md

File metadata and controls

227 lines (147 loc) · 5.94 KB

English | 简体中文 | 繁體中文 | 日本語 | Deutsch | 한국어

LibDriver ADS1115

MISRA API License

ADS1115是德州仪器公司推出的一款超小封装、低功耗、拥有IIC总线接口、16位转换精度,拥有内部电压参考和可编程电压比较器的模数转换芯片。该芯片被应用于便携式采集设备、电池电压电流监控、温度测量系统、消费类电子产品以及工厂自动化与过程控制。

LibDriver ADS1115是LibDriver推出的ADS1115的全功能驱动,该驱动提供连续模式模数转换、单次模式模数转换,多通道采样切换,可编程电压比较器等功能并且它符合MISRA标准。

目录

说明

/src目录包含了LibDriver ADS1115的源文件。

/interface目录包含了LibDriver ADS1115与平台无关的IIC总线模板。

/test目录包含了LibDriver ADS1115驱动测试程序,该程序可以简单的测试芯片必要功能。

/example目录包含了LibDriver ADS1115编程范例。

/doc目录包含了LibDriver ADS1115离线文档。

/datasheet目录包含了ADS1115数据手册。

/project目录包含了常用Linux与单片机开发板的工程样例。所有工程均采用shell脚本作为调试方法,详细内容可参考每个工程里面的README.md。

/misra目录包含了LibDriver MISRA代码扫描结果。

安装

参考/interface目录下与平台无关的IIC总线模板,完成指定平台的IIC总线驱动。

将/src目录,您使用平台的接口驱动和您开发的驱动加入工程,如果您想要使用默认的范例驱动,可以将/example目录加入您的工程。

使用

您可以参考/example目录下的编程范例完成适合您的驱动,如果您想要使用默认的编程范例,以下是它们的使用方法。

example basic

#include "driver_ads1115_basic.h"

uint8_t res;
uint8_t i;
float s;

res = ads1115_basic_init(ADS1115_ADDR_GND, ADS1115_CHANNEL_AIN0_AIN1);
if (res != 0)
{
    ads1115_interface_debug_print("ads1115: basic init failed.\n");         

    return 1;

}

...

for (i = 0; i < 3; i++)
{
    res = ads1115_basic_read((float *)&s);
    if (res != 0)
    {
        ads1115_interface_debug_print("ads1115: basic read failed.\n");
        (void)ads1115_basic_deinit();

        return 1;
    }
    ads1115_interface_debug_print("ads1115: adc is %0.4fV.\n", s);
    ads1115_interface_delay_ms(1000);
    
    ...

}

...
    
(void)ads1115_basic_deinit();

return 0;

example shot

#include "driver_ads1115_shot.h"

uint8_t res;
uint8_t i;
float s;

res = ads1115_shot_init(ADS1115_ADDR_GND, ADS1115_CHANNEL_AIN0_AIN1);
if (res != 0)
{
    ads1115_interface_debug_print("ads1115: shot init failed.\n");         

    return 1;

}

...
    
for (i = 0; i < 3; i++)
{
    res = ads1115_shot_read((float *)&s);
    if (res != 0)
    {
        ads1115_interface_debug_print("ads1115: shot read failed.\n");
        (void)ads1115_shot_deinit();

        return 1;
    }
    ads1115_interface_debug_print("ads1115: adc is %0.4fV.\n", s);
    ads1115_interface_delay_ms(1000);
    
    ...

}

...
    
(void)ads1115_shot_deinit();

return 0;

example interrupt

#include "driver_ads1115_interrupt.h"

uint8_t res;
uint8_t i;
float s;

uint8_t gpio_interrupt_callback(void)
{
    ...
}

res = ads1115_interrup_init(ADS1115_ADDR_GND, ADS1115_CHANNEL_AIN0_AIN1,
                            ADS1115_COMPARE_THRESHOLD, 1.1f, 1.8f);
if (res != 0)
{
    ads1115_interface_debug_print("ads1115: interrupt init failed.\n");         

    return 1;

}
res = gpio_interrupt_init();
if (res != 0)
{
    (void)ads1115_interrupt_deinit();
                    

    return 1;

}

...
    
for (i = 0; i < 3; i++)
{
    res = ads1115_interrupt_read((float *)&s);
    if (res != 0)
    {
        ads1115_interface_debug_print("ads1115: interrupt read failed.\n");
        (void)ads1115_interrupt_deinit();

        return 1;
    }
    ads1115_interface_debug_print("ads1115: adc is %0.4fV.\n", s);
    ads1115_interface_delay_ms(1000);
    
    ...

}

...

(void)ads1115_interrupt_deinit();

return 0;

文档

在线文档: https://www.libdriver.com/docs/ads1115/index.html

离线文档: /doc/html/index.html。

贡献

请参考CONTRIBUTING.md。

版权

版权 (c) 2015 - 现在 LibDriver 版权所有

MIT 许可证(MIT)

特此免费授予任何获得本软件副本和相关文档文件(下称“软件”)的人不受限制地处置该软件的权利,包括不受限制地使用、复制、修改、合并、发布、分发、转授许可和/或出售该软件副本,以及再授权被配发了本软件的人如上的权利,须在下列条件下:

上述版权声明和本许可声明应包含在该软件的所有副本或实质成分中。

本软件是“如此”提供的,没有任何形式的明示或暗示的保证,包括但不限于对适销性、特定用途的适用性和不侵权的保证。在任何情况下,作者或版权持有人都不对任何索赔、损害或其他责任负责,无论这些追责来自合同、侵权或其它行为中,还是产生于、源于或有关于本软件以及本软件的使用或其它处置。

联系我们

请联系[email protected]