Har en USART vill ha två...

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Kaggen
Inlägg: 432
Blev medlem: 29 januari 2005, 03:06:02

Har en USART vill ha två...

Inlägg av Kaggen »

Jag har en PIC16F88 med USART som jag behöver för kommunikation med datorn via RS232, men jag skulle också behöva kommunicera med en GPS via den samma för att slippa lösa det i mjukvara.

Finns det någon logikkrets man kan så att säga "switcha" TX och RX mellan olika pinnar. Typ:

Kod: Markera allt

PIC
---             Krets
   |           -------
   |----TX----|       |----TX--------|
   |          |       |              |- MAX RS232
   |----RX----|       |----RX--------|
   |          |       |
   |          |       |---TX---|
   |----SW----|       |        |- GPS
   |          |       |---RX---|
---            -------
där SW är ett ben på PIC:en som switchar mellan de övre/undre två ut/ingångarna på kretsen "Krets". De som inte används skall väl sättas i högimpedans läge eller nåt.

Jag behöver inte kommunicera med båda samtidigt så den biten är inga problem.


--
larsson
Inlägg: 188
Blev medlem: 9 juni 2007, 16:49:21
Ort: Göteborg

Inlägg av larsson »

Så där "on top of my head" kommer jag att tänka på några vanliga AND- eller NAND-grindar med öppen kollektorutgång 74HC??. Det borde väl gå att pussla ihop nåt enkelt och billigt. För du är väl fortfarande på TTL-sidan av 232:an?
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

En (digital) mux, 4:2 eller vad det blir. Finns det gott om.

MEN

Är det inte lättare och bättre att emulera en UART på godtyckliga pinnar hos PICen? Har du andra tidskritiska processer körandes?
Användarvisningsbild
JimmyAndersson
Inlägg: 26586
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Varför inte ett relä? Enklare blir det inte. :)
Kaggen
Inlägg: 432
Blev medlem: 29 januari 2005, 03:06:02

Inlägg av Kaggen »

$tiff: Du menar en liknande denna (4052) http://www.elfa.se/elfa-bin/dyndok.pl?dok=2013052.htm?

Angående tidskritiska operationer så har jag sådana. Dock behöver dom inte användas när jag skall kommunisera med datorn via RS232.

AND och NAND grindar skulle väl också gå, men risken är att det blir två kretsar. Iofs har jag funderat på en vanlig manuell 2 x 2 polig omkopplare, men en MUX-liknande lösning var nog närmast det jag tänkte på först.

Tack för tipsen!
Användarvisningsbild
Micke_s
EF Sponsor
Inlägg: 6741
Blev medlem: 15 december 2005, 21:31:34
Ort: Malmö

Inlägg av Micke_s »

74HC4052 lär funka bra, kräver bara 1 pinne extra från pic:en också, B och enable har du jord/vcc (har inte kollat exakt).
Kom ihåg att det kan krävas pull up på rx och tx för inte få felaktiga tecken när du växlar, beror på max232 kretsen.
Användarvisningsbild
maha
EF Sponsor
Inlägg: 1685
Blev medlem: 22 november 2005, 09:47:02
Ort: Jakobstad, Finland

Inlägg av maha »

Dessutom kör du väl bara envägskommunikation med GPS:en så där slipper du ju hälften, eller?
Användarvisningsbild
bengt-re
EF Sponsor
Inlägg: 4829
Blev medlem: 4 april 2005, 16:18:59
Skype: bengt-re
Ort: Söder om söder
Kontakt:

Inlägg av bengt-re »

Ja, detta bör inte vara några problem att lösa ena kanelen med mjukvara. NMEA är ju tämligen långsamt, så inga större problem att lösa det ens vid låga klockfrekvenser i ren mjukvara.
Skriv svar