Arexx RP6 V2 Build your own robot kit RP6 V2 Manual Do Utilizador
![Arexx](https://files.manualsbrain.com/attachments/7d5bfb0ba6ea5b2685c982333a7389b552ce0a09/common/fit/150/50/e2737ebddbd476d0e73a3bf82f6692f0e681a71c3e37eb574014e9811fb8/brand_logo.gif)
Códigos do produto
RP6 V2
RP6 ROBOT SYSTEM - 4. Programmierung des RP6
Der Event Handler muss folgende Signatur haben:
void receiveRC5Data(RC5data_t rc5data)
Wie die Funktion heisst, ist natürlich auch hier fast egal!
void receiveRC5Data(RC5data_t rc5data)
Wie die Funktion heisst, ist natürlich auch hier fast egal!
void IRCOMM_setRC5DataReadyHandler(void (*rc5Handler)(RC5data_t))
Mit dieser Funktion kann man den zuvor definierten Event Handler registrieren.
z.B. so:
IRCOMM_setRC5DataReadyHandler(receiveRC5Data);
Danach wird immer diese Funktion aufgerufen sobald ein gültiger RC5 Code empfan-
gen worden ist.
z.B. so:
IRCOMM_setRC5DataReadyHandler(receiveRC5Data);
Danach wird immer diese Funktion aufgerufen sobald ein gültiger RC5 Code empfan-
gen worden ist.
RC5data_t ist ein eigens definierter Datentyp, der RC5 Adressbits (Device Address),
Togglebit und Keycode (bzw. die Daten) enthält. Diese sind dann ähnlich wie normale
Togglebit und Keycode (bzw. die Daten) enthält. Diese sind dann ähnlich wie normale
Variablen verwendbar und haben folgende Bezeichnungen:
rc5data.device, rc5data.toggle_bit, rc5data.key_code
Auf der CD finden Sie ein größeres Beispielprogramm dazu.
rc5data.device, rc5data.toggle_bit, rc5data.key_code
Auf der CD finden Sie ein größeres Beispielprogramm dazu.
Achtung: schalten Sie niemals den Pin des IRCOMM dauerhaft an!
Die IR LEDs und die Steuerschaltung sind für Impulsbetrieb ausge-
legt und dürfen nur eine Millisekunde am Stück eingeschaltet blei-
legt und dürfen nur eine Millisekunde am Stück eingeschaltet blei-
ben! Die Stromaufnahme ist sonst bei voll aufgeladenen Akkus zu
hoch. Ändern Sie die IRCOMM Funktionen nicht selbst ab, wenn Sie
hoch. Ändern Sie die IRCOMM Funktionen nicht selbst ab, wenn Sie
nicht genau wissen was Sie tun. Vor allem die Interrupt Routine die
zur Ansteuerung verwendet wird, sollte nicht verändert werden!
zur Ansteuerung verwendet wird, sollte nicht verändert werden!
4.6.8. Stromsparfunktionen
Weiter oben haben wir powerON() verwendet, ohne näher darauf einzugehen. Man
Weiter oben haben wir powerON() verwendet, ohne näher darauf einzugehen. Man
kann beim RP6 das ACS, die Encoder, die Motorstromsensoren und die Power ON LED
abschalten um Energie zu sparen (sind immerhin etwa 10mA wenn man diese
abschalten um Energie zu sparen (sind immerhin etwa 10mA wenn man diese
Sensoren gerade nicht braucht).
Dazu gibt es die Makros:
Dazu gibt es die Makros:
powerON()
um die genannten Dinge einzuschalten und
powerOFF()
um das alles abzuschalten. Diese beiden Makros tun nichts weiter, als einen I/O Pin
auf high oder low zu schalten.
Bevor man ACS, IRCOMM und Motorregelung verwenden kann, muss
man in jedem Fall das Makro powerON() aufrufen! Sonst haben die
entsprechenden Sensoren keine Energie. Die Motorregelung kann
entsprechenden Sensoren keine Energie. Die Motorregelung kann
z.B. nur korrekt arbeiten, wenn ein Signal von den Drehgebern und
Stromsensoren kommt.
Stromsensoren kommt.
Wenn Sie mal vergessen powerON() aufzurufen, werden die Motoren
nach einem kurzen Startversuch sofort wieder abgeschaltet und die
nach einem kurzen Startversuch sofort wieder abgeschaltet und die
vier roten Status LEDs fangen an zu blinken.
- 98 -