def __init__(self):
        self.__status = WheelDriver.STOPPED
        self.__right_wheel = Wheel(board.D2, board.D3)
        self.__left_wheel = Wheel(board.D4, board.D5)

        self.__speed = AnalogOut(board.A0)
        self.__speed.value = 55000
        self.__listener = None
Beispiel #2
0
# Trinket IO demo - analog output

import board
from analogio import AnalogOut

aout = AnalogOut(board.D1)

while True:
    # Count up from 0 to 65535, with 64 increment
    # which ends up corresponding to the DAC's 10-bit range
    for i in range(0, 65535, 64):
        aout.value = i
Beispiel #3
0
    'batt-voltage': 0x10,
    'current': 0x11,
    # 'temp1': 0x12,
    'temp2': 0x13,
    'set-current': 0x20,
    'set-power': 0x21,
}

MODE = 'idle'

# Pinouts
uart = UART(TX, RX, baudrate=9600)  # UART
faultLed = DigitalInOut(D13)  # Fault LED
faultLed.direction = Direction.OUTPUT
vref = AnalogIn(A5)  # Voltage reference
mos = AnalogOut(A0)  # Mos signal (op-amp)
batt = AnalogIn(A2)  # Battery voltage
current = AnalogIn(A3)  # Current measure
# temp1 = AnalogIn(A1)
temp2 = AnalogIn(A4)  # Temperature measure 2

targetCurrent = 0
targetPower = 0

watchdog = 0
output = 0


def getVoltage(pin):
    return (pin.value / vref.value) * 2.5
    # return pin.value / (2**16) * 3.3
# SPDX-FileCopyrightText: 2017 Limor Fried for Adafruit Industries
#
# SPDX-License-Identifier: MIT

# CircuitPython IO demo - analog output

import board
from analogio import AnalogOut

aout = AnalogOut(board.A0)

while True:
    # Count up from 0 to 65535, with 64 increment
    # which ends up corresponding to the DAC's 10-bit range
    for i in range(0, 65535, 64):
        aout.value = i
import digitalio
import pulseio
from analogio import AnalogIn, AnalogOut
import board
import time
from simpleio import map_range
import neopixel as neo

import microcontroller  # for checking CPU temperature
import gc  # for checking memory capacity

# ### Setup ###
# CV input and meter output
cv_pin = AnalogIn(board.A2)
scale_pin = AnalogIn(board.A3)
meter_pin = AnalogOut(board.A0)

# Feather battery voltage monitor
battery_pin = AnalogIn(board.VOLTAGE_MONITOR)

# on-board activity indicator (when moving the meter needle)
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT

# GPIO for pwm indicators
neg_led = pulseio.PWMOut(board.D5)  # negative red LED
pos_led = pulseio.PWMOut(board.D6)  # positive green LED
amber_led = pulseio.PWMOut(board.D9)  # absolute value amber LED

# piezo speaker (PWM output)
piezo = pulseio.PWMOut(board.D10, duty_cycle=0, frequency=440, variable_frequency=True)
Beispiel #6
0
# Setup button(s)
leftButton = DigitalInOut(board.BUTTON_A)
leftButton.direction = Direction.INPUT
leftButton.pull = Pull.DOWN

rightButton = DigitalInOut(board.BUTTON_B)
rightButton.direction = Direction.INPUT
rightButton.pull = Pull.DOWN

slideSwitch = DigitalInOut(board.SLIDE_SWITCH)
slideSwitch.direction = Direction.INPUT
slideSwitch.pull = Pull.UP

# Setup analog
triggerIn = AnalogIn(board.A1)
triggerOut = AnalogOut(board.A0)


def GetVoltage(pin):
    voltage = (pin.value * 3.3) / 65536
    # print (str(voltage))
    return voltage


def MakeRedLeft():
    for p in range(pixelCount / 2):
        pixels[p] = (255, 0, 0)
    return True


def MakeBlueLeft():
Beispiel #7
0
from adafruit_seesaw.seesaw import Seesaw

from analogio import AnalogOut

i2c_bus = busio.I2C(SCL, SDA)

# This is the plant sensor
ss = Seesaw(i2c_bus, addr=0x36)

# This is our light
led = neopixel.NeoPixel(board.NEOPIXEL, 1)
led.brightness = 1.0

#This is our pump
motor = AnalogOut(board.A0)


# Define our functions
def turn_on_led(color):
    led.brightness = 0.5
    led[0] = color


def turn_off_led():
    led.brightness = 0.0


def turn_on_pump():
    global loops_since_last_ran
    if loops_since_last_ran > 180:
import time
import board
import audioio
from analogio import AnalogIn, AnalogOut
from digitalio import DigitalInOut, Direction, Pull
import neopixel
#initialize all ten LEDs and their brightness
led = neopixel.NeoPixel(board.NEOPIXEL, 10)
led.brightness = 0.3
#set analog input/output, only used in first iteration
analog_in = AnalogIn(board.A2)
analog_out = AnalogOut(board.A0)

# enable the speaker to play audio file
spkrenable = digitalio.DigitalInOut(board.SPEAKER_ENABLE)
spkrenable.direction = digitalio.Direction.OUTPUT
spkrenable.value = True

audiofiles = ["Go.wav", "Huskies.wav"]


def get_voltage(pin):
    return (pin.value * 3.3) / 65536


def play_file(filename):
    wave_file = open(filename, 'rb')
    with audioio.WaveFile(wave_file) as wave:
        with audioio.AudioOut(board.A0) as audio:
            audio.play(wave)
            while audio.playing:
Beispiel #9
0
import adafruit_dotstar as dotstar
import time
import neopixel

# One pixel connected internally!
dot = dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1, brightness=0.2)

# Built in red LED
led = DigitalInOut(board.D13)
led.direction = Direction.OUTPUT

# Analog input on D0
analog1in = AnalogIn(board.D0)

# Analog output on D1
aout = AnalogOut(board.D1)

# Digital input with pullup on D2
button = DigitalInOut(board.D2)
button.direction = Direction.INPUT
button.pull = Pull.UP

# Capacitive touch on D3
touch = touchio.TouchIn(board.D3)

# NeoPixel strip (of 16 LEDs) connected on D4
NUMPIXELS = 16
neopixels = neopixel.NeoPixel(board.D4,
                              NUMPIXELS,
                              brightness=0.2,
                              auto_write=False)
Beispiel #10
0
import board #libraries
from analogio import AnalogOut

analog_out = AnalogOut(board.A0) #setup LED

abc = 1 #variables
power = 0
speed = 3

while True: #repeat

    if(abc):
        power += speed #power goes up
    else:
        power -= speed #and also down

    if(power >= 65000):
        abc = 0
    if(power <= 0): #this is the thing that decides whether power goes up or down
        abc = 1

    analog_out.value = power #run power through the LED
Beispiel #11
0
import time
import board
from digitalio import DigitalInOut, Direction, Pull
from analogio import AnalogOut

direction_pin = DigitalInOut(board.D0)
direction_pin.direction = Direction.OUTPUT
analog_out = AnalogOut(board.A0)

while True:
    time.sleep(1)
    print("hey")
    direction_pin.value = False
    analog_out.value = 43690
    time.sleep(0.01)
    analog_out.value = 0
Beispiel #12
0
import digitalio
import pulseio
from analogio import AnalogIn, AnalogOut
import board
import time
from simpleio import map_range
import adafruit_dotstar as dotstar  # Trinket

import microcontroller  # for checking CPU temperature
import gc  # for checking memory capacity

# ### Setup ###
# analog inputs and meter output
probe_pin = AnalogIn(board.A4)
test_pin = AnalogIn(board.A2)
meter_pin = AnalogOut(board.A0)
meter_pin.value = 0  # Position the meter to zero

# on-board activity indicator (when moving the meter needle)
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT

# GPIO for pwm indicators
# neg_led = pulseio.PWMOut(board.D3)  # negative red LED
# pos_led = pulseio.PWMOut(board.D4)  # positive green LED
amber_led = pulseio.PWMOut(board.D3)  # absolute value amber LED

amber_led.duty_cycle = 65535  # turn on amber LED for general illumination

# on-board DotStar; low brightness
dot = dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1, brightness=0.1)
Beispiel #13
0
# meter.

# ### Setup ###
import digitalio
from analogio import AnalogIn, AnalogOut
import board
import time
from simpleio import map_range
import adafruit_dotstar as dotstar  # Trinket

import microcontroller  # for checking CPU temperature
import gc  # for checking memory capacity

# set up CV input and meter output
cv_pin = AnalogIn(board.A1)
meter_pin = AnalogOut(board.A0)

# set up red LED activity indicator (when moving the meter needle)
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT

# set up GPIO for polarity indicators
neg_led = digitalio.DigitalInOut(board.D0)   # red LED
neg_led.direction = digitalio.Direction.OUTPUT
zero_led = digitalio.DigitalInOut(board.D3)  # blue LED
zero_led.direction = digitalio.Direction.OUTPUT
pos_led = digitalio.DigitalInOut(board.D4)   # green LED
pos_led.direction = digitalio.Direction.OUTPUT

# set up DotStar as polarity indicator; low brightness
dot = dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1, brightness=0.1)
Beispiel #14
0
import board
import time
from analogio import AnalogOut

led = AnalogOut(board.A0)
inc = 32
val = 0

def clamp(n, minn, maxn):
    return max(min(maxn, n), minn)

while True:
    if val+inc >= 65535 or val+inc < 0:
        inc = -inc
        clamp(val, 0, 65535)
    val = val + inc
    led.value = val
Beispiel #15
0
quote1 = audioio.WaveFile(open("Dempsey_1.wav", "rb"))
quote2 = audioio.WaveFile(open("Dempsey_2.wav", "rb"))
quote3 = audioio.WaveFile(open("Dempsey_3.wav", "rb"))
reloadOpen = audioio.WaveFile(open("Reload_Open.wav", "rb"))
reloadClose = audioio.WaveFile(open("Reload_Close.wav", "rb"))

trigger = DigitalInOut(board.D11)
trigger.direction = Direction.INPUT
trigger.pull = Pull.UP

sensor = DigitalInOut(board.D12)
sensor.direction = Direction.INPUT
sensor.pull = Pull.UP

pot_read = AnalogIn(board.A2)
galv_out = AnalogOut(board.A1)

barrel_open = False  #set boolean value for if the barrel is open
hallstate = barrel_open  #set boolean for the hallstate
trigger_count = 0  #init trigger pull counter
ct = 0  #init ct value


def get_mode(
        mode):  #define get_mode funtion with | mode parameter comes from pot
    if mode <= 100:  #if parameter is less than or = 100
        barrel.fill((15, 100, 175))  #prep barrel pixels to blue
        barrel.show()  #show color
    elif mode > 100 and mode <= 200:  #else if parameter is between 100 and 201
        barrel.fill((0, 255, 0))  #prep barrel pixels as green
        barrel.show()  #show color
Beispiel #16
0
# This program uses the board package to access the Trinket's pin names
# and uses adafruit_dotstar to talk to the LED
# other boards would use the neopixel library instead

import time
import board
import adafruit_dotstar
import supervisor
from analogio import AnalogIn
from analogio import AnalogOut

# define pins

adc_pin = AnalogIn(board.D0)
dac_pin = AnalogOut(board.A0)

# setup initial state

# ADC

adc_running = False
adc_delay = 1.0
adc_mode = "raw"

# DAC

dac_running = False
dac_level = 30000
dac_pin.value = 0
Beispiel #17
0
# Assignment 1 Led Fade

import board
from analogio import AnalogOut
import time
import neopixel

yeet = 0  #Power
yote = 1  #Bool
pin = 13  #Pin

analog_out = AnalogOut(board.A0)

while True:
    if (yote == 1):  # fade in
        yeet += 10

    if (yote == 0):
        yeet -= 10  # fade out

    if (yeet >= 65000):
        yote = 0
    if (yeet <= 0):  # range of light
        yote = 1

    analog_out.value = yeet
from simpleio import map_range
import adafruit_ssd1306  # OLED wing
import neopixel as neo  # on-board NeoPixel
import microcontroller  # for checking CPU temperature
import gc  # for checking memory capacity

# ### Setup ###
i2c = busio.I2C(board.SCL, board.SDA)
oled = adafruit_ssd1306.SSD1306_I2C(128, 32, i2c)
oled.fill(0)
oled.show()

# analog inputs and meter output
probe_pin = AnalogIn(board.A4)
test_pin = AnalogIn(board.A3)
meter_pin = AnalogOut(board.A0)
meter_pin.value = 0  # Position the meter to zero

# on-board activity
led = digitalio.DigitalInOut(board.D13)
led.direction = digitalio.Direction.OUTPUT
led.value = True

# GPIO for pwm indicators
# neg_led = pulseio.PWMOut(board.D5)  # negative red LED
# pos_led = pulseio.PWMOut(board.D6)  # positive green LED
amber_led = pulseio.PWMOut(board.D9)  # absolute value amber LED
amber_led.duty_cycle = 32000  # turn on amber LED for general illumination

# piezo speaker (PWM output)
piezo = pulseio.PWMOut(board.D10,
Beispiel #19
0
#Vann Wellmon
#Mr.H
#LED Fade
import board #gives the board functionality
from analogio 
import AnalogOut #allows you to output pwm via alanlog pins
analog_out = AnalogOut(board.A0) #pin A0
while True: #essesialy a void loop
    for i in range(0, 65535, 1): #counts from 0 to 65535 and then writes it to the LED
        analog_out.value = i
    for j in range(65535, 0, -1): #counts from 65535 down to 0 and then writes it to the LED
        analog_out.value = j
Beispiel #20
0
# Trinket IO demo
# Welcome to CircuitPython 3.1.1 :)

import board
from digitalio import DigitalInOut, Direction, Pull
from analogio import AnalogOut, AnalogIn
import touchio
import time

import adafruit_dotstar as dotstar
# One pixel connected internally!
dot = dotstar.DotStar(board.APA102_SCK, board.APA102_MOSI, 1, brightness=0)
dot[0] = (0, 0, 0)

# Analog output on D1
aout = AnalogOut(board.D1)

# Capacitive touch on D3
touch = touchio.TouchIn(board.D3)

# extra ground for motor board
motorGnd = DigitalInOut(board.D0)
motorGnd.direction = Direction.OUTPUT
motorGnd.value = 0

#print("STARTING PURRTY CAT")

PURR_INCREMENT = 25
PURR_DECREMENT = 200
PURR_MINIMUM = 175 * 256
PURR_MAXIMUM = 185 * 256  # must have space for 16 bit value