]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - examples/generic_aio.py
analog input sine wave
[Adafruit_Blinka-hackapet.git] / examples / generic_aio.py
index 926cbc8148fdb5345a775707410599e4d413983a..5b1a0330e6bbebcd8339e295aa5f07f77e67e011 100644 (file)
@@ -2,8 +2,55 @@ import pytest
 import board
 import analogio
 
+sine_wave = [
+    0,
+    31,
+    59,
+    81,
+    95,
+    100,
+    95,
+    81,
+    59,
+    31,
+    0,
+    -31,
+    -59,
+    -81,
+    -95,
+    -100,
+    -95,
+    -81,
+    -59,
+    -31,
+]
+
 def test_ax_input_rand_int():
   assert board.board_id == "GENERIC_AGNOSTIC_BOARD"
   pin_random = analogio.AnalogIn(board.Ax_INPUT_RAND_INT)
+
   assert isinstance(pin_random.value, int)
+
   pin_random.deinit()
+
+def test_ax_input_fixed_int_pi():
+  assert board.board_id == "GENERIC_AGNOSTIC_BOARD"
+  pin_pi = analogio.AnalogIn(board.Ax_INPUT_FIXED_INT_PI)
+
+  assert pin_pi.value == 31415
+
+  pin_pi.deinit()
+
+def test_ax_input_sine_wave():
+  assert board.board_id == "GENERIC_AGNOSTIC_BOARD"
+  pin_sine_wave = analogio.AnalogIn(board.Ax_OUTPUT_WAVE_SINE)
+
+  # Run through the sine wave once
+  for i in range(len(sine_wave)):
+    assert pin_sine_wave.value == sine_wave[i]
+
+  # Run through the sine wave again to ensure it loops back correctly
+  for i in range(len(sine_wave)):
+    assert pin_sine_wave.value == sine_wave[i]
+
+  pin_sine_wave.deinit()