Benutzer-Werkzeuge

Webseiten-Werkzeuge


haduino

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
haduino [2019/08/13 20:12]
henry.krumb
haduino [2019/08/18 12:56] (aktuell)
henry.krumb
Zeile 1: Zeile 1:
 ====== haduino ====== ====== haduino ======
-**haduino** (Hades + Arduino) bezeichnet eine Hardwarekomponente,​ die in der [[Löschstation]] verbaut ​wird.+**haduino** (Hades + Arduino) bezeichnet eine Hardwarekomponente,​ die in der [[rechnerverarbeitung:​loeschstation|Löschstation]] verbaut ​ist. Auf einem Display im Frontpanel der Löschstation werden die Prozentangaben der Löschvorgänge dargestellt.
  
 ===== Hardware ===== ===== Hardware =====
 Der Haduino besteht aus folgenden Teilen: Der Haduino besteht aus folgenden Teilen:
-  ​* 5.25 Zoll Gehäuse eines alten CD-ROM-Laufwerks+ 
 +  ​* 5.25 Zoll-Blende mit Aussparung für das Display
   * Arduino-Klon Pro Micro (ATmega32U4)   * Arduino-Klon Pro Micro (ATmega32U4)
   * USB-Kabel   * USB-Kabel
-  * LCD Display 1602 +  * LCD Display 1602 mit I²C Adapter 
-  * Taster+ 
 +===== Verkablung ===== 
 +Das Display wird vom Arduino über den I²C-Bus angesprochen. 
 + 
 +^ Pin Arduino ^ Pin Display ^ Funktion ​        ^ 
 +| GND         | GND         | Masse (Ground) ​  | 
 +| Vcc         | Vcc         | 5V Spannung ​     | 
 +| 2           | SDA         | I²C Datenleitung | 
 +| 3           | SCL         | I²C Takt (Clock) | 
 + 
 +Solltest du für den Aufbau einen anderen Arduino verwenden, solltest du die SDA und SCL Pins entsprechend anpassen. 
 +Der Arduino Micro ist mit dem Arduino Leonardo verwandt und benutzt daher die Digitalpins 2 und 3 für I²C. 
 +Siehe auch: [[https://​www.arduino.cc/​en/​Reference/​Wire]]
  
 ===== Protokoll ===== ===== Protokoll =====
-Die Löschstation kommuniziert mit dem Arduino über ein serielles Protokoll. +Die Löschstation kommuniziert mit dem Arduino über ein serielles Protokoll. ​Dabei werden dem Arduino die Prozentangaben der jeweiligen Festplatten mitgeteilt, die auf dem Display ​dargestellt ​werden ​sollen.
-Der Arduino ​benötigt ​die Festplattendaten, die auf dem Display ​angezeigt ​werden+
-Die Löschstation soll außerdem benachrichtigt werden, wenn einer der Taster gedrückt wurde.+
  
  
 ==== Kommandos ==== ==== Kommandos ====
-^ Kommando ^ Code ^ Beschreibung ^ Signatur ^ + 
-| STATUS ​  | 0x01 | return status and clear errors | int status(void) |+^ Kommando ^ Code ^ Beschreibung ​                  ​^ Signatur ​                      ​
 +| STATUS ​  | 0x01 | return status and clear errors | int status(void) ​              ​|
 | HDD      | 0x02 | update hard drive progress ​    | void hdd(int N, int* progress) | | HDD      | 0x02 | update hard drive progress ​    | void hdd(int N, int* progress) |
-BTN      ​0x04 request button flags           int btn(void)    |+ 
 +Das Kommando HDD bekommt eine Liste mit bytes, die jeweils die Fortschrittsangaben (in %) kodieren. 
 +Der erste Parameter des Kommandos ist die Länge der Liste. 
 + 
 +==== Status Codes ==== 
 +^ Name     ^ Code ^ Bedeutung ​                                    ^ 
 +OK       0x00 alles ok                                      ​| 
 +| ERROR    | 0x01 | flag, das bei kritischen Fehlern gesetzt wird | 
 +| BAD CMD  | 0x02 | unbekanntes Kommando ​                         | 
 +| OVERFLOW | 0x04 | Überlauf ​(durch Angabe von mehr als 16 HDDs | 
 +| NOT IMPL | 0x08 | Zugriff auf nicht implementiertes Kommando ​   
 +| BAD PROG | 0x0F | HDD progress außerhalb Intervall [0,​100] ​     ​|
haduino.1565719944.txt.gz · Zuletzt geändert: 2019/08/13 20:12 von henry.krumb