合宙Air系列开发板官方demo学习(一):ADC功能

电子说

1.2w人已加入

描述

medlar

基础资料

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

上手:开发上手 - LuatOS 文档

探讨重点

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

ADC简介

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

硬件准备

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

AIR

软件版本

AIR103:LuatOS@AIR103 base 22.10 bsp V0013

测试demo:adcdemo 1.0.0

软件使用

接口文档可参考:ADC库

接线原理图

AIR

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.37KOmega,电压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的目的。

根据官方解答:

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

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

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分