Laborboard RS232: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
KKeine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
{{ProjektInfoBox
{{ProjektInfoBox
|name       = Laborboard using RS232 port
|name=Laborboard using RS232 port
|status     = stable
|status=stable
|image       = LaborLogo2.png
|image=LaborLogo2.png
|description = This project descripes how to connect the Laborboard to a serial port.
|description=This project descripes how to connect the Laborboard to a serial port.
|author      = siro
|username=siro
|username    = siro
|author=siro
|version     = 1.00
|version=1.00
|update     = 07.02.10
|update=07.02.10
|platform    =
|tags=Microcontroller & FPGAs, AVR, RS232,
|license    =
}}
|download    =  
<div style="margin-right:300px;">
}}<div style="margin-right:300px;">


== Anfangen ==
== Anfangen ==

Aktuelle Version vom 8. April 2017, 00:31 Uhr

     
Laborboard using RS232 port

Release status: stable [box doku]

LaborLogo2.png
Description This project descripes how to connect the Laborboard to a serial port.
Author(s)  siro
Last Version  1.00



Anfangen[Bearbeiten | Quelltext bearbeiten]

Wissen was man tun möchte und wies funktioniert:
Sehr ausführliche Tutorials :
AVR-Tutorial:_UART
RS232-Tutorial

Hardware[Bearbeiten | Quelltext bearbeiten]

Bauteilliste:

1x MAX232
1x 10µF Elko (Spannungsstabilisierung)
4x 1µF Elko / 0.1µF Kondensator
1x RS232/COM-Buchse
  • Schaltplan und Layout:

[Laborboard_mit_max232_Layout.png]
[Laborboard_mit_max232_Schaltplan.png]

Nach dem Aufbau alle Leiterbahnen überprüfen, hier ist meistens eine kalte Löststelle.
Primäre Fehlerquelle !

  • Test des MAX232:

Pin T2IN des Max232 auf 0V legen -> Pin T2OUT muss größer 8V sein
Pin T2IN des Max232 auf 5V legen -> Pin T2OUT muss kleiner -8V sein

Pin R2IN des Max232 auf -5V legen -> Pin R2OUT muss gleich 5V sein
Pin R2IN des Max232 auf 5V legen -> Pin R2OUT muss gleich 0V sein

  • Verbinden des MAX232 mit einer seriellen Schnittstelle:

Pin T2OUT (Pin 7 MAX232) verbinden mit Pin 2 (RXD)
Pin R2IN (Pin 8 MAX232) verbinden mit Pin 3 (TXD)

  • Nochmals: Pinbelegungen überprüfen ! 2te große Fehlerquelle !

Besonders trickreich, wenn man die Reihenfolge der Pins vertauscht am COM-Port, dann wird das Komplement zum Atmega gesendet. Es sieht so aus als wäre die Verkabelung OK, jedoch empfängt der PC keine Daten.

Beispielprogramm UART-ECHO[Bearbeiten | Quelltext bearbeiten]

Erst mal checken wir die Quellcodes der Beispielprogramme aus und laden ein neues Programm in den Atmega:

svn checkout https://www.das-labor.org/svn/microcontroller/src-atmel/tests/uart-echo/
cd /svn/microcontroller/src-atmel/tests/uart-echo/
make
avrdude $AVR -U image.hex

Als nächstes wird das Laborboard mit einem Serial Anschluss verbunden, wer einen Laptop nutzt kann auch einen USB->Serial Adapter nehmen. Die Treiber sollten bei den meißten neueren Betriebssystemen vorhanden sein, wenn nicht sind diese natürlich erst zu installieren.

Programme zum RS232 Datenaustausch[Bearbeiten | Quelltext bearbeiten]

Empfehlung: realterm

gtkterm (Linux):
gtkterm eignet sich gut um Daten zu empfangen, es kann diese auch als HEX+ASCII darstellen, aber:
gtkterm einthaelt einen Fehler, beim senden von HEX-Zeichen stürzt das Programm ab!

Es kann installiert werden mit dem Befehl:

sudo apt-get install gtkterm

realterm (Windows/Linux):

http://realterm.sourceforge.net/
Für Linuxnutzer:
Realterm läuft mit WINE, wenn diese Verknüpfung erzeugt wurde kann der USB-Seriell-Adapter über COM2 angesprochen werden.

ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com2

Die erste serielle Schnittstelle heißt unter Linux /dev/tty0 oder /dev/ttyUSB0. Um zu testen ob Daten vom PC gesendet werden, kann die BAUD-Rate auf 300 bit/s eingestellt werden, ein Spannungsmessgerät mit der TX Leitung & Masse verbunden, und beliebige Zeichen gesendet werden. Die Spannung sollte sich merklich ändern (im Volt-Bereich).

Links[Bearbeiten | Quelltext bearbeiten]

rn-wissen.de: UART_mit_avr-gcc
sprut: RS232 Hardware
Windows/WINE: http://realterm.sourceforge.net/