[sdiy] Driving SSI2144 freq control with PWM from a microcontroller

René Schmitz synth at schmitzbits.de
Sat Nov 5 15:50:08 CET 2022


On 05.11.2022 14:59, Mike Bryant wrote:
> > Mind to share with us, which ones actually do?
>
> Sorry I wasn't being clear.  I was doing it in software which really 
> needs the RBIT instruction to do it quickly.
> But not all ARM MCUs have this instruction.
> A single counter, output RBITed, then a line of compare instructions 
> driving GPIOs.


Ah, ok. Technically almost all MCU can do this in software, question is 
only how fast.


>
> However for a hardware only approach, have a look at Cypress PSoCs.   
> You can use the UDMs or the pseudo-random mode of the TCPWM blocks 
> which isn't quite the same but similar result.

I know that the ESP32 has a PDM, only as a mode in the I2S peripheral.  
And a similar to PDM functioning SDM (Sigma Delta), but its 8 bit.  I 
haven't checked if this is done HW or SW.


>
> Or use a cheap FPGA on the side of a MCU


I've done this using an FPGA, I think it was just with an overflowing 
counter.


One caveat with PDM at higher frequencies is that you need fast and 
symmetric rise and fall times on the digital drivers. A little turn-on 
or turn-off delay (and any imbalance) distorts your signal.


Cheers,

  René


--
synth at schmitzbits.de
http://schmitzbits.de
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://synth-diy.org/pipermail/synth-diy/attachments/20221105/e927aba1/attachment.htm>


More information about the Synth-diy mailing list