Beispiel #1
0
def int_communication(data_dir, freq, single, adr_change, backend, skip_meas,
                      clk_enable):
    GPIO_DR = 6
    i = 0
    while os.path.exists(os.path.join(data_dir, 'data_' + str(i) + '.dat')):
        i += 1
    global write_file
    if not skip_meas:
        import te_setup
        #import RPi.GPIO as GPIO
        import RPIO as GPIO
        import spidev

        spi = spidev.SpiDev()
        write_file = open(os.path.join(data_dir, 'data_' + str(i) + '.dat'),
                          'w')
        global spi
        spi.open(0, 0)
        spi.max_speed_hz = (freq)
        GPIO.setmode(GPIO.BCM)
        GPIO.setup(GPIO_DR, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
        GPIO.add_event_detect(GPIO_DR, GPIO.RISING)

        if not adr_change:
            GPIO.add_event_callback(GPIO_DR, callback)
        else:
            GPIO.add_event_callback(GPIO_DR, callback_adr)
        if single:
            if not adr_change:
                callback(6)
            else:
                callback_adr(6)
        else:
            try:
                if clk_enable:
                    GPIO.setup(5, RPIO.ALT0)
                while True:
                    time.sleep(1)
            except KeyboardInterrupt:
                GPIO.setup(5, RPIO.INPUT)
                GPIO.cleanup()
                #global write_file
        time.sleep(0.1)
        write_file.close()
        print('Written to data_' + str(i) + '.dat')

    if backend == 'display_graph':
        data_manager.data_manager(directory=data_dir,
                                  data_size=1000,
                                  train_size=100,
                                  split_mode=False,
                                  attenate_flag=False,
                                  save_as_png=False).plot()
Beispiel #2
0
def int_communication(data_dir, freq, single, adr_change, backend, skip_meas, clk_enable):
    GPIO_DR = 6
    i = 0
    while os.path.exists(os.path.join(data_dir, 'data_' + str(i) + '.dat')):
        i += 1
    global write_file
    if not skip_meas:
        import te_setup
        #import RPi.GPIO as GPIO
        import RPIO as GPIO
        import spidev

        spi = spidev.SpiDev()
        write_file = open(os.path.join(data_dir, 'data_' + str(i) + '.dat'), 'w')
        global spi
        spi.open(0,0)
        spi.max_speed_hz=(freq)
        GPIO.setmode(GPIO.BCM)
        GPIO.setup(GPIO_DR, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
        GPIO.add_event_detect(GPIO_DR, GPIO.RISING)

        if not adr_change:
            GPIO.add_event_callback(GPIO_DR, callback)
        else:
            GPIO.add_event_callback(GPIO_DR, callback_adr)
        if single:
            if not adr_change:
                callback(6)
            else:
                callback_adr(6)
        else:
            try:
                if clk_enable:
                    GPIO.setup(5, RPIO.ALT0)
                while True:
                    time.sleep(1)
            except KeyboardInterrupt:
                GPIO.setup(5, RPIO.INPUT)
                GPIO.cleanup()
                #global write_file
        time.sleep(0.1)
        write_file.close()
        print('Written to data_' + str(i) + '.dat')

    if backend == 'display_graph':
        data_manager.data_manager(directory=data_dir,
                     data_size=1000,
                     train_size=100,
                     split_mode=False,
                     attenate_flag=False,
                     save_as_png=False).plot()
SPIMISO = 23
SPIMOSI = 24
SPICS = 25

# set up the pins
RPIO.setup(SPIMOSI, RPIO.OUT)
RPIO.setup(SPIMISO, RPIO.IN)
RPIO.setup(SPICLK, RPIO.OUT)
RPIO.setup(SPICS, RPIO.OUT)
RPIO.setup(19, RPIO.OUT)
RPIO.setup(26, RPIO.OUT)
RPIO.setup(16, RPIO.OUT)
RPIO.setup(20, RPIO.OUT)
RPIO.setup(4, RPIO.IN, pull_up_down=RPIO.PUD_UP)

RPIO.add_event_detect(4, PWR_func, edge="falling" debounce_timeout_ms=50)

# set up the PWM outputs to the motors 

pwm_MF = RPIO.PWM(19, 100)
pwm_MR = RPIO.PWM(26, 100)
servo = PWM.Servo()

pwm_MF.start(0)
pwm_MR.start(0)
servo.set_servo(20, 1450)

# joystick ADC channels
joy_x_adc = 0
joy_y_adc = 1
Beispiel #4
0
SPIMISO = 23
SPIMOSI = 24
SPICS = 25

# set up the pins
GPIO.setup(SPIMOSI, GPIO.OUT)
GPIO.setup(SPIMISO, GPIO.IN)
GPIO.setup(SPICLK, GPIO.OUT)
GPIO.setup(SPICS, GPIO.OUT)
GPIO.setup(19, GPIO.OUT)
GPIO.setup(26, GPIO.OUT)
GPIO.setup(16, GPIO.OUT)
GPIO.setup(20, GPIO.OUT)
GPIO.setup(4, GPIO.IN, pull_up_down=GPIO.PUD_UP)

GPIO.add_event_detect(4, GPIO.FALLING, callback=PWR_func, bouncetime=50)

# set up the PWM outputs to the motors 

pwm_MF = GPIO.PWM(19, 100)
pwm_MR = GPIO.PWM(26, 100)
servo = PWM.Servo()

pwm_MF.start(0)
pwm_MR.start(0)
servo.set_servo(20, 1450)

# joystick ADC channels
joy_x_adc = 0
joy_y_adc = 1