habe ein kleines Programm geschrieben, das bei einem Ereignis (GPIO wechselt Pegel) den Pegel und Uhrzeit in ein File schreibt. Das File wird dazu geöffnet und gleich wieder geschlossen. Das funktioniert auch soweit.
Nur wenn ich das Programm beim Booten starte, tut sich nix. Manuell über die Konsole starten, geht alles.
Leider habe ich grade keine Ahnung, in welche Richtung ich suchen soll? Hat jemand einen Tip?
Ich kopier mal den File-IO Part hier rein (C-Progi)
gestartet wird ja beides mit sudo ..., also beim Booten und beim Starten von der Konsole.
Wenn ich ein Programm zum Ausgeben von GPIO Pegeln beim Booten starte, geht das. liegt es am File - io, bei dem Rechte fehlen...?
ich bin mir wirklich unsicher, ob ich alle nötigen Infos jetzt reingespielt habe. Bin halt kein Linux-Profi!
#include <wiringPi.h>
#define bool char
#include <stdio.h>
#include <time.h>
int main()
{
int i=0;
bool bRead = 0;
bool bZustand = 0;
time_t t;
struct tm * ts;
FILE *ptr_file;
if (wiringPiSetupPhys() == -1)
return 1;
pinMode(26, INPUT); // Header Pin 26
t = time(NULL);
ts = localtime(&t);
while(1)
{
if(bZustand != (bRead = digitalRead(26)))
{
bZustand = bRead;
t = time(NULL);
ts = localtime(&t);
ptr_file =fopen("output.txt", "a+");
fprintf(ptr_file,"%s", asctime(ts));
fclose(ptr_file);
}
else
{
//printf("\ngleicher Pegel = %d", bRead);
}
}
Alles anzeigen
schon mal danke für die Tips!