www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik UART nachrüsten - möglich und sinnvoll?


Autor: Günther Frings (taraquedo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Dieser etwas eigenartige Betreff kommt daher: Ich entwickle bald mit 
einem Atmel Mega 644 an einem Modul rum, welches sowohl GPS als auch 
GPRS (Handy(paket)datenübertragung) kann. Dazu nutzt es allerdings zwei 
verschiedene UARTs. Das heißt ich bräuchte da schonmal zwei und zwecks 
debugging mit dem PC noch einen weiteren. Macht drei, wobei der µC nur 
zwei hat. (Ich weiss den gibt es auch mit 2 UARTs, aber Reichelt hat den 
nicht und jetzt habe ich den halt schon und 2 reichen ja auch nicht)

Ich wollte mal hören, ob es überhaupt möglich ist sowas "nachzurüsten". 
Wird das dann in Software implementiert und gebuffert? Weiss jemand, wie 
man sowas anstellen kann?

Grüße!

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, sowas nennt sich "software uart". Darüber senden ist kein Problem, 
damit Daten empfangen ist, je nach Datenrate, schon etwas heikel.

Die Forensuche dürfte Dich mit Treffern überschütten.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zudem hat Atmel dazu die eine oder andere Application Note verbrochen.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das geht:

Beitrag "Software UART"


Peter

Autor: Rooney Bob (rooney)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt auch UART Bausteine, die in einem Gehäuse 4 UARTS unterbringen 
und über eine SPI angesteuert werden. Die Dinger haben einen internen 
FIFO Puffer und eine Interrupt-Leitung. Leider kann ich dir nicht sagen 
wie die heißen...

Autor: Ziff (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von Texas Instruments oder so 16C754

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
16C754 von TI oder Exar hat ein paralles Businterface und vier separate 
Interrupt-Ausgänge. Das sind vier 16C550 mit vergrößertem FIFO in einem 
Chip.

Autor: Günther Frings (taraquedo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke auf so eine Lösung wird es hinaus laufen. Ich bin mir nicht 
sicher, ob das NMEA-Protokoll+Auswertung (recht komplexe 
Transformationen) alles über einen Software-UART lösbar ist. Spätestens 
wenn Steuerdaten über GPRS reinkommen und das Ding gleichzeitig noch 
eine SD-Karte beschreiben muss wird es sicherlich zeitlich schon eng. 
Außerdem brauche ich auch noch eine gewisse Reserve an 
Hardwareresourcen. Dann muss ich mir das DB zu dem Chip mal ansehen.

Wer hätte gedacht, dass dieses Projekt, was so einfach anfing sich zu so 
einer Herausforderung entpuppt? Inzwischen hakt es bei dem UART und, was 
ich noch viel schlimmer finde bei der Spannungsversorgung. Das Modem 
benötigt eine im Bereich 3,8..4,2V mit Spitzenströmen von 2A ohne den 
Spannungsbereich zu verlassen. Na Prost Mahlzeit! - das möchte ich mit 
Akkus hinkriegen... Das wird ein echter Spaß.

Grüße!

Autor: Günther Frings (taraquedo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Rufus t. Firefly wrote:
> 16C754 von TI oder Exar hat ein paralles Businterface und vier separate
> Interrupt-Ausgänge.

Sagt mal, wo bekommt ihr diese Dinger eigentlich her? Kann ich die 
irgendwo in geringen Stückzahlen abnehmen? Und dann sind die ja nur noch 
SMD. Und verdammt teuer... Wenigstens zum Experimentieren bevor die 
Schaltung in die Endphase kommt hatte ich ja zumindest auf DIP-Gehäuse 
gehofft.

Grüße!

Autor: Eck-hart (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Spitzenstrom ist doch total uninteressant. Den brauchst du nur um 
die richtigen Kondensatoren aus zu wählen (hochkapazitive low ESR elkos 
sind da angesagt).

Aber eigentlich kommt es nur auf den Durchschnittsverbrauch des Modems 
im Betrieb an und der wird denk ich mal unter 1A liegen - ein einfaches 
SMPS mit irgend einen x-beliebigen SMPS IC wird's schon packen.

Autor: Frank N. (betafrank)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also wenn Du einen AVR mit 2 HW-UART benutzt, kannst Du schon mal 
PC-Schnittstelle und Modem Schnittstelle erschlagen.

NMEA wirst Du wohl nicht schneller als 9600Bd brauchen, Debug-RS232 
ebenso. Die zwei als Soft-UART realisiert lassen Dir genug Rechenzeit 
übrig.

In der Codesammlung hat Peter Dannegger nen schönen SW-UART. Der benutzt 
im Original zwar nen Input-Capture-Interrupt, läßt sich aber auch für 
einen normalen Flankeninterrupt-Eingang umstricken. Als FIFO könntest Du 
den aus Peter Fleurigs UART-Lib nehmen. Der arbeitet zwar nur mit 
Puffergrößen=2^n, ist aber effizient.

So z.B. könntest Du Dir nen externen UART-IC kneifen.

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Das Modem benötigt eine im Bereich 3,8..4,2V mit Spitzenströmen von 2A 
ohne den Spannungsbereich zu verlassen."
Das kommt mir doch ziemlich bekannt vor, Telit-Modem?? Falls ja, das ist 
recht anspruchsvoll in Sachen Stromversorgung. Mit einen 
Recom-DC/DC-Wandler (R-625.0D) läuft es sehr stabil.

Autor: Axel R. (axelr) Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
eine LiPo Zelle und einen BestCap von AVX mit 30.000uF geht auch sehr 
gut.

Je nach GSM-Modul kann man den Kondensator unters Modul packen.

Autor: Günther Frings (taraquedo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

crazy horse wrote:
> Das kommt mir doch ziemlich bekannt vor, Telit-Modem??

Voll ins Schwarze! ;-)

> Falls ja, das ist
> recht anspruchsvoll in Sachen Stromversorgung. Mit einen
> Recom-DC/DC-Wandler (R-625.0D) läuft es sehr stabil.

Das ist ein echt super Tipp, vielen Dank! Genau nach so einem IC habe 
ich gesucht. Ist zwar etwas schmerzlich, dass er 33 Euro/Stück kostet, 
aber das muss man halt mal schlucken.
Hast Du dich beim Aufbau an die Standard Application Circuit im DB 
gehalten? Mich würde interessieren, welche Bauteile Du so verwendet 
hast. Ich möchte nämlich in jedem Fall Standardakkus (sprich NiMH) 
verwenden auch, wenn die Schaltung dadurch größer wird (10 Zellen). 
Genau davor wird ja im DB gewarnt wegen den Spannungsspitzen, die diese 
Akkus erzeugen. Ob da wohl eine einfache Z-Diode reicht (ich weiss 
nicht, wieviel Verlust das bedeutet) oder ob ich bei dem Wandler davon 
ausgehen kann, dass die Spannung kleiner bleibt?

Mit dem UART habe ich inzwischen beschlossen, dass ich irgendwie mal 
versuche an einen AVR mit >2 UARTs zu kommen. Wenn mir das gelingt, dann 
ist es ja ein Kinderspiel und ich kann mir den Umstand mit dem 16C754 
sparen. Sollte es nicht klappen werde ich mich um eine SW-UART kümmern.

Grüße!

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ne, ich habe ne 24V-Versorgung.
Habe noch ein paar Wandler hier, falls du Interesse hast: jsgps5@web.de
So teuer sind die gar nicht.

Autor: zonendoedel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin moin,

NMEA kommt afaik mit gemütlichen 2400 Baud daher.
Das sollte ein Soft-UART locker wegdrücken können.

Und wech...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.