ich habe dieses Prog compiliert in der Arduino - IDE-1.8.7
Code: Alles auswählen
#include <TM1638.h>
/* Anschluss des TM1638 Modul's am UNO
* VCC 5V
* GND
* STB pin 7
* DIO pin 8
* CLK pin 9
*/
TM1638 module(8, 9, 7);
char* message[]={" ","O ","LO ","LLO ","ALLO ","HALLO "," HALLO ",
" HALLO "," HALLO"," HALL"," HAL"," HA"," H"," "};
void setup(){}
void loop()
{
for(int i = 0; i < 14; i++)
{
module.setDisplayToString(message[i]);
delay(100);
}
delay(500);
}
In der Arduino Referenz ist ein nahezu identisches Beispiel angegeben.warning: ISO C++ forbits converting a string constant to 'char*'
In dem unten angeführten Code-Beispiel bedeutet und bezeichnet der Stern hinter dem Datentyp char, dass es sich hierbei um einen String mit “Pointern” handelt. Da alle Arraynamen eigentlich Pointer sind, ist das notwendig, um ein Array von Arrays zu bilden (Zweidimensionales Array). Pointer sind ein Teil der eher „esoterischen“ Teile der C-Programmiersprache und schwer zu verstehen für Anfänger. Aber in diesem Codebeispiel ist es nicht notwendig, die Benutzung von Pointern zu verstehen, um sie effizient einzusetzen (ideal für Auswahl unterschiedlicher Anzeigetexte in LCD’s aufgrund von Entscheidungen im Programm [A.N.]).
Code: Alles auswählen
char* myStrings[]={"This is string 1", "This is string 2", "This is string 3",
"This is string 4", "This is string 5","This is string 6"};
void setup(){ // Setup wird einmal durchlaufen
Serial.begin(9600); // serielle Schnittstelle 9600Bd initialisieren
}
void loop(){ // Hauptprogramm wird in Schleife durchlaufen
for (int i = 0; i < 6; i++){ // 6 mal ausführen
Serial.println(myStrings[i]);
delay(500); // Pause 0,5 Sekunden
}
}
Gruss
Ludwig