micropython/tests/ports/cc3200/adc.py

116 wiersze
1.6 KiB
Python
Czysty Zwykły widok Historia

"""
2015-09-14 18:03:32 +00:00
ADC test for the CC3200 based boards.
"""
2015-09-14 18:03:32 +00:00
2015-09-27 11:45:48 +00:00
from machine import ADC
2015-09-14 18:03:32 +00:00
import os
2015-09-27 11:45:48 +00:00
mch = os.uname().machine
if "LaunchPad" in mch:
adc_pin = "GP5"
2015-09-14 18:03:32 +00:00
adc_channel = 3
elif "WiPy" in mch:
adc_pin = "GP3"
2015-09-14 18:03:32 +00:00
adc_channel = 1
else:
raise Exception("Board not supported!")
2015-09-14 18:03:32 +00:00
adc = ADC(0)
print(adc)
adc = ADC()
print(adc)
adc = ADC(0, bits=12)
print(adc)
apin = adc.channel(adc_channel)
print(apin)
apin = adc.channel(id=adc_channel)
print(apin)
apin = adc.channel(adc_channel, pin=adc_pin)
print(apin)
apin = adc.channel(id=adc_channel, pin=adc_pin)
print(apin)
print(apin.value() > 3000)
print(apin() > 3000)
# de-init must work
apin.deinit()
print(apin)
adc.deinit()
print(adc)
print(apin)
adc.init()
print(adc)
print(apin)
apin.init()
print(apin)
print(apin() > 3000)
# check for memory leaks...
for i in range(0, 1000):
2015-09-14 18:03:32 +00:00
adc = ADC()
apin = adc.channel(adc_channel)
# next ones should raise
try:
adc = ADC(bits=17)
except:
print("Exception")
2015-09-14 18:03:32 +00:00
try:
adc = ADC(id=1)
except:
print("Exception")
2015-09-14 18:03:32 +00:00
try:
adc = ADC(0, 16)
except:
print("Exception")
2015-09-14 18:03:32 +00:00
adc = ADC()
try:
apin = adc.channel(4)
except:
print("Exception")
2015-09-14 18:03:32 +00:00
try:
apin = adc.channel(-1)
except:
print("Exception")
2015-09-14 18:03:32 +00:00
try:
apin = adc.channel(0, pin="GP3")
2015-09-14 18:03:32 +00:00
except:
print("Exception")
2015-09-14 18:03:32 +00:00
apin = adc.channel(1)
apin.deinit()
try:
apin()
except:
print("Exception")
2015-09-14 18:03:32 +00:00
try:
apin.value()
except:
print("Exception")
2015-09-14 18:03:32 +00:00
adc.deinit()
try:
apin.value()
except:
print("Exception")
2015-09-14 18:03:32 +00:00
try:
apin = adc.channel(1)
except:
print("Exception")
2015-09-14 18:03:32 +00:00
# re-init must work
adc.init()
apin.init()
print(apin)
print(apin() > 3000)