Also eigentlich nicht, wenn du mit der Taste lediglich das Programm auswählen und starten willst musst du halt eine while(1)-Schleife einbauen, bei der du abfragst, welche Taste gedrückt ist und kannst dann mit einem simplen Funktionsaufruf dein Fahrprogramm auslösen, also so:
Code:
#include "RP6RobotBaseLib.h"
void Fahrprogramm_1(); //Prototypenliste
void Fahrprogramm_2();
void Fahrprogramm_1()
{
// Set Bumpers state changed event handler:
BUMPERS_setStateChangedHandler(bumpersStateChanged);
powerON(); // Turn on Encoders, Current sensing, ACS and Power LED.
setACSPwrMed();
// Main loop
while(true)
{
//task_RP6System();
//radar();
akku();
task_ADC();
task_ACS();
task_Bumpers();
task_motionControl();
//radar();
behaviourController();
}
}
void Fahrprogramm_2()
{
//halt dein 2. Fahrprogramm oder auch nix
}
int main(void)
{
initRobotBase();
while(1)
{
switch(rc5data.key_code)
{
case RC5_KEY_PROG1: Fahrprogramm_1(); break;
case RC5_KEY_PROG2: Fahrprogramm_2(); break;
//case <weitere Tasten>: Fahrprogramm_x(); break;
}
}
MfG Pr0gm4n
Lesezeichen