Helvijs Kiselis
/
MicromousePES2
main.cpp: Sensoren einlesen und Motoren ansteuern
main.cpp
- Committer:
- Helvis
- Date:
- 2018-04-09
- Revision:
- 0:9a3e7847a4be
- Child:
- 1:1adf5dfcc7bb
File content as of revision 0:9a3e7847a4be:
#include <mbed.h> #include "EncoderCounter.h" #include "Controller.h" #include "IRSensor.h" //Sensor I/O: AnalogIn lineSensor(PA_0); AnalogIn distance1(PA_1); AnalogIn distance2(PA_4); AnalogIn distance3(PB_0); IRSensor irSensorL (distance1); IRSensor irSensorC (distance2); IRSensor irSensorR (distance3); //Motor I/O: DigitalOut myled(LED1); DigitalOut enableMotorDriver(PB_2); DigitalIn motorDriverFault(PB_14); DigitalIn motorDriverWarning(PB_15); PwmOut pwmLeft(PA_8); PwmOut pwmRight(PA_9); EncoderCounter counterLeft(PB_6, PB_7); EncoderCounter counterRight(PA_6, PC_7); Controller controller(pwmLeft, pwmRight, counterLeft, counterRight); int main() { /* Micromouse Test */ //Sensoren while(1) { float distanceL = irSensorL.read(); float distanceC = irSensorC.read(); float distanceR = irSensorR.read(); printf("Rechts: %f Mitte: %f Links: %f Line: %f\n", distanceL, distanceC, distanceR, lineSensor); wait(0.5f); } //Motoren while(0) { controller.setDesiredSpeedLeft(50.0f); //Drehzahl in [rpm] controller.setDesiredSpeedRIght(50.0f); enableMotorDriver = 1; //Schaltet den Leistungstreiber ein while(1) { myled =! myled; wait(0.1f); //200 ms } } }