Hi...
in der main.c sind bereits die ersten beiden DE für die Betriebsdatenerfassung vorgesehen.
DE 1 ist der Schaltspielzähler..
if (machineStatus.PINCchanged & 1<<SENS_PIN1) {
/**
* - 1. Beispiel
* Zustand von Sensor1 hat sich geändert<br>
* \b Beispielaktion:<br>
* zählen wie oft der PIN eingeschaltet wurde<br>
* der Zählerstand von PINCcounter kann dann<br>
* regelmässig ins Logfile geschrieben werden<br>
*/
if ( !(machineStatus.PINCStatus & 1<<SENS_PIN1) ) { // falls eingeschaltet
anlagenStatus.Zaehler1++;
}
DE 2 der Betriebsstundenzähler...
if (machineStatus.PINCchanged & 1<<SENS_PIN2) {
/**
* - 2. Beispiel
* Zustand von Sensor2 hat sich geändert<br>
* \b Beispielaktion:<br>
* Zeitspanne zwischen Ein- und Ausschalten messen<br>
* und in Logdatei festhalten
*/
if ( !(machineStatus.PINCStatus & 1<<SENS_PIN2) ) { // falls eingeschaltet
anlagenStatus.Zaehler2 = time;
}
else {
logdata("Sensor 2 Zeit: %i Sekunden",time - anlagenStatus.Zaehler2);
anlagenStatus.Zaehler2=0;
}
}
So richtig laufen tut das nicht, außerdem werden die Betriebsstunden in Millisekunden ausgegeben...Minuten wären mir aber wesentlich lieber. Wie müßte diese Zeile geändert werden:
anlagenStatus.Zaehler2 = time;
damit ich die Werte in Minuten bekomme...