<div dir="auto"><div><div class="gmail_quote"><div dir="ltr"><<a href="mailto:jschwich53@comcast.net">jschwich53@comcast.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Sounds like something else is on the line. Are there programmable pull downs that are enabled?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">or the Russians?</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
-----Original Message-----<br>
From: Synth-diy [mailto:<a href="mailto:synth-diy-bounces@synth-diy.org" target="_blank" rel="noreferrer">synth-diy-bounces@synth-diy.org</a>] On Behalf Of Tom Wiltshire<br>
Sent: Sunday, April 22, 2018 10:05 AM<br>
To: <a href="mailto:rburnett@richieburnett.co.uk" target="_blank" rel="noreferrer">rburnett@richieburnett.co.uk</a> Burnett<br>
Cc: synth-diy@synth-diy org<br>
Subject: Re: [sdiy] dsPIC UART for multi-processor comms<br>
<br>
I’ve got all the UART Tx’s turned off except for the one on the Master, and the slaves only have the Rx connected to an external pin. The UART uses the “Peripheral Pin Select” feature on the dsPIC, so the UART IO pins aren’t actually connected to a hardware pin unless you explicitly set that up. So, no - definitely no Tx's all connected together.<br>
<br>
Checking the signals on the scope, the pulses look good, but the voltage level is dropping alarmingly. On a 3.3V processor, the high level is getting dragged down to around 1V - so that explains the failures. Question is, what explains the low voltage?<br>
<br>
I have done similar things with SPI in the past, but I quite fancied the 9-bit addressing. I2C is another possible solution, and that also including addressing in the hardware receiver.<br>
<br>
Thanks,<br>
Tom<br>
<br>
==================<br>
Electric Druid<br>
Synth & Stompbox DIY<br>
==================<br>
<br>
> On 22 Apr 2018, at 16:44, Richie Burnett <<a href="mailto:rburnett@richieburnett.co.uk" target="_blank" rel="noreferrer">rburnett@richieburnett.co.uk</a>> wrote:<br>
> <br>
> Maybe a signal integrity issue, (reflection due to poor termination) if the interconnections are quite long at the prototyping stage. But 100k baud is a bit slow to run in to these problems. Have you looked at the waveform arriving at the UART rx inputs when it works and then again when it isn't working. This should reveal what's going wrong.<br>
> <br>
> You haven't tied multiple UART TX lines together somehow have you? <br>
> <br>
> Also, have you considered SPI instead? This is probably better for supporting a multi-drop network like this, if the slaves need to be able to send data back to the master too.<br>
> <br>
> -Richie,<br>
> <br>
> Sent from my Xperia SP on O2<br>
> <br>
> ---- Tom Wiltshire wrote ----<br>
> <br>
>> Hi all,<br>
>> <br>
>> 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.<br>
>> <br>
>> 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.<br>
>> <br>
>> 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.<br>
>> <br>
>> 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?<br>
>> <br>
>> Any help or advice appreciated. I’m sure I’m not the first person to have come up against this type of problem…<br>
>> <br>
>> Thanks,<br>
>> Tom<br>
>> _______________________________________________<br>
>> Synth-diy mailing list<br>
>> <a href="mailto:Synth-diy@synth-diy.org" target="_blank" rel="noreferrer">Synth-diy@synth-diy.org</a><br>
>> <a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
<br>
<br>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org" target="_blank" rel="noreferrer">Synth-diy@synth-diy.org</a><br>
<a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
<br>
<br>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org" target="_blank" rel="noreferrer">Synth-diy@synth-diy.org</a><br>
<a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
</blockquote></div></div></div>