www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Frage zu AVR -> RS-232 -> PC


Autor: L. Kostrykin (Firma: evoid.de) (thevoid)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich suche nach einer Möglichkeit, Daten von einem AVMega8 per seriellen 
Anschluss (RS-232) an meinen Rechner zu senden. So weit ich 
Informationen dazu finden konnte, verstehe ich es so, dass ich erst 
einmal die Pegel umwandeln muss:

  0 bis 0.8 V wird zu -3 bis -15 V
  mehr als 2 V wird zu 3 bis 15 V

So weit kein Problem. Was ich jedoch garnicht verstehe ist, in was für 
Abständen ich die Pegel senden muss. Kann mir das jemand beantworten 
oder einen nützlichen Link geben, wo dies gut dokumentiert ist?

Danke im Voraus!

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: L. Kostrykin (Firma: evoid.de) (thevoid)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte weder UART noch MAX232 benutzen. Ich will alles nötige 
aufbauen. Den Artikel zu RS-232 habe ich mir bereits angesehen, jedoch 
geht aus ihm für mich keine Antwort auf meine Frage hervor.

Ist es etwa so, dass ich theoretisch beliebig schnell die Daten 
versenden kann, solange der Empfänger mit dem Lesen mithalten kann?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ L. Kostrykin (Firma evoid.de) (thevoid)

>Den UART möchte ich nicht benutzen. Ich will das ganze selber
>implementieren und aufbauen.

Warum? lange Weile? ist der UART zu einfach und sicher in der Anwendung?

Was du suchst ist ein Soft-UART.

AVR Bootloader FastBoot von Peter Dannegger

Dazu gibt es auch ne Application Note von Atmel.

http://www.atmel.com

>Ist es etwa so, dass ich theoretisch beliebig schnell die Daten
>versenden kann, solange der Empfänger mit dem Lesen mithalten kann?

Ja. Aber das kann auch ein UART. Ich versteh dein "Problem" nicht 
wirklich.

MFG
Falk

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
UART ist Sch..., macht viel zu viel allein, entlastet den MC, vermeidet 
das Taktezählen in einem MC.
MAX232 ist auch Sch..., liefert saubere Pegel, erzeugt die negative 
Spannung selbst, ist kurzschlussfest und verkraftet einiges an den 
Eingängen.
Das braucht man alles nicht. Ich will meine MC-Zeit verschwenden, ich 
liebe Transistorgräber, die ab und zu kaputtgehen und dann auch gleich 
noch den MC himmeln. Und ich will Netzteile, die mir auch -12V liefern, 
ist doch alles viel einfacher.

Autor: L. Kostrykin (Firma: evoid.de) (thevoid)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich will das ganze nicht, um es auch am Ende einzusetzen, sondern um die 
ganze Geschichte besser kennen zu lernen.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ L. Kostrykin (Firma evoid.de) (thevoid)

>Ich will das ganze nicht, um es auch am Ende einzusetzen, sondern um die
>ganze Geschichte besser kennen zu lernen.

Warum wills du es dann kennenlernen?!?

MfG
Falk

Autor: L. Kostrykin (Firma: evoid.de) (thevoid)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, wie dem auch sei, für den Anfang will ich mich dann wohl lieber
doch mit dem UART beschäftigen :)

Jedenfalls habe ich das entspechende Tutorial hier durchgearbeitet und
versuche jetzt das Programm auszuführen, dass mir an den PC einfach nur
Zeichen sendet. Ich verwende ein MyAVR 2 USB Board.

Das Problem, das ich habe, ist folgendes: Standardmäßig ist meine 
COM-Anschluss (eigentlich USB, aber emuliert) auf eine Baudrate von 
115200 gesetzt. Mit dieser Baudrate kann ich den ATmega8 programmieren. 
Im Datenmodus kommt bei dieser Baudrate aber nur Mist raus, ich muss sie 
niedriger setzen. Nun ist es etwas umständlich, zwischen Programmierung 
und Versuch immer wieder die Baudrate meiner COM-Schnittstelle ändern zu 
müssen. Gibt es eine Möglichkeit, das MyAVR-Board dazu zu bringen, auch 
zum Programmieren eine niedrigere Baudrate zu verwenden?

Was mache ich falsch?
Danke im Voraus!

Autor: yalu (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Falk Brunner:

>> Ich will das ganze nicht, um es auch am Ende einzusetzen, sondern
>> um die ganze Geschichte besser kennen zu lernen.
>
> Warum wills du es dann kennenlernen?!?

Es ist doch nicht schlimm, wenn jemand  auch einmal etwas tiefer in
die Materie einsteigen möchte. Im Gegenteil: Würden sich bspw. mehr
Leute den Aufbau und die Funktionsweise der Delay-Funktionen in der
AVR-Libc anschauen, kämen weniger Fragen der Art "Mein Miniprogramm
braucht über 3KB, woran liegt das?" ;-)

@L. Kostrykin:

Gibt es irgendwo einen Schaltplan zum USB-Aufsatzboard des MyAVR 2
USB? Ich frage mich gerade, wie dieses im UART-Bridge-Modus
funktioniert. Wird dort der USB-Seriell-Konverter direkt mit dem
Ziel-Controller auf der Grundplatine verbunden, oder werden die Daten
über den auf dem Aufsatzboard befindlichen Controller geschleust? Ist
letzteres der Fall, ist die Baudrate der Übetragung zwischen den
beiden Controllern nicht unbedingt die gleiche wie zwischen dem PC und
dem Controller des Aufsatzboards.

Ich selbst habe noch nie Probleme mit USB-Seriell-Konvertern
(allerdings von FTDI, nicht von Silabs, sollte aber keinen großen
Unterschied machen) gehabt, insbesondere dann nicht, wenn der
Konverter über kurze Leitungen direkt mit dem Controller verbunden
ist, was ja auch beim MyAVR-Board der Fall ist. Normalerweise verwende
ich dann 230400 Baud, weil das die höchste Geschwindigkeit ist, die
PC-seitig von den meisten Betriebssystemen und Anwendungen
out-of-the-box unterstützt wird. Wahrscheinlich würden aber auch
wesentlich höhere Baudraten noch funktionieren.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ yalu (Gast)

>
> Warum wills du es dann kennenlernen?!?

>Es ist doch nicht schlimm, wenn jemand  auch einmal etwas tiefer in
>die Materie einsteigen möchte.

Überhaupt nicht. Aber es sich genauer anzuschauen, um es dann NICHT 
einzusetzen ist meist recht sinnfrei.

"Ich will das ganze nicht, um es auch am Ende einzusetzen, sondern um 
die ganze Geschichte besser kennen zu lernen."

MfG
Falk

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.