08.09.2016, 11:24 PM
Nachdem der supereinfache Teil der Programmierung abgeschlossen ist, müssen die Pins am µC zugeordnet werden. Dazu erstmal ein Blick auf die alte Schaltung von 2005:
Im Wesentlichen muss der Microprozessor und der DC-DC-Wandler ausgetauscht werden (die Teile der Schaltung in den roten Rahmen). Ich konzentriere mich zuerst auf den Prozessor. Für den Einzelbetrieb mit einem Display (2 Kanäle/Stereo) sieht das so aus:
Da sollen aber noch mehr Displays ran, und nicht nur mit 3 Phasensteuerung, sondern bis zu 5. Mal sehn, was der Teensy so schafft:
Sieht doch gut aus
Also rein in den Code, vorerst für 4 Balken (2 Displays):
(Bei den Phasenpins war ich faul, die bleiben namenlos...)
Immernoch easy, oder?
Im Wesentlichen muss der Microprozessor und der DC-DC-Wandler ausgetauscht werden (die Teile der Schaltung in den roten Rahmen). Ich konzentriere mich zuerst auf den Prozessor. Für den Einzelbetrieb mit einem Display (2 Kanäle/Stereo) sieht das so aus:
Da sollen aber noch mehr Displays ran, und nicht nur mit 3 Phasensteuerung, sondern bis zu 5. Mal sehn, was der Teensy so schafft:
Sieht doch gut aus
Also rein in den Code, vorerst für 4 Balken (2 Displays):
Code:
const byte Frequency = 70; // Zielfrequenz des Displays in Hz
const byte Segments = 201; // Anzahl der Segmente des Displays
const byte Phases = 3; // Anzahl der Phasen des Displays (maximal 5)
const byte ResetPin = 5; // Resetanschluss
const byte InputPin_1 = 21; // Eingangspins
const byte InputPin_2 = 20;
const byte InputPin_3 = 19;
const byte InputPin_4 = 18;
const byte AnodePin_1 = 6; // Anodenpins
const byte AnodePin_2 = 7;
const byte AnodePin_3 = 8;
const byte AnodePin_4 = 9;
void setup() {
pinMode(0, OUTPUT); // Die Pins für maximal 5 Phasen werden als Output-Pins definiert
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(ResetPin, OUTPUT); // Resetpin wird als Output-Pin definiert
pinMode(AnodePin_1, OUTPUT); // hier würde ein Kommentar für Minderbemittelte stehen...
pinMode(AnodePin_2, OUTPUT);
pinMode(AnodePin_3, OUTPUT);
pinMode(AnodePin_4, OUTPUT);
}
Immernoch easy, oder?