Пример #1
0
    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
Пример #2
0
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:
Пример #3
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
Пример #4
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
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)
Пример #6
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
Пример #7
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():
Пример #8
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
Пример #9
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
Пример #10
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
Пример #11
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: