linux c++串口数据解码 ros
Linux串口编程主要流程 : 1、open打开串口设备,获取串口设备文件描述符(Linux一切都是文件)-->2、设置set波特率,初始化ini等-->3、对数据解码-->4、read()、write()操作文件描述符进行串口通信 在主函数中,初始化ros节点,启动,定义发布消息的名称。 构造函数,初始化接口名称以及波特率( 每秒钟传送的码元符号的个数 ),从而初始化这个类 while循环,只要节点在运行就接收和解码数据,并输出到topic中。 int main(int argc, char** argv) { ROS_INFO("[info] init begin"); ros::init(argc, argv, "virtual_serial"); //初始化节点 ros::NodeHandle n; //启动节点 ros::Publisher chatter_pub = n.advertise<gripper_send::rec_num_msgs>("gripper_send", 1000); //定义发布消息的名称及sulv ros::Rate loop_rate(50); //控制发布速度,与sleep配合使用,每0.02秒休息一次 DataGripper data_gripper(dev_name, 115200); //构造函数,看串口是否打开并初始化 while