serial安裝
sudo apt-get install ros--serial, 由於是ubuntu 18, 那麼就是:
sudo apt install ros-melodic-serial
安裝好後,在ros終端中輸入如下,建立ros_serial 功能包
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_create_pkg serial_port roscpp std_msgs serial
開啟 cd serial_port/src
將serial_port.cpp檔案新增進去,
//serial_port.cpp
#include
#include
#include
int main(int argc, char** ar**)
catch(serial::ioexception& e)
//判斷串列埠是否開啟成功
if(sp.isopen())
else
ros::rate loop_rate(500);
while(ros::ok())
; //讀出資料
n = sp.read(buffer, n);
for(int i=0; i儲存,編譯
在caktin_ws目錄下catkin_make
然後,重新開啟終端,執行roscore
然後在執行 $ rosrun serial_port serial_port
注意,如果usb埠不正確可能不成功,
此時可以通過$ ls -l /dev |grep ttyusb 來檢視usb的埠號,在serial.cpp裡面進行修改,修改儲存完畢後,進行編譯
再次執行$ rosrun serial_port serial_port
ROS與STM32串列埠通訊
嘗試了使用ubuntu與stm32控制板的串列埠通訊,走了不少彎路,記錄一下。上位機 ubuntu16.04 下位機 stm32 usb轉串列埠晶元 ch340g 後來又查到了ubuntu 16.04 ch340g驅動問題 還是使用沁恒的c檔案,做兩行修改,然後sudo make sudo make...
stm32串列埠通訊
通訊方式 1 同步通訊 帶時鐘同步訊號傳輸 spi,iic等 2 非同步通訊 不帶時鐘用途訊號 usrt,單匯流排 stm32串列埠引腳表 串口號 rxd txd 1 pa10 pa9 2 pa3pa2 3 pb11 pb10 4 pc11 pc10 5 pd2pc12 通訊過程 接收過程 由rx入...
STM32串列埠通訊
1.常用的串列埠相關暫存器 1 usart sr狀態暫存器,對應的庫函式 flagstatus usart getflagstatus usart typedef usartx,uint16 t usart flag 2 usart dr資料暫存器,對應的庫函式 void usart senddat...