Benutzer-Werkzeuge

Webseiten-Werkzeuge


lasertag:module:modulebus

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Letzte Überarbeitung Beide Seiten der Revision
lasertag:module:modulebus [2017/06/06 16:15]
dirk
lasertag:module:modulebus [2017/06/17 21:37]
dirk
Zeile 1: Zeile 1:
 +====== Modulbus ======
 +
 Der Modulbus setzt auf die I2C Schnittstelle auf. Der Modulbus setzt auf die I2C Schnittstelle auf.
  
Zeile 4: Zeile 6:
 Jedes Modul bekommt eine feste Adresse. Jedes Modul bekommt eine feste Adresse.
 ^Name^Adresse^ ^Name^Adresse^
-|Mainboard|1+|Broadcast|0| 
-|UI-Modul|5|+|Mainboard|10
 +|UI-Modul|14| 
 + 
 +=== Vorgehen === 
 +Der Master fragt Reihum nach Änderungen auf allen Slaves, sind Daten vorhanden, werden diese anschließend abgefragt. Die abgefragten Daten werde direkt wieder gebroadcastet. 
 + 
 + 
 +  - Liste aller Adressen 
 +  - Jeden Adresse nach neuen Daten fragen 
 +  - Antwort mit Anzahl Bytes neuer Daten 
 +  - bei > 0 
 +    - Daten abfragen 
 + 
 +Neue Idee: 
 + 
 +  - Liste aller Adressen 
 +  - begin Tansmission 
 +  - liest erste zwei Bytes 
 +  - erkennt dann länge 
 +  - liest dann folgende Daten 
 +  - dann wieder zwei Byte, bis NO_DATA Paket 
 + 
 + 
 +  TWAR = (MY_ADDRESS << 1) | 1;  // enable broadcasts to be received 
 + 
 +=== Pakete === 
 +2Byte Datentyp, X-Byte Daten
  
 +  * NO_DATA - 1
 +  * BUTTON_PRESSED - 2
 +  * 
  
 ====== ALT ====== ====== ALT ======
lasertag/module/modulebus.txt · Zuletzt geändert: 2017/08/12 16:22 von dirk