1.5 haas506 2.0开发教程-driver-ADC


B站haas开发教程 B站教学视频链接

最新案例教程点击下方链接跳转,CSDN已停止更新

点击跳转HaaS506官方最新案例







1.硬件图

在这里插入图片描述

2.板载ADC

(1)案例说明

  • ADC(analog to digital conversion) 模拟数字转换。意思就是将模拟信号转化成
    数字信号,常见的应用就是将变化的电压转成数字信号。
  • Haas506开发板有一个ADC接口,本案例使用板载ADC引脚进行电压测量。

(2)main.py

# coding=utf-8
# This is a sample Python script.
from driver import ADC
import utime as time
print("-------------------start adc test--------------------")
adc0 = ADC()
adc1=ADC()
for i in range(100):
    time.sleep(2)
    adc0.open("ADC0")
    adc1.open("ADC1")
    value0=adc0.readVoltage()
    value1=adc1.readVoltage()
    # value2 = adc1.getHwParam()
    value3 = adc1.readRaw()
    print("values of adc0 and adc1 ",value0,value1)
    print(value3)
    time.sleep(1)
    adc0.close()
    adc1.close()
print("-------------------end adc test--------------------")



(3)board.json

{
"version": "2.0.0",
"io": {
    "ADC0": {
            "type": "ADC",
            "port": 0,
            "sampling": 12000000
        },
    "ADC1": {
              "type": "ADC",
              "port": 1,
              "sampling": 12000000
        }
    },
"debugLevel": "ERROR"
}

(4)输出日志

  • 打开串口工具可以看到输出内容
  • 使用导线接触开发板ADC引脚(对照硬件图),电压发生变化
-------------------start adc test--------------------

[14:08:33.129]收←◆values of adc0 and adc1  269 291
0

[14:08:36.129]收←◆values of adc0 and adc1  269 294
0

[14:08:39.129]收←◆values of adc0 and adc1  269 293
0

[14:08:42.128]收←◆values of adc0 and adc1  269 294
0

[14:08:45.129]收←◆values of adc0 and adc1  271 293
0

[14:08:48.144]收←◆values of adc0 and adc1  271 294
0

[14:08:51.128]收←◆values of adc0 and adc1  271 293
0
...
-------------------end adc test---------------------

4.Class-ADC函数库

openclosereadVoltagereadRaw
打开ADC关闭ADC读取采集到电压数据读取采集到原始值

ADC
实例化
adc = ADC()

参数:无
返回:ADC对象成功,返回ADC对象;ADC对象创建失败,抛出ENOMEN异常

ADC.open(nodeName)

函数功能:根据board.json中设备节点的配置打开ADC设备
参数说明:是一个字符串,需要在board.json中预先定义设备节点的名称,例如“ADC1”。
返回值:打开ADC设备成功返回0;打开ADC设备失败返回失败错误码

ADC.close()

函数功能:关闭数模转换设备,需确保要关闭的ADC处于open状态
参数说明:无
返回值:关闭ADC设备,成功返回0;失败返回失败错误码

ADC.readVoltage()

函数功能:读取ADC电压数据,需确保此ADC处于open状态
参数说明: 无
返回值:读取成功则返回读取到的电压值;负数代表读取数据失败

ADC…readRaw()

函数功能:读取ADC原始数据,需确保此ADC处于open状态
参数说明: 无
返回值:读取成功则返回读取到的原始值;负数代表读取数据失败

5.总结

本节介绍了如何使用haas506的driver库的ADC模块,进行数据测量。注意所测得的数据的单位是mv(毫伏)。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值