RC5Test/test.c-Dateireferenz

#include "asuro.h"
#include "rc5.h"
#include <stdlib.h>

gehe zum Quellcode dieser Datei

Makrodefinitionen

#define RC5_AVAILABLE
#define DIARWD   0x1008
#define DIAFWD   0x1002
#define DIALEFT   0x1004
#define DIARIGHT   0x1006
#define DIASTOP   0x1029
#define TUNERRWD   0x1021
#define TUNERFWD   0x1020
#define TUNERLEFT   0x1011
#define TUNERRIGHT   0x1010
#define TUNERSTOP   0x1025
#define OFFSET   0x3F
#define STEP   5

Funktionen

void IRFwd (void)
void IRRwd (void)
void IRLeft (void)
void IRRight (void)
void IRStop (void)
int main (void)

Variablen

int speedLeft
int speedRight


Makro-Dokumentation

#define DIAFWD   0x1002

Definiert in Zeile 42 der Datei RC5Test/test.c.

#define DIALEFT   0x1004

Definiert in Zeile 43 der Datei RC5Test/test.c.

#define DIARIGHT   0x1006

Definiert in Zeile 44 der Datei RC5Test/test.c.

#define DIARWD   0x1008

Definiert in Zeile 41 der Datei RC5Test/test.c.

#define DIASTOP   0x1029

Definiert in Zeile 45 der Datei RC5Test/test.c.

#define OFFSET   0x3F

Definiert in Zeile 53 der Datei RC5Test/test.c.

#define RC5_AVAILABLE

/file IRDemo.c /brief Routinen fuer die Dekodierung von RC5-Fernbedienungs-Codes /author Benjamin Benz (bbe@heise.de), m.a.r.v.i.n

/version V001 - 14.08.2003 - Jan Grewe initial build V002 - 22.10.2003 - Jan Grewe angepasst auf asuro.c Ver.2.10 V003 - 11.02.2007 - m.a.r.v.i.n c't-Bot RC5 Code portiert fuer den ASURO

Definiert in Zeile 34 der Datei RC5Test/test.c.

#define STEP   5

Definiert in Zeile 54 der Datei RC5Test/test.c.

#define TUNERFWD   0x1020

Definiert in Zeile 48 der Datei RC5Test/test.c.

#define TUNERLEFT   0x1011

Definiert in Zeile 49 der Datei RC5Test/test.c.

#define TUNERRIGHT   0x1010

Definiert in Zeile 50 der Datei RC5Test/test.c.

#define TUNERRWD   0x1021

Definiert in Zeile 47 der Datei RC5Test/test.c.

#define TUNERSTOP   0x1025

Definiert in Zeile 51 der Datei RC5Test/test.c.


Dokumentation der Funktionen

void IRFwd ( void   ) 

Definiert in Zeile 58 der Datei RC5Test/test.c.

00059 {
00060   speedRight += STEP;
00061   speedLeft  += STEP;
00062   if (speedLeft < 0 && speedLeft >= -OFFSET) speedLeft = 1;
00063   if (speedRight < 0 && speedRight >= -OFFSET) speedRight = 1;
00064   FrontLED(ON);
00065   BackLED(OFF,OFF);
00066 }

void IRLeft ( void   ) 

Definiert in Zeile 78 der Datei RC5Test/test.c.

00079 {
00080   speedLeft  -= STEP;
00081   if (speedLeft > 0 && speedLeft <= OFFSET) speedLeft = -1;
00082   speedRight += STEP;
00083   if (speedRight < 0 && speedRight >= -OFFSET) speedRight = 1;
00084   FrontLED(OFF);
00085   BackLED(ON,OFF);
00086 }

void IRRight ( void   ) 

Definiert in Zeile 88 der Datei RC5Test/test.c.

00089 {
00090   speedLeft  += STEP;
00091   if (speedLeft < 0 && speedLeft >= -OFFSET) speedLeft = 1;
00092   speedRight -= STEP;
00093   if (speedRight > 0 && speedRight <= OFFSET) speedRight = -1;
00094   FrontLED(OFF);
00095   BackLED(OFF,ON);
00096 }

void IRRwd ( void   ) 

Definiert in Zeile 68 der Datei RC5Test/test.c.

00069 {
00070   speedRight -= STEP;
00071   speedLeft  -= STEP;
00072   if (speedRight > 0 && speedRight <= OFFSET)  speedRight = -1;
00073   if (speedLeft > 0 && speedLeft <= OFFSET)  speedLeft = -1;
00074   FrontLED(OFF);
00075   BackLED(ON,ON);
00076 }

void IRStop ( void   ) 

Definiert in Zeile 99 der Datei RC5Test/test.c.

00100 {
00101   speedRight = speedLeft = 0;
00102   FrontLED(OFF);
00103   BackLED(OFF,OFF);
00104 }

int main ( void   ) 

Definiert in Zeile 106 der Datei RC5Test/test.c.

00107 {
00108 
00109   static unsigned int cmd;
00110   unsigned char leftDir = FWD, rightDir = FWD;
00111   char text[7];
00112 
00113   Init();
00114   InitRC5();
00115 
00116   SerPrint("RC5 Test\r\n");
00117   while (1)
00118   {
00119     cmd = ReadRC5();
00120     if (cmd)
00121     {
00122       cmd &= RC5_MASK;
00123       itoa(cmd, text, 16);
00124       SerPrint(text);
00125       SerPrint("\r\n");
00126 
00127       switch (cmd)
00128       {
00129       case TUNERRWD :
00130       case DIARWD :
00131         SerPrint("rwd\r\n");
00132         IRRwd();
00133         break;
00134       case TUNERFWD :
00135       case DIAFWD :
00136         SerPrint("fwd\r\n");
00137         IRFwd();
00138         break;
00139       case TUNERLEFT :
00140       case DIALEFT:
00141         SerPrint("lft\r\n");
00142         IRLeft();
00143         break;
00144       case TUNERRIGHT :
00145       case DIARIGHT:
00146         SerPrint("rgt\r\n");
00147         IRRight();
00148         break;
00149       case TUNERSTOP :
00150       case DIASTOP :
00151         SerPrint("stp\r\n");
00152         IRStop();
00153         break;
00154       }
00155     }
00156     if (speedLeft > 0 && speedLeft <  OFFSET) speedLeft += OFFSET;
00157     if (speedLeft < 0 && speedLeft > -OFFSET) speedLeft -= OFFSET;
00158     if (speedRight > 0 && speedRight <  OFFSET) speedRight += OFFSET;
00159     if (speedRight < 0 && speedRight > -OFFSET) speedRight -= OFFSET;
00160 
00161     leftDir = rightDir = FWD;
00162     if (speedLeft < 0)  leftDir = RWD;
00163     if (speedRight < 0) rightDir = RWD;
00164 
00165     if (speedLeft >   255) speedLeft  =  255;
00166     if (speedLeft <  -255) speedLeft  = -255;
00167     if (speedRight >  255) speedRight =  255;
00168     if (speedRight < -255) speedRight = -255;
00169 
00170     MotorDir(leftDir,rightDir);
00171     MotorSpeed(abs(speedLeft),abs(speedRight));
00172     Msleep(100);
00173   }
00174   return 0;
00175 }


Variablen-Dokumentation

int speedLeft

Definiert in Zeile 56 der Datei RC5Test/test.c.

int speedRight

Definiert in Zeile 56 der Datei RC5Test/test.c.


Erzeugt am Mon Apr 9 13:28:41 2007 für ASURO Library von  doxygen 1.5.1-p1