做工程时需要在树莓派进行串口通信。具体为接收到某个ROS的topic数据后,向串口下发数据。代码编写有两种方法。
方法一:借助serial库
1、运行环境为ubuntu,首先安装serial库:
sudo apt-get install serial
2、配置编写的package中的CMakeLists.txt
在find_package中添加serial;
3、给设备的USB端口权限;
4、代码范例:
manipulator_ros_serial.cpp
#include
#include
#include
#include
#define sBUFFERSIZE 7
unsigned char s_buffer[sBUFFERSIZE];
using namespace std;
serial::Serial ser;
//trans different serial cmds according to different action_cmd(joystick button)
void write_action_cmd(const std_msgs::Int64& action_cmd){
memset(s_buffer,0,sizeof(s_buffer));
if( 1 == action_cmd.data ){
s_buffer[0] = 0x55;
s_buffer[1] = 0x55;
s_buffer[2] = 0x05;
s_buffer[3] = 0x06;</