diff options
| author | Daniel Campora <daniel@wipy.io> | 2015-09-14 20:03:32 +0200 |
|---|---|---|
| committer | Daniel Campora <daniel@wipy.io> | 2015-09-16 10:10:38 +0200 |
| commit | 22b4c28f854bb2066a0d7471b50f9e00e1363239 (patch) | |
| tree | eeedc24a49a3f8c5a3cfa8fe0eed83a7788c9584 /tests/wipy/adc.py | |
| parent | 0e52d9860adc2d3d7328c649f3b6995ffc04fc63 (diff) | |
cc3200: New ADC API.
Diffstat (limited to 'tests/wipy/adc.py')
| -rw-r--r-- | tests/wipy/adc.py | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/tests/wipy/adc.py b/tests/wipy/adc.py new file mode 100644 index 000000000..50a2b3d72 --- /dev/null +++ b/tests/wipy/adc.py @@ -0,0 +1,116 @@ +''' +ADC test for the CC3200 based boards. +''' + +from pyb import ADC +from pyb import Pin +import os + +machine = os.uname().machine +if 'LaunchPad' in machine: + adc_pin = 'GP5' + adc_channel = 3 +elif 'WiPy' in machine: + adc_pin = 'GP3' + adc_channel = 1 +else: + raise Exception('Board not supported!') + +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): + adc = ADC() + apin = adc.channel(adc_channel) + +# next ones should raise +try: + adc = ADC(bits=17) +except: + print('Exception') + +try: + adc = ADC(id=1) +except: + print('Exception') + +try: + adc = ADC(0, 16) +except: + print('Exception') + +adc = ADC() +try: + apin = adc.channel(4) +except: + print('Exception') + +try: + apin = adc.channel(-1) +except: + print('Exception') + +try: + apin = adc.channel(0, pin='GP3') +except: + print('Exception') + +apin = adc.channel(1) +apin.deinit() +try: + apin() +except: + print('Exception') + +try: + apin.value() +except: + print('Exception') + +adc.deinit() +try: + apin.value() +except: + print('Exception') + +try: + apin = adc.channel(1) +except: + print('Exception') + +# re-init must work +adc.init() +apin.init() +print(apin) +print(apin() > 3000) |
