PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : M128 und Stopwatches



Fabian E.
22.05.2010, 14:00
Hallo,
ich bräuchte grade mal eine Anregung, wie ich mir die Funktionalität der Stopwatches vom RP6 auf der M128 besorgen kann.
Hat jemand eine Idee?

ScummVM
22.05.2010, 16:54
Mittels Timer vielleicht? Kommt darauf an für was du die Stopwatch einsetzt eventuell ginge auch Thread_Delay, je nachdem ob du überhaupt Threads einsetzt.

Dirk
22.05.2010, 17:23
Hallo Fabian E.,

man könnte es evtl. so machen (nur Gedankenspiel!):

1. Initialisierung eines 1ms Interrupts:

Irq_SetVect(INT_TIM1CMPA, INT_1ms); // ISR definieren
Timer_T1Time(14746, PS_1); // Timer1: 1ms Interrupt

2. ISR definieren:

void INT_1ms(void)
{
ms_counter++; // Increase a counter every ms

irqcnt = Irq_GetCount(INT_TIM1CMPA);// Interrupt Request Counter
}

3. Im Programm diesen Counter nutzen, um nach einer bestimmten Zeit etwas anderes zu machen/abzubrechen/usw. Dafür könnte man auch noch eigene Funktionen schreiben für "Counter zurücksetzen", "Counter starten", Counter stoppen". Wenn man die genauso nennt, wie beim RP6Base/M32, braucht man sich kaum umzugewöhnen.

Gruß Dirk

Fabian E.
22.05.2010, 18:40
Danke ihr beiden =) Damit sollte ich klar kommen.
Ich bin grade dabei meine Software von M32 auf M128 umzuschreiben, im ersten Schritt will ich erst mal alles zum Laufen bekommen und danach werde ich mal sehen, was ich da noch verbessern kann mit Threads und so.
Also Danke schonmal! =)

Dirk
24.05.2010, 17:33
@Fabian E.:
Weil ich die Stopwatches auch gut finde, hier eine Library mit Demo für die RP6 CCPRO M128. Vielleicht kannst du die auch gebrauchen.
https://www.roboternetz.de/phpBB2/viewtopic.php?t=54443

Gruß Dirk