my
Dependencies: QEI BNO055 ros_lib_kinetic
main.cpp
- Committer:
- fllay
- Date:
- 2019-08-01
- Revision:
- 0:ae2e2cabc497
File content as of revision 0:ae2e2cabc497:
/* mbed Microcontroller Library * Copyright (c) 2018 ARM Limited * SPDX-License-Identifier: Apache-2.0 */ #include "mbed.h" #include "QEI.h" #include "ros.h" #include "geometry_msgs/Twist.h" ros::NodeHandle nh; Serial pc(USBTX, USBRX); DigitalOut led1(PA_10); DigitalOut M1_dir(PA_8); DigitalOut M2_dir(PB_10); PwmOut PWM1(PB_4); PwmOut PWM2(PB_5); QEI rightWheel (PA_5, PA_6, NC, 624); QEI leftWheel (PA_7, PB_6, NC, 624); void commandCallback(const geometry_msgs::Twist& cmd_msg); ros::Subscriber<geometry_msgs::Twist> cmd_sub("cmd_vel", commandCallback); #define SLEEP_TIME 500 // (msec) #define PRINT_AFTER_N_LOOPS 20 // main() runs in its own thread in the OS int main() { PWM1.period(0.01); PWM1 = 0.5; PWM2.period(0.01); PWM2 = 0.5; M1_dir = 1; M2_dir = 1; while (true) { led1 = !led1; wait_ms(SLEEP_TIME); pc.printf("Right Pulses is: %i Left pulses is %i\n", rightWheel.getPulses(), leftWheel.getPulses()); rightWheel.reset(); leftWheel.reset(); } } void commandCallback(const geometry_msgs::Twist& cmd_msg) { }