not logged in | [Login]

Audio skin

To set the volume, define the following function:

def volume(val):
  pyb.I2C(1, pyb.I2C.MASTER).mem_write(val, 46, 0)

Then you can do:

volume(0)   # minimum volume
volume(127) # maximum volume


#make noise:
dac=pyb.DAC(1)
dac.noise(40000)
volume(127)      #max                           
dac.triangle(40000000)

#make record
dac=pyb.DAC(1)
buf=bytearray(50000)
adc=pyb.ADC('X22')
adc.read_timed(buf,20000)

#play record
dac.write_timed(buf,20000) #play the record in original speed
dac.write_timed(buf,5000) #play slower
dac.write_timed(buf,30000) #play faster

dac.write_timed(buf,20000,mode=pyb.DAC.CIRCULAR) #play endless