Laborboard using RS232 port
Laborboard using RS232 port Release status: stable [box doku] | |
---|---|
Description | This project descripes how to connect the Laborboard to a serial port. |
Author(s) | siro |
Last Version | 1.00 |
Anfangen
Wissen was man tun möchte und wies funktioniert:
Sehr ausführliches Tutorial : AVR-Tutorial:_UART
Hardware
Bauteilliste:
1x MAX232 5x 1µF Elko 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, dann wird das Komplement zum Atmega gesendet, wodurch sehr merkwürdige Zeichenketten entstehen.
Beispielprogramm UART-ECHO
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
gtkterm (Linux):
Um Daten an den Atmega zu senden und zu empfangen empfehle ich das Programm gtkterm.
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
rn-wissen.de: UART_mit_avr-gcc
sprut: RS232 Hardware
Windows/WINE: http://realterm.sourceforge.net/