ros_serial for mbed updated to work with ROS Hydro. Library still needs to be debugged
Library and program still under development!
Diff: examples/pubsub.cpp
- Revision:
- 0:cb1dffdc7d05
diff -r 000000000000 -r cb1dffdc7d05 examples/pubsub.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/pubsub.cpp Sun Feb 15 10:54:04 2015 +0000 @@ -0,0 +1,41 @@ +//#define COMPILE_PUBSUB_CODE_ROSSERIAL +#ifdef COMPILE_PUBSUB_CODE_ROSSERIAL + +/* + * rosserial PubSub Example + * Prints "hello world!" and toggles led + */ +#include "mbed.h" +#include <ros.h> +#include <std_msgs/String.h> +#include <std_msgs/Empty.h> + +ros::NodeHandle nh; +DigitalOut myled(LED1); + +void messageCb( const std_msgs::Empty& toggle_msg) { + myled = !myled; // blink the led +} + +ros::Subscriber<std_msgs::Empty> sub("toggle_led", messageCb ); + + + +std_msgs::String str_msg; +ros::Publisher chatter("chatter", &str_msg); + +char hello[13] = "hello world!"; + +int main() { + nh.initNode(); + nh.advertise(chatter); + nh.subscribe(sub); + + while (1) { + str_msg.data = hello; + chatter.publish( &str_msg ); + nh.spinOnce(); + wait_ms(500); + } +} +#endif \ No newline at end of file