![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
aaa
Dependencies: mbed BNO055_fusion Adafruit_GFX ros_lib_kinetic
main.cpp
- Committer:
- nakedt555
- Date:
- 2018-12-07
- Revision:
- 2:086272a2da1c
- Parent:
- 1:bdd17feaa4ce
- Child:
- 3:a45557a0dcb8
File content as of revision 2:086272a2da1c:
#include "mbed.h" #include "myRos.h" #include <ros.h> #include <ros/time.h> #include <std_msgs/Empty.h> #include "odom.h" //prototype void odom_update_callback(); //Create subscliber ros::Subscriber<std_msgs::Empty> ack_sub("nucleo/ack_from_pc", &ack_from_pc_cb); //Initialize GPIO DigitalOut myled(LED1); DigitalOut led0(PC_0); DigitalOut led1(PC_1); DigitalOut led2(PB_0); DigitalIn mysw(PC_13); //Initialize ODOM Odom odom; int main() { //Initialize TIM Timer GetTick; GetTick.start(); uint32_t debug_ts = 0; uint32_t ros_loop_ts = 0; //Set TIM IT Callback Ticker odom_tick; odom_tick.attach(&odom_update_callback, 0.02); //Initialize ROS My_Ros my_ros; my_ros.set_subscliber(ack_sub); while(1) { //For debug if(debug_ts <= GetTick.read_ms()){ debug_ts = GetTick.read_ms() + 20; led0 = !led0; } //For myRos loop if(ros_loop_ts <= GetTick.read_ms()){ ros_loop_ts = GetTick.read_ms() + 10; my_ros.loop(); } //角度計算用:ポーリングに置いとく odom.update_angle(); } } void odom_update_callback(){ odom.update_it_cb(); }