Counter: Unterschied zwischen den Versionen
Biff (Diskussion | Beiträge) (Beispiel für Abfrage per HTTP hinzugefügt, Artikel formatiert und typos behoben.) |
Biff (Diskussion | Beiträge) (Artikel verständlicher formuliert.) |
||
| Zeile 1: | Zeile 1: | ||
| − | + | Dieses Beispiel zeigt, wie man einen '''Impulszähler''' mittels eines [[Control6]]-Skripts erstellen kann. Der Signaleingang ist am INT0-Pin. | |
| − | Signaleingang am INT0-Pin. | ||
| + | ==Abfrage== | ||
Counter-Abfrage mittels ECMD über TCP: | Counter-Abfrage mittels ECMD über TCP: | ||
gummi:~# echo "c6 get pc_counter" | socat stdio tcp4:10.0.0.40:2701 | gummi:~# echo "c6 get pc_counter" | socat stdio tcp4:10.0.0.40:2701 | ||
| Zeile 9: | Zeile 9: | ||
(liefert "pc_counter 98" im Browser). | (liefert "pc_counter 98" im Browser). | ||
| + | Siehe auch [[ECMD Protocols]]. | ||
| + | |||
| + | ==Code== | ||
Code für die src-Datei: | Code für die src-Datei: | ||
<source lang="text"> | <source lang="text"> | ||
Version vom 31. August 2010, 22:53 Uhr
Dieses Beispiel zeigt, wie man einen Impulszähler mittels eines Control6-Skripts erstellen kann. Der Signaleingang ist am INT0-Pin.
Abfrage
Counter-Abfrage mittels ECMD über TCP:
gummi:~# echo "c6 get pc_counter" | socat stdio tcp4:10.0.0.40:2701 pc_counter 98
oder mittels ECMD und Webbrowser:
http://10.0.0.40/ecmd?c6+get+pc_counter
(liefert "pc_counter 98" im Browser).
Siehe auch ECMD Protocols.
Code
Code für die src-Datei:
CONTROL_START
ECMD_GLOBAL(pc_counter, 0);
ON STARTUP DO
// Pullup-Widerstaende aktivieren
PORTD |= _BV(PORTD2);
DDRD |= _BV(DDD2);
PIND &= ~_BV(PIND2);
_EIMSK |= _BV(INT0);
_EICRA |= _BV(ISC01);
END
CONTROL_END
ISR(INT0_vect)
{
pc_counter ++;
}