AVR-Projekt coach2.2_02_RS232 - Verwendung der seriellen Schnittstelle
- Folgende virtuellen Klassen wurden implementiert:
 
  | 
class RS232BASIS
{
    public:
        virtual void sendeZeichen(uint8_t zeichen);
        virtual uint8_t holeZeichen();
        virtual void sendeText(char*);            
        virtual char* holeText(bool reflect);            
        virtual void sendeInteger(int16_t);            
        virtual int16_t holeInteger(bool reflect);            
        virtual void sendeDouble(double);            
        virtual double holeDouble(bool reflect);            
};
Code 0-1: Virtuelle Basisklasse der Klasse RS232
 
| 
Methodenname  | 
 Beschreibung  | 
 Beispiel | 
sendeZeichen(uint8_t zeichen)
 
    | 
 Sendet ein einzelnes Zeichen an den PC   | 
 rs232.sendeZeichen('a'); | 
uint8_t holeZeichen()
 
    | 
 Holt ein einzelnes Zeichen vom PC  | 
 c = rs232.holeZeichen(); | 
sendeText(char*)
 
    | 
 Sendet eine Textzeile an den PC  | 
 rs232.sendeText("Motor gestartet"); | 
char* holeText(bool reflect)
 
    | 
 Liest vom Hyperterminal einen Text, der mit # abgeschlossen werden muß.  | 
 puffer = rs232.holeText(true);  | 
sendeInteger(int16_t)
 
    | 
 Sendet eine ganze Zahl.  | 
 rs232.sendeInteger(42);  | 
int16_t holeInteger(bool reflect)
 
    | 
 Holt eine ganze Zahl  | 
 x=rs232.holeInteger(true);  | 
sendeDouble(double)
 
    | 
 Sendet eine Fließkommazahl.  | 
 rs232.sendeDouble(-9.5);  | 
double holeDouble(bool reflect)
 
    | 
 Holt eine Fließkommazahl.  | 
 wert = rs232.holeDouble(false);  | 
Tabelle 0-1: Methoden der Klasse RS232
 
- Achten Sie beim Testen des Hauptprogramms auf folgendes:
 
- Es wird die Kommunikation mit dem PC getestet. Dies setzt voraus, dass das Hyperterminal gestartet und richtig konfiguriert wurde und Mikrocontroller und PC über die serielle Schnittstelle verbunden sind.
 
- Die boolsche Variable "reflect" entscheidet darüber, ob die am Hyperterminal eingetippten Zeichen dort auch erscheinen. Dazu müsssen sie vom Mikrocontroller zurückgespiegelt werden.
 
- Der Mikrocontroller muß über den 9,216MHz Quarz getaktet sein.
 
- Am Hyperterminal müssen eingestellt sein: Baudrate:115200, 8 Datenbits, ein Stopbit, kein Startbit, keine Flußsteuerung.
 
  |