[sdiy] dsPIC UART for multi-processor comms

Scott Gravenhorst music.maker at gte.net
Sun Apr 22 17:41:10 CEST 2018

I've done a system of 2 receivers and 1 sender using 3 dsPICs with DMA
SPI at it's max rate (I think it's 20 MHz) and this worked well.  I've
not used a UART except for receiving MIDI.

I'd want to scope the serial connections while it works and while it
fails.  It's hard to imagine the fanout is that small, but scoping may
help to learn what is happening.  If the voltage states are not clearly
good digital states, it could be because of the input loading, but
that's a CMOS input AFAIK which should have a very high input
impedance.  Perhaps check your grounds as well.

Tom Wiltshire <tom at electricdruid.net> wrote:
>Hi all,
>I’m currently experimenting with communications between 
>multiple dsPICs. I have one master processor sending messages, 
>and four slave processors receiving them. I have a fifth slave 
>processor on the comms line which acts as a “comms monitor” 
>dsPIC+LCD and just displays all traffic so I can see what’s 
>going on. 
>The UART is sending at 100KHz, and I’m using the 9-bit mode, 
>which allows me to ignore data bytes which aren’t intended for 
>a given processor - e.g. each processor only has to keep an eye 
>out for address bytes and check those, rather than having to read 
>every single byte that is sent. 
>However - I’ve got a problem. Comms to each of the slaves works 
>fine individually, but as soon as I stick a second or further 
>chip in its socket, the comms stops working (Comms monitor 
>registers no messages either) and the slaves do nothing. 
>Currently, it only works with the master, one slave, and the 
>monitor connected. 
>What’s the maximum “fan out” for a UART like this? Do I 
>need to buffer its output to get more drive or something? Why 
>would connecting more inputs to the signal kill the comms? 
>Any help or advice appreciated. I’m sure I’m not the first 
>person to have come up against this type of problem… 
>Synth-diy mailing list
>Synth-diy at synth-diy.org

-- ScottG
-- Scott Gravenhorst
-- http://scott.joviansynth.com/
-- When the going gets tough, the tough use the command line.
-- Matt 21:22

More information about the Synth-diy mailing list