Ejemplo n.º 1
0
#!/usr/bin/env python

import time
import board
from adafruit_simplemath import map_range
import adafruit_pcf8591.pcf8591 as PCF
from adafruit_pcf8591.analog_in import AnalogIn
from pythonosc import udp_client


sender = udp_client.SimpleUDPClient("127.0.0.1", 4560)
sender.send_message("/trigger/prophet", [43, 110, 1, 0.7])

i2c = board.I2C()
pcf = PCF.PCF8591(i2c)

pcf_in_0 = AnalogIn(pcf, PCF.A0)
pcf_in_1 = AnalogIn(pcf, PCF.A1)
pcf_in_2 = AnalogIn(pcf, PCF.A2)
pcf_in_3 = AnalogIn(pcf, PCF.A3)

try:
    while True:
        osc_0_val = int(255 - (pcf_in_0.value / 256))  # convert values to useful ranges
        osc_1_val = int(255 - (pcf_in_1.value / 256))
        osc_2_val = int(255 - (pcf_in_2.value / 256))
        osc_3_val = int(255 - (pcf_in_3.value / 256))

        osc_note_val = int(
            map_range(osc_0_val, 0, 255, 43, 58)
Ejemplo n.º 2
0
# This example shows using two TSL2491 light sensors attached to TCA9548A channels 0 and 1.
# Use with other I2C sensors would be similar.
import time
import board
import busio
import adafruit_tca9548a
import adafruit_pcf8591.pcf8591 as PCF
from adafruit_pcf8591.analog_in import AnalogIn
from adafruit_pcf8591.analog_out import AnalogOut


# Create I2C bus as normal
i2c = busio.I2C(board.SCL, board.SDA)

# Create the TCA9548A object and give it the I2C bus
tca = adafruit_tca9548a.TCA9548A(i2c)



# For each sensor, create it using the TCA9548A channel instead of the I2C object
pcf = PCF.PCF8591(tca[0])

# After initial setup, can just use sensors as normal.
pcf_in_0 = AnalogIn(pcf, PCF.A0)
print(pcf_in_0)