Pau_laner:
Also die Zeitmessung und Auswertung macht eine Software, die auf dem Pc installiert ist. Unter dem Trampolin werden zwei oder nach Bedarf drei Lichtschranken montiert. Über ein Schnittstellen Kabel werden die Signale von den Lichtschranken ausgewertet, es sind nur zwei Kontakte an der Schnittstelle, beim Kurzschließen dieser Kontakte wird die Zeit gestartet/gestoppt. Kurzschließen soll nur ein kurzer Impuls sein, das möchte ich über einen optokoppler schalten. Die positive Flanke soll die Zeit stoppen und die negative weiter laufen lassen. Und zum testen wollte ich auf einem Breadboard, wie oben beschrieben, über drei Taster und einer led. Hoffe man kann das nachvollziehen.
Was hindert dich daran, das so zu bauen?
Eine Stoppuhr hast du schon aus meiner Wühlkiste bekommen...
Und hier ist noch eine zweite:
class StoppUhr: public Printable
{
private:
unsigned long startzeit;
unsigned long abgelaufenezeit;
bool isrunning;
public:
void reset()
{
isrunning = false;
startzeit = 0;
abgelaufenezeit = 0;
}
StoppUhr()
{
reset();
}
void start()
{
if(!isrunning)
{
isrunning = true;
startzeit = millis();
}
}
void halt()
{
if(isrunning)
{
isrunning = false;
abgelaufenezeit += millis()-startzeit;
}
}
virtual size_t printTo(Print &printer) const
{
return printer.print(isrunning?millis()-startzeit+abgelaufenezeit:abgelaufenezeit);
}
} stoppuhr;
void uhrSteuerung()
{
switch(Serial.read())
{
case 'r':stoppuhr.reset();break;
case 's':stoppuhr.start();break;
case 'h':stoppuhr.halt(); break;
}
}
int bufferSize = 0; // merker fuer FiFo groesse
void serielleAusgabe()
{
if(bufferSize == Serial.availableForWrite()) // nur schreiben, wenn Buffer ganz leer
{
Serial.println(stoppuhr);
}
}
void setup()
{
Serial.begin(9600);
bufferSize = Serial.availableForWrite();
}
void loop()
{
uhrSteuerung();
serielleAusgabe();
}
Aber ich befürchte, dass dir diese auch nicht weiter hilft...
Dann musst du halt noch ein bisschen *****, bis dir einer genau das schreibt, was du brauchst.
Und dann wirst du feststellen, dass bei der Umstellung von Taster auf Optisch, sich die Anforderungen noch mal ändern, und du wieder mit leeren Händen da stehst.
Und bis dahin wirst du vermutlich alle Helfer verprellt haben....
Besser wäre natürlich, wenn du dein eigenes Köpfchen anstrengen würdest. Dann würdest du wenigstens etwas programmieren lernen.
Ich habe einen Arduino Uno und kenne mich mit Programmierung nicht so richtig aus.
Das könntest du aber lernen....
Es ist nur die Frage ob du das willst.....