Ejemplo n.º 1
0
    def read(self):
        Memory.set_bit(self.base_addr, Accelerometer.CTRL_REG, Accelerometer.READ_BIT, True)
        while not Memory.read_bit(self.base_addr, Accelerometer.CTRL_REG, Accelerometer.READ_BIT):
            time.sleep(0.000001) # Wait for a microsecond

        read_regs = [ Accelerometer.X_REG, Accelerometer.Y_REG, Accelerometer.Z_REG ]
        accel_vals = Memory.read_bulk(self.base_addr, read_regs)
        Memory.set_bit(self.base_addr, Accelerometer.CTRL_REG, Accelerometer.READ_BIT, False)

        return accel_vals
Ejemplo n.º 2
0
    def ctrl_handler(data):
        _id, val = data

        if _id == 'KILLSWITCH':
            print('KILLSWITCH TRIGGERED')
            Memory.write_to_mem(ADDR_KILLSWITCH, 0, 0x0)

        if _id == 'ROT':
            ball_x, ball_y = val
            Memory.write_to_mem(ADDR_CAM, 0, ball_x)
            Memory.write_to_mem(ADDR_CAM, 4, ball_y)
Ejemplo n.º 3
0
    def read(self):
        Memory.set_bit(self.base_addr, Gyroscope.CTRL_REG, Gyroscope.READ_BIT,
                       True)
        while not Memory.read_bit(self.base_addr, Gyroscope.CTRL_REG,
                                  Gyroscope.READ_BIT):
            time.sleep(0.000001)  # Wait for a microsecond

        read_regs = [Gyroscope.X_REG, Gyroscope.Y_REG, Gyroscope.Z_REG]
        gyro_vals = Memory.read_bulk(self.base_addr, read_regs)
        Memory.set_bit(self.base_addr, Gyroscope.CTRL_REG, Gyroscope.READ_BIT,
                       False)

        return gyro_vals
Ejemplo n.º 4
0
 def set_on(self):
     Memory.set_bit(self.base_addr, self.register, self.bit, True)
Ejemplo n.º 5
0
 def set_off(self):
     Memory.set_bit(self.base_addr, self.register, self.bit, False)
Ejemplo n.º 6
0
 def set_duty_cycle(self, value):
     self.__validate_duty_cycle(value)
     Memory.write_to_mem(self.base_addr, PWM.DUTY_CYCLE_REG, value)
Ejemplo n.º 7
0
 def set_period(self, value):
     self.__validate_period(value)
     Memory.write_to_mem(self.base_addr, PWM.PERIOD_REG, value)
Ejemplo n.º 8
0
 def get_pwm4_status():
     duty_cycle = Memory.read_from_mem(ADDR_PWM4, PWMStreams.REG_DUTY_CYCLE)
     return int(duty_cycle)