Download - Fakultät 06 - Hochschule München
Download - Fakultät 06 - Hochschule München
Download - Fakultät 06 - Hochschule München
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
24 2 Entwicklung der Software<br />
In Zeile 8 und 9 werden über die „Data Direction Register“‚ Port B0 und<br />
Port D2 bis Port D7 auf Eingang geschaltet um die eingehenden Pegel der<br />
Tastaturmatrix auslesen zu können.<br />
In den Zeilen 12 und 13 werden die späteren Ausgänge auf Port B1, Port<br />
B2 sowie Port C0 bis Port C5 vorerst als Eingang festgelegt um sicher zu<br />
stellen, dass keine ungewollten Ausgaben an das Display stattfinden.<br />
Nun folgt die Initialisierung des USART , also des „Universal Synchronous<br />
and Asynchronous Serial Receiver and Transmitters“, über den die am Display<br />
darzustellenden Zeichen über RS232 vom PC empfangen werden.<br />
void u s a r t _ i n i t ( void )<br />
2 {<br />
v o l a t i l e u i n t 8 _ t t ;<br />
4<br />
UCSR0A=0x60 ; / / USART e i n s t e l l e n<br />
6 UCSR0B=0x10 ;<br />
UCSR0C=0x<strong>06</strong> ;<br />
8 UBRR0=119; / / 9600 baud b e i 18.432Mhz<br />
t =UDR0;<br />
10 }<br />
Um den USART für den Empfang vorzubereiten, müssen zuerst die US-<br />
ART Control and Status Register 0A/B/C mit den benötigten Optionen<br />
beschrieben werden.<br />
Funktionsbeschreibung der einzelnen Bits im Register UCSR0A [1]<br />
Bit 7 - RXC0: USART receive complete - Flag bit, das gesetzt wird, wenn<br />
sich ungelesene Daten im Eingangspuffer befinden und gelöscht wird,<br />
wenn der Empfangspuffer geleert ist. Sollte der Empfang deaktiviert<br />
werden leert sich der Empfangspuffer und das RXC0 bit wird 0. Die<br />
RXC0 Flag kann ausserdem verwendet werden um einen Empfangsbestätigungs<br />
Interrupt zu generieren.<br />
Bit 6 - TXC0: USART transmit complete - Flag bit, welches gesetzt ist,<br />
wenn das gesamte Übertragungs Schieberegister geleert wurde und sich<br />
keine Daten im Puffer (UDR0) befinden. Die TXC0 Flag wird automatisch<br />
geleert, wenn ein Transmit-Complete-Interrupt ausgelöst wird,<br />
gleichsam kann sie gelöscht werden, indem man eine 1 auf ihre Bit Position<br />
schreibt.<br />
Bit 5 - UDRE0: USART data register empty - Diese Flag zeigt an, ob<br />
der Übertragungspuffer (UDR0) bereit ist neue Daten zu empfangen. Ist<br />
UDRE0 gesetzt, so ist der Puffer leer und somit bereit zum Beschreiben.