Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed Servo ros_lib_kinetic
Motors/Motor.h
- Committer:
- Stumi
- Date:
- 2019-12-10
- Revision:
- 8:262c6c40bff9
- Parent:
- 7:8248af58df5a
- Child:
- 9:326b8f261ef0
File content as of revision 8:262c6c40bff9:
/*--------------------------------------------------------------------------------
Filename: TOF.h
Description: Header file for adafruit VL_6180X TOF sensor
--------------------------------------------------------------------------------*/
#ifndef MOTOR_H
#define MOTOR_H
#include "mbed.h"
#include "Buzzer.h"
#include <ros.h>
#include <std_msgs/UInt8.h>
/*--------------------------------------------------------------------------------
---------------------------------DEFINES------------------------------------------
--------------------------------------------------------------------------------*/
//MOTOR 1
#define M1_IN1 PC_6
#define M1_IN2 PB_15
#define M1_PWM PB_13
#define M1_A PA_4
#define M1_B PB_12
//MOTOR 2
#define M2_IN1 PA_15
#define M2_IN2 PC_7
#define M2_PWM PB_4
#define M2_A PB_5
#define M2_B PB_3
/*--------------------------------------------------------------------------------
---------------------------------CLASSES------------------------------------------
--------------------------------------------------------------------------------*/
// Class for managing connection and state to a VL6180X sensor
class cMotor
{
public:
cMotor(PwmOut pwm, DigitalOut fwd, DigitalOut rev); //Constructor, initialised motor pinouts
void Forwards(float speed); //Drives motor forwards
void Backwards(float speed);//Drives motor backwards
void Stop(); //Stops both motors
private:
PwmOut _pwm;
DigitalOut _fwd;
DigitalOut _rev;
};
/*--------------------------------------------------------------------------------
-----------------------------------Functions---------------------------------------
--------------------------------------------------------------------------------*/
void Check_for_obstacles(uint8_t TOFRange[4]); //Obstacle avoidance functionality
void update_power_levels(float vBatt); //Sends power level to the LED class for further processing
void keySub(const std_msgs::UInt8 &keyPress);
/*--------------------------------------------------------------------------------
--------------------------------External Variables--------------------------------
--------------------------------------------------------------------------------*/
//extern cMotor MotorL; //Left motor class and pin initialisation
//extern cMotor MotorR; //Right motor class and pin initialisation
#endif