#include "asuro.h"
#include <stdlib.h>
gehe zum Quellcode dieser Datei
Makrodefinitionen | |
#define | OFFSET 0x3F |
#define | STEP 5 |
#define | RWD_KEY '2' |
#define | FWD_KEY '8' |
#define | LEFT_KEY '4' |
#define | RIGHT_KEY '6' |
#define | STOP_KEY '5' |
#define | ESC_KEY 0x1B |
Funktionen | |
void | PCFwd (void) |
void | PCRwd (void) |
void | PCLeft (void) |
void | PCRight (void) |
void | PCStop (void) |
void | PCDemo (void) |
Variablen | |
int | speedLeft |
int | speedRight |
void PCDemo | ( | void | ) |
Definiert in Zeile 115 der Datei PCDemo.c.
00116 { 00117 unsigned char cmd; 00118 unsigned char leftDir = FWD, rightDir = FWD; 00119 00120 Init(); 00121 SerPrint("PCDemo\r\n"); 00122 StartSwitch(); 00123 sei(); 00124 for (;;) 00125 { 00126 cmd = 0; 00127 SerRead(&cmd,1,0xFFFE); 00128 switch (cmd) 00129 { 00130 case RWD_KEY : 00131 PCRwd(); 00132 break; 00133 case FWD_KEY : 00134 PCFwd(); 00135 break; 00136 case LEFT_KEY : 00137 PCLeft(); 00138 break; 00139 case RIGHT_KEY : 00140 PCRight(); 00141 break; 00142 case STOP_KEY : 00143 PCStop(); 00144 break; 00145 case ESC_KEY : 00146 return; 00147 break; 00148 } 00149 if (speedLeft > 0 && speedLeft < OFFSET) speedLeft += OFFSET; 00150 if (speedLeft < 0 && speedLeft > -OFFSET) speedLeft -= OFFSET; 00151 if (speedRight > 0 && speedRight < OFFSET) speedRight += OFFSET; 00152 if (speedRight < 0 && speedRight > -OFFSET) speedRight -= OFFSET; 00153 00154 if (switched) 00155 { 00156 speedLeft = 0; 00157 speedRight = 0; 00158 switched = FALSE; 00159 // und ab gehts --- fahr zurück 00160 MotorDir(RWD,RWD); 00161 MotorSpeed(200,200); 00162 FrontLED(ON); 00163 BackLED(ON,ON); 00164 Msleep(1000); 00165 } 00166 00167 leftDir = rightDir = FWD; 00168 if (speedLeft < 0) leftDir = RWD; 00169 if (speedRight < 0) rightDir = RWD; 00170 00171 if (speedLeft > 255) speedLeft = 255; 00172 if (speedLeft < -255) speedLeft = -255; 00173 if (speedRight > 255) speedRight = 255; 00174 if (speedRight < -255) speedRight = -255; 00175 00176 MotorDir(leftDir,rightDir); 00177 MotorSpeed(abs(speedLeft),abs(speedRight)); 00178 } 00179 }
void PCFwd | ( | void | ) |
void PCLeft | ( | void | ) |
void PCRight | ( | void | ) |
Definiert in Zeile 96 der Datei PCDemo.c.
00097 { 00098 speedLeft += STEP; 00099 if (speedLeft < 0 && speedLeft >= -OFFSET) speedLeft = 1; 00100 speedRight -= STEP; 00101 if (speedRight > 0 && speedRight <= OFFSET) speedRight = -1; 00102 FrontLED(OFF); 00103 BackLED(OFF,ON); 00104 }
void PCRwd | ( | void | ) |
Definiert in Zeile 76 der Datei PCDemo.c.
00077 { 00078 speedRight -= STEP; 00079 speedLeft -= STEP; 00080 if (speedRight > 0 && speedRight <= OFFSET) speedRight = -1; 00081 if (speedLeft > 0 && speedLeft <= OFFSET) speedLeft = -1; 00082 FrontLED(OFF); 00083 BackLED(ON,ON); 00084 }
void PCStop | ( | void | ) |
int speedRight |