本文档介绍 ADC
的概念,以及 OpenHarmony
中 Python
的 ADC
接口。Waffle NanoV1
的 ADC
模块具有以下功能特点:
ADC
的英文全称是Analog / Digital Converter
,是将模拟信号转换为数字信号的转换器,ADC是单片机读取传感器信号的常见方式。 ADC
接口定义了完成ADC
传输的通用方法集合,包括:
ADC
初始化ADC
采样数据 有7个引脚有ADC
功能,分别对应ADC
的7个通道。(注意,在Waffle Nano
中 9
、10
号引脚作为与板载传感器沟通的主要线路,3
,4
号引脚作为REPL
的主要线路,这四个引脚已被使用,无法用作别的功能)
引脚 | 功能 |
---|---|
pin 12 | ADC0 |
pin 4 | ADC1 |
pin 5 | ADC2 |
pin 7 | ADC3 |
pin 9 | ADC4 |
pin 11 | ADC5 |
pin 13 | ADC6 |
使用 from machine import ADC
导入 machine
模块的模数转换类 ADC
再使用 TAB
按键来查看 ADC
中所包含的内容:
>>>from machine import ADC
>>>ADC.
read EQU_MODEL_1 EQU_MODEL_2 EQU_MODEL_4
EQU_MODEL_8 EQU_MODEL_BUTT equ
下面的宏定义用于配置pin,也就是将对应编号的真实的管脚配置成输入或者输出或者其他模式。
宏定义 | 含义 |
---|---|
ADC.EQU_MODEL_1 | 平均算法的采样次数为1次 |
ADC.EQU_MODEL_2 | 平均算法的采样次数为2次 |
ADC.EQU_MODEL_4 | 平均算法的采样次数为4次 |
ADC.EQU_MODEL_8 | 平均算法的采样次数为8次 |
ADC.EQU_MODEL_BUTT | 平均算法的采样次数阀值 |
class machine.ADC(channel)
可传入参数:
channel
:ADC通道示例:
>>> from machine import ADC,Pin
>>> adc=ADC(Pin(7)) #将Pin 7 设置为ADC
在接下来的示例中, 构造ADC
对象adc来列举其函数。
adc=ADC(Pin(7))
adc.equ(mode)
函数说明:设置平均算法采样次数,返回True代表设置成功。
mode :
示例:
>>> from machine import ADC,Pin
>>> adc=ADC(Pin(7)) #将Pin 7 设置为ADC
>>> adc.equ(ADC.EQU_MODEL_8) #设置ADC平均算法的采样次数为8次
True
默认电压为3.3V
,引脚不可能超过管脚电压3.3v。
adc.read()
函数说明:进行ADC
采样,返回采样数据
示例:
>>>from machine import ADC,Pin
>>>adc=ADC(Pin(7)) #将GPIO 7 设置为ADC
>>>adc.read()#采样
996
将waffle nano
的一些GPIO
引脚设置成ADC
,看其电压变化如何。
from machine import ADC,Pin
adc=ADC(Pin(7))
adc.equ(ADC.EQU_MODEL_8)
adc.read()
machine
模块的硬件类 Pin
和数模转换类 ADC
waffle nano
7号引脚设置为默认的GPIO
功能,并作为参数创建为 ADC
对象ADC
的平均计算的采样次数为 8
次Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарий ( 0 )