1 | #include <SPI.h>
|
2 | #include <SdFat.h>
|
3 | int chipSelect = 10; // SD card chip select pin
|
4 | //Parameter von der SD Karte (NETWORK.TXT)
|
5 | byte SD_Status = 0;
|
6 | int Januar[4] = { 0, 0, 0, 0};
|
7 | int Februar[4] = { 0, 0, 0, 0};
|
8 | int Maerz[4] = { 0, 0, 0, 0};
|
9 | int April[4] = { 0, 0, 0, 0};
|
10 | int Mai[4] = { 0, 0, 0, 0};
|
11 | int Juni[4] = { 0, 0, 0, 0};
|
12 | int Juli[4] = { 0, 0, 0, 0};
|
13 | int August[4] = { 0, 0, 0, 0};
|
14 | int September[4] = { 0, 0, 0, 0};
|
15 | int Oktober[4] = { 0, 0, 0, 0};
|
16 | int November[4] = { 0, 0, 0, 0};
|
17 | int Dezember[4] = { 0, 0, 0, 0};
|
18 | char vorname[20];
|
19 | char nachname[20];
|
20 | char null_null[20];
|
21 | SdFat sd; // file system auf SD-Karte
|
22 |
|
23 | void setup()
|
24 | {
|
25 |
|
26 | Serial.begin(9600);
|
27 |
|
28 | //Serial.println("Initialisiere SD-Karte...");
|
29 | if(!sd.begin(chipSelect, SPI_HALF_SPEED))
|
30 | {
|
31 | Serial.println("- Fehler beim initialisieren der SD-Karte!\n");
|
32 | sd.initErrorHalt();
|
33 | } else
|
34 |
|
35 | Serial.println("SD Karte erfolgreich initialisiert.");
|
36 |
|
37 | readNetworkSettingsFromSD();
|
38 |
|
39 | Serial.print("Januar: ");Serial.print(Januar[0]);Serial.print(".");Serial.print(Januar[1]);Serial.print(" ");Serial.print(Januar[2]);Serial.print(".");Serial.println(Januar[3]);
|
40 | Serial.print("Februar: ");Serial.print(Februar[0]);Serial.print(".");Serial.print(Februar[1]);Serial.print(" ");Serial.print(Februar[2]);Serial.print(".");Serial.println(Februar[3]);
|
41 | Serial.print("März: ");Serial.print(Maerz[0]);Serial.print(".");Serial.print(Maerz[1]);Serial.print(" ");Serial.print(Maerz[2]);Serial.print(".");Serial.println(Maerz[3]);
|
42 | Serial.print("April: ");Serial.print(April[0]);Serial.print(".");Serial.print(April[1]);Serial.print(" ");Serial.print(April[2]);Serial.print(".");Serial.println(April[3]);
|
43 | Serial.print("Mai: ");Serial.print(Mai[0]);Serial.print(".");Serial.print(Mai[1]);Serial.print(" ");Serial.print(Mai[2]);Serial.print(".");Serial.println(Mai[3]);
|
44 | Serial.print("Juni: ");Serial.print(Juni[0]);Serial.print(".");Serial.print(Juni[1]);Serial.print(" ");Serial.print(Juni[2]);Serial.print(".");Serial.println(Juni[3]);
|
45 | Serial.print("Juli: ");Serial.print(Juli[0]);Serial.print(".");Serial.print(Juli[1]);Serial.print(" ");Serial.print(Juli[2]);Serial.print(".");Serial.println(Juli[3]);
|
46 | Serial.print("August: ");Serial.print(August[0]);Serial.print(".");Serial.print(August[1]);Serial.print(" ");Serial.print(August[2]);Serial.print(".");Serial.println(August[3]);
|
47 | Serial.print("September:");Serial.print(September[0]);Serial.print(".");Serial.print(September[1]);Serial.print(" ");Serial.print(September[2]);Serial.print(".");Serial.println(September[3]);
|
48 | Serial.print("Oktober: ");Serial.print(Oktober[0]);Serial.print(".");Serial.print(Oktober[1]);Serial.print(" ");Serial.print(Oktober[2]);Serial.print(".");Serial.println(Oktober[3]);
|
49 | Serial.print("November: ");Serial.print(November[0]);Serial.print(".");Serial.print(November[1]);Serial.print(" ");Serial.print(November[2]);Serial.print(".");Serial.println(November[3]);
|
50 | Serial.print("Dezember: ");Serial.print(Dezember[0]);Serial.print(".");Serial.print(Dezember[1]);Serial.print(" ");Serial.print(Dezember[2]);Serial.print(".");Serial.println(Dezember[3]);
|
51 | Serial.println(vorname);
|
52 | Serial.println(nachname);
|
53 | Serial.println(null_null);
|
54 | if(SD_Status==1){
|
55 | Serial.println("Parameter erfolgreich geladen.");}
|
56 |
|
57 |
|
58 | /*
|
59 | unsigned long number = strtoul( serverurl, NULL, 10 );
|
60 | Serial.println(number);
|
61 | */
|
62 |
|
63 | }
|
64 |
|
65 | /* Parameter Zeilenweise aus Textdatei von SD-Karte laden */
|
66 | void readNetworkSettingsFromSD()
|
67 | {
|
68 | SdFile myFile("PARAMETER.TXT", O_RDWR);
|
69 | char netBuffer[50];
|
70 | if (myFile.isOpen())
|
71 | {
|
72 | int chPos = 0;
|
73 | int lineNo = 0;
|
74 | SD_Status = 1;
|
75 |
|
76 | while (myFile.available())
|
77 | {
|
78 | char ch = myFile.read();
|
79 |
|
80 | if(ch == '\n') // '\r' oder '\n'
|
81 | {
|
82 | chPos = 0;
|
83 |
|
84 | if(lineNo==0){sscanf(netBuffer,"%u.%u-%u.%u",&Januar[0],&Januar[1],&Januar[2],&Januar[3]);}
|
85 | if(lineNo==1){sscanf(netBuffer,"%u.%u-%u.%u",&Februar[0],&Februar[1],&Februar[2],&Februar[3]);}
|
86 | if(lineNo==2){sscanf(netBuffer,"%u.%u-%u.%u",&Maerz[0],&Maerz[1],&Maerz[2],&Maerz[3]);}
|
87 | if(lineNo==3){sscanf(netBuffer,"%u.%u-%u.%u",&April[0],&April[1],&April[2],&April[3]);}
|
88 | if(lineNo==4){sscanf(netBuffer,"%u.%u-%u.%u",&Mai[0],&Mai[1],&Mai[2],&Mai[3]);}
|
89 | if(lineNo==5){sscanf(netBuffer,"%u.%u-%u.%u",&Juni[0],&Juni[1],&Juni[2],&Juni[3]);}
|
90 | if(lineNo==6){sscanf(netBuffer,"%u.%u-%u.%u",&Juli[0],&Juli[1],&Juli[2],&Juli[3]);}
|
91 | if(lineNo==7){sscanf(netBuffer,"%u.%u-%u.%u",&August[0],&August[1],&August[2],&August[3]);}
|
92 | if(lineNo==8){sscanf(netBuffer,"%u.%u-%u.%u",&September[0],&September[1],&September[2],&September[3]);}
|
93 | if(lineNo==9){sscanf(netBuffer,"%u.%u-%u.%u",&Oktober[0],&Oktober[1],&Oktober[2],&Oktober[3]);}
|
94 | if(lineNo==10){sscanf(netBuffer,"%u.%u-%u.%u",&November[0],&November[1],&November[2],&November[3]);}
|
95 | if(lineNo==11){sscanf(netBuffer,"%u.%u-%u.%u",&Dezember[0],&Dezember[1],&Dezember[2],&Dezember[3]);}
|
96 | if(lineNo==12){sscanf(netBuffer,"%s",vorname);}
|
97 | if(lineNo==13){sscanf(netBuffer,"%s",nachname);}
|
98 | if(lineNo==14){sscanf(netBuffer,"%s",null_null);}
|
99 |
|
100 | lineNo++;
|
101 | }
|
102 |
|
103 | // if(ch == '\n') // '\r' oder '\n'
|
104 | else if(ch == '\r')
|
105 | {
|
106 | }
|
107 | else if(chPos < 100)
|
108 | {
|
109 | netBuffer[chPos] = ch;
|
110 | chPos++;
|
111 | netBuffer[chPos] = 0;
|
112 | }
|
113 | } // while (myFile.available())
|
114 |
|
115 | myFile.close();
|
116 | } // if (myFile.isOpen())
|
117 | else
|
118 | {
|
119 | Serial.println("Fehler beim ermitteln der Parameter!");
|
120 | sd.initErrorHalt();
|
121 | }
|
122 | }
|
123 |
|
124 | void loop()
|
125 | {
|
126 | SdFile myFile("PARAMETER.TXT", O_RDWR);
|
127 | if (myFile.isOpen())
|
128 | {
|
129 |
|
130 |
|
131 | }
|
132 | }
|