模拟IO ========= OpenMV有一个模拟I / O引脚(P6),可用作ADC输入或DAC输出。以下是如何使用它来读取0V和3.3V之间的电压值:: import pyb adc = pyb.ADC(pyb.Pin('P6')) while(True): pyb.delay(10) # wait 10 ms print("%f volts" % (((adc.read() * 3.3) + 2047.5) / 4095)) # read value, 0-4095 ADC具有12位分辨率,所以它将输出0到4095之间0到3.3伏的值。最后,请注意,当引脚处于ADC模式时,它不再是5V容限。 接下来,要产生模拟输出电压,您可以将I / O引脚置于DAC模式:: import pyb, math dac = pyb.DAC(pyb.Pin('P6')) counter = 0 while(True): pyb.delay(10) # wait 10 ms dac.write(int(math.sin(math.radians(counter % 360)) * 255)) counter += 1 上面的代码在I / O引脚上产生一个正弦波,从0到255变为0到3.3伏。再一次请注意,当引脚处于DAC模式时,它不再是5V的容限。