当前位置: 首页 > news >正文

温度、电压、外部信号采集,ADC帮你全搞定

今天,我们将分享Air8000系列工业引擎内置的ADC接口及其demo示例,带你体验简单高效的LuatOS应用开发。

一、模数转换ADC

ADC模拟/数字转换器,是指将连续变量的模拟信号转换为离散的数字信号的器件。

硬件产品中的ADC接口主要用来检测模拟电压信号量,用于电池电压检测、温湿度检测、TDS检测等应用。

1.1 ADC接口简介

以Air8000A工业引擎为例,提供了丰富且实用的ADC资源,可满足大多数物联网应用需求。

  • 精度:12bits

  • 数量:4个ADC接口(ADC0 ~ ADC3)

  • 两个特殊通道:

    CPU内部温度Temp : -- adc.CH_CPU

    主供电脚电压VBAT : -- adc.CH_VBAT

1.2 输入电压范围

重要安全提醒:
外接输入电压切勿超过量程,否则可能烧毁模组;设置分压(adc.setRange)要在adc.open之前设置,否则无效。

主流模组软件上,对ADC都可以配置ADC_RANGE_MAX和ADC_RANGE_MIN两种量程。

对Air8000系列工业引擎来说:

  • adc.ADC_RANGE_MIN:
    对应量程为0-1.5V;

  • adc.ADC_RANGE_MAX:
    对应量程为0-3.6V。

当被测电压≤1.5V :

使用adc.ADC_RANGE_MIN;

当1.5V<被测电压≤3.6V :
使用adc.ADC_RANGE_MAX,无需添加外部分压电路;

当被测电压>3.6V:
使用ADC_RANGE_MIN,且必须添加外部分压电路。

测量电压相关的函数主要有两个:
adc.read(id):读取adc通道计算值;
adc.get(id):获取adc计算值。

二、ADC功能示例demo

本示例主要用于实现ADC通道配置与量程设置,数据采集并处理,循环打印处理过的ADC数据。

示例教程使用Air8000开发板+两个Air9000P(直流电源)进行演示;外部输入电压在3.6V以内,需要外部电源与模组共地,保持参考电压一致。

2.1 代码要点解析

核心功能代码如下,完整demo详见源码仓库最新文件。

1)读取adc外部输入模拟电压

通过adc.get(id)读取4个普通ADC接口的外部输入模拟电压;首先设置量程,然后打开ADC通道0,进行采样循环,将获取到的输入模拟电压值存入数组,接下来关闭ADC通道0,最后进行数据处理、打印。

2)读取供电电压

通过adc.get(adc.CH_VBAT)读取VBAT电压:

3)读取CPU温度

通过adc.get(adc.CH_CPU)读取CPU温度:

4)数据处理函数

当通道样本数大于2时,先对样本升序排序并剔除首尾极值,计算剩余样本的平均值,最后根据标签(如CPU温度或电压)格式化输出带单位的处理值及总样本数,否则记录样本不足。

2.2 示例运行结果

参考实操教程搭建好硬件环境,使用Luatools工具给Air8000开发板烧录相关内核固件和demo脚本代码。烧录成功后,自动开机运行。

通过Luatools工具查看相关日志,如下图示:

2.3 应用场景拓展

本示例简单演示了如何读取ADC输入电压、读取供电电压、读取CPU温度,除此之外,ADC可以将各种连续变化的模拟信号(如温度、湿度、压力、电压、电流等)转换为离散的数字信号。

Air8000系列工业引擎模块内部ADC精度12bits,对常见应用已经足够,如温湿度传感器、压力传感器、音频信号处理等。

对于需要更高精度的应用:
可以外挂更高精度的ADC,如16位、24位等。使用过程中需注意量程范围,不可超出量程。

今天的内容就分享到这里了

http://www.jsqmd.com/news/355817/

相关文章:

  • Claude opus4.6调研分析|agent teams|16 个 Claude 实例自主构建 C 编译器|agent的未来!
  • 不到3块钱的PCB贴片天线,解决“玄学”困扰
  • 一个G-Sensor,搞定GNSS定位静态漂移+智能低功耗控制
  • Embedding文本向量模型
  • Windows 下 AI IDE/CLI 规则加载实测:硬链接能解决什么,不能解决什么
  • 中车株州所显示器界面设计
  • NetExec 全模块使用手册
  • 《HTTP黑客指南:深入解析请求与响应的每个细节》
  • CSS 编写与管理范式 - Tailwind和CSS-in-JS
  • 基于BiLSTM双向长短期记忆神经网络的轴承剩余寿命预测MATLAB实现
  • 如何求解射线与线段最近的点
  • 2026什么品牌的电饭煲好?热门机型选购指南 - 品牌排行榜
  • 第十四课:Redis 在后端到底扮演什么角色?——缓存模型全景图
  • 第十四课 · 实战篇:Redis 缓存系统落地指南(Spring Boot 从 0 到可用)
  • P2004 领地选择
  • 2026电压力锅哪个牌子质量好?真实用户口碑推荐 - 品牌排行榜
  • 2026高性价比茅台镇酱酒推荐:好喝不贵的茅香佳酿 - 速递信息
  • 2026电饭煲什么牌子的好用质量好?实测推荐 - 品牌排行榜
  • 2026电压力锅哪个牌子最好最安全?口碑推荐榜 - 品牌排行榜
  • 第 167 场双周赛 / 第 471 场周赛 - 实践
  • 2026国产算力新周期:DeepSeek实战适配英伟达H200,引领大模型训练效率跃升
  • uni-app——uni-app Tab切换导致页面报错的问题排查与解决
  • 从 RestTemplate 到 OpenFeign,再到 WebClient/RestClient:Spring 调用链的进化与最佳实践
  • uni-app—— uni-app 小程序页面栈超限导致跳转失败的解决方案
  • SW零件绘制之旋转实体
  • OLEDB连接对象介绍(一) - 实践
  • uni-app——uni-app 小程序 Loading 遮罩卡死页面的排查与最佳实践
  • SpeedrunEthereum
  • 2026养生壶最建议买的品牌推荐及选购参考 - 品牌排行榜
  • 游戏大厂 FPS 射击游戏高精度物理同步方案详解(大白话、生动版)