Adafruit_Learning_System_Gu.../CPX_GBoard/universal/code.py
2021-08-25 15:46:43 -04:00

104 lines
2.7 KiB
Python

"""
Circuit Playground Express GBoard: universal/customizable version
Adafruit invests time and resources providing this open source code.
Please support Adafruit and open source hardware by purchasing
products from Adafruit!
Written by Dave Astels for Adafruit Industries
Copyright (c) 2018 Adafruit Industries
Licensed under the MIT license.
All text above must be included in any redistribution.
"""
# pylint: disable=unused-import
import time
from adafruit_circuitplayground.express import cpx
# Uncomment the next 2 lines if you want to use external buttons
# from digitalio import DigitalInOut, Direction, Pull
# import board
# Uncomment the next 3 lines if you want to use HID output
# from adafruit_hid.keyboard import Keyboard
# from adafruit_hid.keycode import Keycode
# import usb_hid
DOT_DURATION = 0.20
DASH_DURATION = 0.5
# You can adjust this to get the level of sensitivity you want.
# Uncomment the next line if you want to use capacitive touch.
# cpx.adjust_touch_threshold(100)
# Uncomment the next 6 lines if you want to use external buttons
# button_a = DigitalInOut(board.A4)
# button_a.direction = Direction.INPUT
# button_a.pull = Pull.UP
# button_b = DigitalInOut(board.A3)
# button_b.direction = Direction.INPUT
# button_b.pull = Pull.UP
# Uncomment the next line if you want to use HID output
# kbd = Keyboard(usb_hid.devices)
def touch_a():
# Uncomment the next line if you want to use the on-board buttons
# return cpx.button_a
# Uncomment the next line if you want to use capacitive touch
# return cpx.touch_A4
# Uncomment the next line if you want to use external buttons
# return not button_a.value
return False # a fail-safe to keep python happy
def touch_b():
# Uncomment the next line if you want to use the on-board buttons
# return cpx.button_b
# Uncomment the next line if you want to use capacitive touch
# return cpx.touch_A3
# Uncomment the next line if you want to use external buttons
# return not button_b.value
return False # a fail-safe to keep python happy
def dot():
# Uncomment the next 2 lines if you want tones played
# cpx.play_tone(4000, DOT_DURATION)
# time.sleep(0.1)
# Uncomment the next line if you want to use HID output
# kbd.send(Keycode.PERIOD)
pass # a fail-safe to keep python happy
def dash():
# Uncomment the next 2 lines if you want tones played
# cpx.play_tone(4000, DASH_DURATION)
# time.sleep(0.1)
# Uncomment the next line if you want to use HID output
# kbd.send(Keycode.MINUS)
pass # a fail-safe to keep python happy
while True:
if touch_a():
dot()
while touch_a():
pass
elif touch_b():
dash()
while touch_b():
pass