合宙Air103|A/D转换器|ADC|官方demo|学习(1):ADC功能复现

基础资料

基于Air103开发板:🚗 Air103 - LuatOS 文档

上手:开发上手 - LuatOS 文档

探讨重点

对官方demo的复现,进行相关内容的学习及探讨。

ADC简介

模拟数字转换器即A/D转换器,或简称ADC,通常是指一个将模拟信号转变为数字信号的电子元件。通常的模数转换器是将一个输入电压信号转换为一个输出的数字信号。

硬件准备

Air103开发板1块,面包板1块,LED灯1个,105可调电位器1个,导线若干。

软件版本

AIR103:LuatOS@AIR103 base 22.10 bsp V0013

测试demo:adcdemo 1.0.0

接口介绍

接口文档可参考:ADC库

接线原理图

​​3v3电源采用开发板外供电源端口(17管脚)

核心代码

while 1 do
        adc.open(3) -- 模块上的ADC3脚-PA3, 0~2.4v,不要超过范围使用!!! 仅air103
        sys.wait(500)
        log.debug("adc", "adc3-read", adc.read(3))
        log.debug("adc", "adc3-get",  adc.get(3))
        sys.wait(500)
    end

测试过程

只使用ADC3,LED1引线前端加ESD器件(1K电阻),做分压保护。

采用数字万用板实测各部件分压的方法做对比。

测试结果

前端ESD器件,万用表实测995欧,工作分压4mv,LED(黄色)两端实测电压1.905V,电位器2.37K\Omega,电压1.346V。板载3v3接口(实测3.301V)。

结果: adc.read:2079,adc3-get:2078。

测试LOG数据片段

[2022-11-21 14:20:53.502] AT+RESET
[2022-11-21 14:20:53.502] 
[2022-11-21 14:20:53.502] OK
[2022-11-21 14:20:53.750] I/main auth ok 851042503039383735120079EE145606 AIR103
[2022-11-21 14:20:53.750] I/main LuatOS@AIR103 base 22.10 bsp V0013
[2022-11-21 14:20:53.750] I/main ROM Build: Oct 31 2022 11:22:26
[2022-11-21 14:20:53.750] D/main loadlibs luavm 180208 12184 12208
[2022-11-21 14:20:53.751] D/main loadlibs sys   12288 5184 5184
[2022-11-21 14:20:53.751] I/user.main	adcdemo	1.0.0
[2022-11-21 14:20:54.276] D/user.adc	adc3-read	113064	2078
[2022-11-21 14:20:54.276] D/user.adc	adc3-get	2078
[2022-11-21 14:20:55.286] D/user.adc	adc3-read	113068	2078
[2022-11-21 14:20:55.286] D/user.adc	adc3-get	2078
[2022-11-21 14:20:56.299] D/user.adc	adc3-read	113068	2078
[2022-11-21 14:20:56.299] D/user.adc	adc3-get	2078
[2022-11-21 14:20:57.307] D/user.adc	adc3-read	113063	2078
[2022-11-21 14:20:57.307] D/user.adc	adc3-get	2078
[2022-11-21 14:20:58.323] D/user.adc	adc3-read	113048	2078
[2022-11-21 14:20:58.323] D/user.adc	adc3-get	2079
[2022-11-21 14:20:59.317] D/user.adc	adc3-read	113065	2078
[2022-11-21 14:20:59.317] D/user.adc	adc3-get	2078
[2022-11-21 14:21:00.344] D/user.adc	adc3-read	113047	2078
[2022-11-21 14:21:00.344] D/user.adc	adc3-get	2078

结论

ADC3程序adc.read与adc3-get结果一致,开发版内部测试值与万用表实测值存在相关关系,达到了ADC的目的。

根据官方解答:

为什么用合宙开发板测试打印出来的电压值与实际用万用表测量的电压值误差较大?

由于标准开发板设计目的主要为了方便功能性演示,内部还没有做有相应的优化处理,需要客户在使用时,按照实际的板子走线,阻抗,以及压降等添加相应的压差补偿。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

打酱油的工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值