ROS主控讀取stm32發(fā)送的數(shù)據(jù)
之后便可以通過
Stm32_Serial.read(Receive_Data_Pr,sizeof(Receive_Data_Pr));
read函數(shù)讀取串口接收到的字節(jié),之后通過定義的通信協(xié)議再進(jìn)行和校驗與數(shù)據(jù)解析即可stm32向ROS主控發(fā)送數(shù)據(jù)。
ROS主控向stm32發(fā)送數(shù)據(jù)
ROS主控向stm32發(fā)送數(shù)據(jù)的代碼如下:
將之前定義的發(fā)送數(shù)據(jù)的結(jié)構(gòu)體 Send_Data的tx 中填入要發(fā)送的字節(jié)
Send_Data.tx[0]=FRAME_HEADER; //frame head 0x7B //幀頭0X7B
Send_Data.tx[1] = 0; //set aside //預(yù)留位
Send_Data.tx[2] = 0; //set aside //預(yù)留位
填好字節(jié)后,直接通過下面代碼發(fā)送即可
try
{
Stm32_Serial.write(Send_Data.tx,sizeof (Send_Data.tx)); //Sends data to the downloader via serial port //通過串口向下位機發(fā)送數(shù)據(jù)
}
catch (serial::IOException& e)
{
ROS_ERROR_STREAM("Unable to send data through serial port"); //If sending data fails, an error message is printed //如果發(fā)送數(shù)據(jù)失敗,打印錯誤信息
}
-
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
6909瀏覽量
88850 -
STM32
+關(guān)注
關(guān)注
2266文章
10876瀏覽量
354931 -
ROS
+關(guān)注
關(guān)注
1文章
276瀏覽量
16967
發(fā)布評論請先 登錄
相關(guān)推薦
評論