debugging

This commit is contained in:
shrkey
2016-04-03 12:08:57 +01:00
parent ae0c645a2b
commit dab5d7fce4
2 changed files with 15 additions and 4 deletions

View File

@@ -50,7 +50,7 @@ class PWM :
self.i2c.write8(self.__MODE2, self.__OUTDRV)
self.i2c.write8(self.__MODE1, self.__ALLCALL)
time.sleep(0.005) # wait for oscillator
mode1 = self.i2c.readU8(self.__MODE1)
mode1 = mode1 & ~self.__SLEEP # wake up (reset sleep)
self.i2c.write8(self.__MODE1, mode1)
@@ -77,6 +77,17 @@ class PWM :
time.sleep(0.005)
self.i2c.write8(self.__MODE1, oldmode | 0x80)
def getPWMFreq(self):
if (self.debug):
print "Getting PWM frequency Hz"
prescale = self.i2c.readU8(self.__PRESCALE)
print "Got pre-scale: %d" % prescale
print 25000000.0 / 4096.0 / ( float(prescale) + 1 )
return 25000000.0 / 4096.0 / ( float(prescale) + 1 )
#24576000.f / 4096.f / (data + 1)
def setPWM(self, channel, on, off):
"Sets a single PWM channel"
self.i2c.write8(self.__LED0_ON_L+4*channel, on & 0xFF)

View File

@@ -64,15 +64,15 @@ class dw_PWM:
def setPWM(self, value):
if(value > 0):
self.MC._pwm.setPWM(self.pin, 0, value)
self.MC._pwm.setPWM(self.pin, 0, int(value) )
if(value == 0):
self.off()
def setPWMmS(self, length_ms):
self.setPWM( math.round( length_ms * 4096 ) / ( 1000 / self.freq ) )
self.setPWM( round( length_ms * 4096 ) / ( 1000 / self.freq ) )
def setPWMuS(self, length_us):
self.setPWM( math.round( length_ms * 4096 ) / ( 1000000 / self.freq ) )
self.setPWM( round( length_us * 4096 ) / ( 1000000 / self.freq ) )
def run(self, command, speed = 0):
if not self.MC: