Allow seperate buffer with offset
This commit is contained in:
@@ -93,8 +93,8 @@ class PIO_DMA_Transfer():
|
||||
self.dma_chan.CTRL_TRIG.INCR_WRITE = 0
|
||||
self.dma_chan.CTRL_TRIG.INCR_READ = 1
|
||||
|
||||
def start_transfer(self, buffer):
|
||||
self.dma_chan.READ_ADDR_REG = uctypes.addressof(buffer)
|
||||
def start_transfer(self, buffer, offset=0):
|
||||
self.dma_chan.READ_ADDR_REG = uctypes.addressof(buffer) + offset
|
||||
self.dma_chan.CTRL_TRIG.EN = 1
|
||||
|
||||
def transfer_count(self):
|
||||
|
||||
@@ -29,8 +29,10 @@ class WS2812B:
|
||||
self.invert = invert
|
||||
self.pio_dma = dma.PIO_DMA_Transfer(state_machine+4, state_machine, 8, num_leds*3)
|
||||
|
||||
def show(self):
|
||||
self.pio_dma.start_transfer(self.ar)
|
||||
def show(self, array=None, offset=0):
|
||||
if array is None:
|
||||
array = self.ar
|
||||
self.pio_dma.start_transfer(array, offset)
|
||||
|
||||
def set(self, i, color):
|
||||
self.ar[i*3] = int(color[1]*self.brightness)
|
||||
|
||||
Reference in New Issue
Block a user