def __init__(self, delay=None, chars=None, shift_ct=None, clock_pin=25, latch_pin=18, data_pin=20, clear_pin=16): """ Initialize a Seg7 object that defaults to using the Calamari pins. delay [float] : The desired amount of time, in seconds, to sleep after a character is written. Defaults to : 1.0 chars [dict] : A dict mapping single character keys to byte items used by putc and enabling users to write raw data to the display in the form of human readable symbols. Keys [str] : A single character symbol. Items [int] : An int [0-255] of the translated symbol. Defaults to : self.default_chars (for a Calamari 7seg) shift_ct [float] : The amount of time to wait after shifting values to the device's register such that we are sure the correct bit was received. Defaults to: 10**(-8), for the Calamari Lure. *_pin [int] : The GPIO pins used to drive the 7seg hardware. Defaults to : Calamari pins: clock_pin = 25 latch_pin = 18 data_pin = 20 clear_pin = 16 """ from mraa import Gpio, DIR_OUT_LOW self.delay = 1.0 if delay is None else delay self.chars = self.default_chars if chars is None else chars self.sct = self.default_shift_ct if shift_ct is None else shift_ct self.clock_pin = Gpio(clock_pin) self.latch_pin = Gpio(latch_pin) self.data_pin = Gpio(data_pin) self.clear_pin = Gpio(clear_pin) self.clock_pin.dir(DIR_OUT_LOW) self.latch_pin.dir(DIR_OUT_LOW) self.data_pin.dir(DIR_OUT_LOW) self.clear_pin.dir(DIR_OUT_LOW) self.data_pin.write(0) self.clear_pin.write(0) self.clear() self.putc('.')
def __init__(self): super(DfrobotBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(moisture_pin=3, pump_pin=15, screen_register_select_pin=8, screen_enable_pin=9, screen_data_0_pin=4, screen_data_1_pin=5, screen_data_2_pin=6, screen_data_3_pin=7, screen_analog_input_pin=0) if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.screen = LCDKS(self.pin_mappings.screen_register_select_pin, self.pin_mappings.screen_enable_pin, self.pin_mappings.screen_data_0_pin, self.pin_mappings.screen_data_1_pin, self.pin_mappings.screen_data_2_pin, self.pin_mappings.screen_data_3_pin, self.pin_mappings.screen_analog_input_pin) self.moisture = Moisture(self.pin_mappings.moisture_pin) self.pump = Gpio(self.pin_mappings.pump_pin) self.pump.dir(DIR_OUT)
def __init__(self): super(DfrobotBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(temperature_pin=2, buzzer_pin=15, screen_register_select_pin=8, screen_enable_pin=9, screen_data_0_pin=4, screen_data_1_pin=5, screen_data_2_pin=6, screen_data_3_pin=7, screen_analog_input_pin=0) self.voltage_adjust = 1.0 if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.voltage_adjust = 0.66 self.screen = LCDKS(self.pin_mappings.screen_register_select_pin, self.pin_mappings.screen_enable_pin, self.pin_mappings.screen_data_0_pin, self.pin_mappings.screen_data_1_pin, self.pin_mappings.screen_data_2_pin, self.pin_mappings.screen_data_3_pin, self.pin_mappings.screen_analog_input_pin) self.temperature = LM35(self.pin_mappings.temperature_pin) self.temperature.setScale(self.voltage_adjust) self.buzzer = Gpio(self.pin_mappings.buzzer_pin) self.buzzer.dir(DIR_OUT)
def __init__(self): super(DfrobotBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(touch_pin=16, buzzer_pin=15, screen_register_select_pin=8, screen_enable_pin=9, screen_data_0_pin=4, screen_data_1_pin=5, screen_data_2_pin=6, screen_data_3_pin=7, screen_analog_input_pin=0) if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.screen = SAINSMARTKS(self.pin_mappings.screen_register_select_pin, self.pin_mappings.screen_enable_pin, self.pin_mappings.screen_data_0_pin, self.pin_mappings.screen_data_1_pin, self.pin_mappings.screen_data_2_pin, self.pin_mappings.screen_data_3_pin, self.pin_mappings.screen_analog_input_pin) self.touch = Button(self.pin_mappings.touch_pin) self.buzzer = Gpio(self.pin_mappings.buzzer_pin) self.buzzer.dir(DIR_OUT) self.touch_state = False self.stop_buzzer()
def __init__(self): super(DfrobotBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(gas_pin=3, speaker_pin=16) if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.air = MQ2(self.pin_mappings.gas_pin) self.speaker = Gpio(self.pin_mappings.speaker_pin) self.speaker.dir(DIR_OUT)
def __init__(self): super(GroveBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(touch_pin=4, buzzer_pin=5, i2c_bus=6) if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.pin_mappings.i2c_bus = 512 self.screen = Jhd1313m1(self.pin_mappings.i2c_bus, 0x3E, 0x62) self.touch = TTP223(self.pin_mappings.touch_pin) self.buzzer = Gpio(self.pin_mappings.buzzer_pin) self.buzzer.dir(DIR_OUT) self.touch_state = False self.stop_buzzer()
def __init__(self): super(DfrobotBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(temp_pin=3, flame_pin=2, speaker_pin=15, reference_voltage=1.0) if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.pin_mappings.reference_voltage = 0.33 self.temp = Aio(self.pin_mappings.temp_pin) self.flame = Aio(self.pin_mappings.flame_pin) self.speaker = Gpio(self.pin_mappings.speaker_pin) self.speaker.dir(DIR_OUT)
def __init__(self): super(GroveBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(temperature_pin=0, buzzer_pin=5, i2c_bus=6) self.voltage_adjust = 1.0 if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.pin_mappings.i2c_bus = 512 self.voltage_adjust = 0.66 self.screen = Jhd1313m1(self.pin_mappings.i2c_bus, 0x3E, 0x62) self.temperature = Temperature(self.pin_mappings.temperature_pin) self.buzzer = Gpio(self.pin_mappings.buzzer_pin) self.buzzer.dir(DIR_OUT)
def __init__(self): super(GroveBoard, self).__init__() # pin mappings self.pin_mappings = PinMappings(buzzer_pin=6, button_pin=5, rotary_pin=0, i2c_bus=6) if HARDWARE_CONFIG.platform == KNOWN_PLATFORMS.firmata: addSubplatform(GENERIC_FIRMATA, "/dev/ttyACM0") self.pin_mappings += 512 self.pin_mappings.i2c_bus = 512 self.screen = Jhd1313m1(self.pin_mappings.i2c_bus, 0x3E, 0x62) self.buzzer = Gpio(self.pin_mappings.buzzer_pin) self.rotary = Rotary(self.pin_mappings.rotary_pin) self.button = Button(self.pin_mappings.button_pin) self.buzzer.dir(DIR_OUT) self.rotary_value = 0 self.button_state = False
def init_gpio(pin, dir=mraa.DIR_OUT_LOW, mode=mraa.MODE_STRONG): gpio = Gpio(pin) gpio.dir(dir) gpio.mode(mode) return gpio