Broadcast
Wie kann ein ATmega32 an mehrere andere ATmega32 Daten via RS232 senden?
     - Im folgenden Aufbau gibt es drei beteiligte Mikrocontroller M1, M2, M3:
 
     - M1 sendet Byte-Zahlen abwechselnd an M2 und M3.
 
     - Die Übertragung geschieht über die RS232-Schnittstelle.
 
     - TxD von M1 ist deshalb sowohl mit RxD von M2, als auch mit RxD von M3 verbunden.
 
     - Hier der schematische Aufbau:
 
  | 
     
     Bild 0-1: Schematischer Aufbau für Broadcast.
 
     - Es sollen von M1 nun aber alternierend Daten an M2 und M3 geschickt werden.
 
     - Dies gelingt durch Aufteilen des gesendeten Zeichens in einen Datenteil und einen Empfängerteil:
 
     - Nur die unteren vier Bit eines gesendeten Bytes sind Daten, die oberen vier Bit dienen dazu, den Empfänger festzulegen.
 
     - Somit könnten vier verschiedene Empfänger (M2, M3, M4, M5) in beliebiger Kombination festgelegt werden.
 
     - Beispiele:
 
  | 
     
         
             | Gesendetes Byte | 
             angesprochene Empfänger | 
             Gesendete Zahl | 
         
         
             | 0b00010011 | 
             M2 | 
             3 | 
         
         
             | 0b00100111 | 
             M3 | 
             7 | 
         
         
             | 0b00100101 | 
             M2 und M3 | 
             5 | 
         
         
             | 0b11110101 | 
             M2, M3, M4 und M5 | 
             5 | 
         
         
             | 0b11111111 | 
             M2, M3, M4 und M5 | 
             15 | 
         
     
     Tabelle 0-1: Beispiele für Empfänger-Konfigurationen und übertragene Daten
 
     - Als Versuch werden nun drei Boards aufgebaut M1, M2 und M3.
 
     - M1 zählt in der Variablen akku immer von 0 bis 9 und sendet diese Zahl an M2.
 
     - Außerdem sendet M1 immer 9-akku an M3.
 
     - Alle Daten werden jeweils angezeigt.
 
     - Es ergibt sich folgende Abfolge:
 
  | 
 
M1   M2   M3
0    0    
 9   0    9
1    1    9
 8   1    8
2    2    8
 7   2    7
3    3    7
 6   3    6
4    4    6
 5   4    5
5    5    5
 4   5    4
6    6    4
 3   6    3
7    7    3
 2   7    2
8    8    2
 1   8    1
9    9    1
 0   9    0
0    0    0 
 9   0    9
...  ...  ...
 
     Code 0-1: Anzeige von M1, M2, und M3
 
     
     Bild 0-2: Versuchsaufbau
 
 
 broadcast.zip - Projektdateien für M1, M2 und M3.