那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ROS主控與STM32的硬件連接和軟件連接

麥辣雞腿堡 ? 來源:古月居 ? 作者:月照銀海似蛟龍 ? 2023-11-26 17:45 ? 次閱讀

硬件連接

ROS主控通過usb線連接到一個TTL電平轉(zhuǎn)換芯片,再由這個電平轉(zhuǎn)換芯片連接STM32芯片

電平轉(zhuǎn)換芯片可以通過PCB設(shè)計在STM32芯片的電路板上,也可以使用一個USB轉(zhuǎn)TTL的模塊。

為什么兩個控制器之間需要電平轉(zhuǎn)換芯片?

因為兩個控制器之間通信層次邏輯是不同的,所有需要電平轉(zhuǎn)換芯片。相當(dāng)于兩個主控是兩種不同語言的人,電平轉(zhuǎn)換芯片相當(dāng)于一個翻譯。

電平轉(zhuǎn)換芯片可以是:

  • cp2102
  • ch340
  • PL2303
  • FT232RL

軟件設(shè)置

硬件連接上之后,需要一個軟件設(shè)置

需要軟件設(shè)置原因:

ROS主控可能接入多個USB設(shè)備,或者接入兩個型號一樣的電平轉(zhuǎn)換芯片。

不同USB設(shè)備占用的ROS主控的端口號在每次上電時可能會不一致,這樣需要手動修改代碼中的配置參數(shù),比較麻煩,也無法做到自啟動。

如果存在多個USB設(shè)備,但是每種USB設(shè)備的電平轉(zhuǎn)換芯片不一樣,那么我們可以根據(jù)芯片名稱來知道端口 號,但是如果有兩個芯片一樣的電平轉(zhuǎn)換芯片,則無法區(qū)分,這時候想做自啟動那么必須要進行下面步驟的軟件設(shè)置

軟件設(shè)置分為兩步:

  • 第一步是更改電平轉(zhuǎn)換芯片的serial,
  • 第二步是創(chuàng)建設(shè)備別名

更新電平轉(zhuǎn)換芯片的serial

首先在win環(huán)境下安裝更改芯片serial的軟件

CP21xx Customization Utility.exe

打開這個軟件,然后將芯片連接電腦的USB

圖片

然后將圓圈位置改為0002

然后點擊Program Device點完之后要等下,在Status Logging窗口中出現(xiàn)下面信息,才說明修改好了

圖片

創(chuàng)建設(shè)備別名

需要創(chuàng)建設(shè)備別名原因:

在運行一個ros程序的時候需要提供一個端口名,這個端口名一般是ttyUSBx,設(shè)備每次插拔對應(yīng)的這個端口名它都會不一樣,需要創(chuàng)建一個設(shè)備別名,就是要將這個端口名來給它固定住。

圖片

重新插拔 USB1端口的設(shè)備后,變?yōu)椋?/p>

圖片

可以看到變成了/dev/ttyUSB2

端口號發(fā)生了變化

創(chuàng)建設(shè)備別名需要寫一個腳本文件,如下:

echo  'KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60",ATTRS{serial}=="0002", MODE:="0777", GROUP:="dialout", SYMLINK+="stm32_controller"' >/etc/udev/rules.d/stm32_controller.rules
echo  'KERNEL=="ttyUSB*", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60",ATTRS{serial}=="0001", MODE:="0777", GROUP:="dialout", SYMLINK+="2d_lidar"' >/etc/udev/rules.d/2d_lidar.rules


service udev reload
sleep 2
service udev restart

解釋下上面的代碼

KERNEL==”ttyUSB* 不管是USB幾的設(shè)備都進行判斷

ATTRS{idVendor}==”10c4” 這里的idVendor ,在前面win上修改 serial的時候出現(xiàn)過,就是10c4

圖片

ATTRS{idProduct}==”ea60” 這里的idProduct,在前面win上修改 serial的時候出現(xiàn)過,就是ea60

圖片

ATTRS{serial}==”0002” 這里的serial,就是前面我們改過的,這里就根據(jù)這個值的不同,定義不同的設(shè)備別名

MODE:=”0777” 就是端口的權(quán)限

SYMLINK+=”stm32_controller” 這里的stm32_controller,就是取的設(shè)備別名。

所有上面第一行代碼的功能就是,將滿足這些條件的端口的設(shè)備名稱改為定義的設(shè)備別名。

腳本的文件名稱,取名為change_udev.sh。在執(zhí)行前需要給這個腳本文件賦予權(quán)限。

sudo chmod 777 change_udev.sh

賦予權(quán)限后,再運行這個腳本

sudo ./change_udev.sh

這樣就運行了設(shè)備別名的設(shè)置,之后不管怎么插拔這兩個USB設(shè)備,系統(tǒng)都將會自動的將這兩個設(shè)備去給它賦予設(shè)置的設(shè)備別名。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • STM32
    +關(guān)注

    關(guān)注

    2272

    文章

    10924

    瀏覽量

    357583
  • 硬件
    +關(guān)注

    關(guān)注

    11

    文章

    3381

    瀏覽量

    66451
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5013

    瀏覽量

    88078
  • ROS
    ROS
    +關(guān)注

    關(guān)注

    1

    文章

    280

    瀏覽量

    17098
收藏 人收藏

    評論

    相關(guān)推薦

    [10.1.1]--5.1無弦琴硬件連接及系統(tǒng)軟件設(shè)計_clip003

    軟件設(shè)計連接
    李開鴻
    發(fā)布于 :2022年11月12日 00:47:35

    [10.1.1]--5.1無弦琴硬件連接及系統(tǒng)軟件設(shè)計_clip004

    軟件設(shè)計連接
    李開鴻
    發(fā)布于 :2022年11月12日 00:48:42

    RT-Thread如何使用串口或者無線和ROS連接

    這篇文檔主要介紹 RT-Thread 如何使用串口或者無線和 ROS 連接,會包含這么些內(nèi)容:第一部分:ROS 環(huán)境搭建第二部分:RT-Thread rosserial 軟件包第二部分
    發(fā)表于 12-28 07:02

    ROSSTM32之間的聯(lián)系

    、在ROS小車里面有兩個核心控制器,一個是ROS主控,一個是stm32控制器3、ROS主控是樹莓
    發(fā)表于 06-28 07:49

    ROS RIKIBOT基礎(chǔ)--使用系列 第一章節(jié)】ROS機器人硬件系統(tǒng) 精選資料分享

    ROS RIKIBOT基礎(chǔ)–使用系列】ROS機器人硬件介紹1.RIKIBOT機器人硬件介紹1.1硬件框架
    發(fā)表于 07-30 06:59

    ROS如何在代碼層面去接收stm32發(fā)送過來的數(shù)據(jù)?

    如何實現(xiàn)ROSstm32之間的通信?ROSstm32發(fā)送過來的數(shù)據(jù)做了哪些處理?ROS主控
    發(fā)表于 10-12 08:17

    stm32cubemx的ST-link v2硬件連接軟件設(shè)置如何去實現(xiàn)呢

    怎樣去搭建一種stm32cubemx硬件底層+軟件設(shè)置開發(fā)環(huán)境呢?stm32cubemx的ST-link v2硬件
    發(fā)表于 02-17 07:15

    STM32 SPI 軟件NSS和硬件NSS解讀

    [導(dǎo)讀]SSM可以控制內(nèi)部NSS引腳與SSI(一個寄存器,軟件模式)相連,還是與NSS外部引腳(真正的STM32引腳,硬件模式)相連。真正作用的是內(nèi)部NSS引腳(內(nèi)部NSS引腳才真正連接
    發(fā)表于 12-22 19:12 ?14次下載
    <b class='flag-5'>STM32</b> SPI <b class='flag-5'>軟件</b>NSS和<b class='flag-5'>硬件</b>NSS解讀

    ROSSTM32通信

    ROSSTM32通信2020.8.1主要內(nèi)容制作ROS包,將控制命令傳給STM32,并將接收到的數(shù)據(jù)作為話題進行發(fā)布STM32接收數(shù)據(jù)并將
    發(fā)表于 12-24 19:00 ?12次下載
    <b class='flag-5'>ROS</b>與<b class='flag-5'>STM32</b>通信

    ROS小車STM32底層控制代碼

    2.6 ROS小車STM32底層控制代碼經(jīng)過之前幾篇文章,我相信大家一定對下面這些模塊都已經(jīng)有些了解了。今天,我們將編寫ROS小車STM32單片機底層控制的最后一篇文章。我們將一起按照
    發(fā)表于 01-14 12:54 ?16次下載
    <b class='flag-5'>ROS</b>小車<b class='flag-5'>STM32</b>底層控制代碼

    STM32F405為主控連接兩顆MAX3051EKA CAN通訊芯片

    電子發(fā)燒友網(wǎng)站提供《以STM32F405為主控連接兩顆MAX3051EKA CAN通訊芯片.zip》資料免費下載
    發(fā)表于 08-10 14:45 ?33次下載
    以<b class='flag-5'>STM32</b>F405為<b class='flag-5'>主控</b><b class='flag-5'>連接</b>兩顆MAX3051EKA CAN通訊芯片

    DB4759 STM32 用于STM32CubeUSB的電源傳輸和UCSI(USB Type-C?連接器系統(tǒng)軟件接口軟件擴展

    DB4759 STM32 用于STM32CubeUSB的電源傳輸和UCSI(USB Type-C?連接器系統(tǒng)軟件接口軟件擴展
    發(fā)表于 11-23 08:28 ?0次下載
    DB4759 <b class='flag-5'>STM32</b> 用于<b class='flag-5'>STM32</b>CubeUSB的電源傳輸和UCSI(USB Type-C?<b class='flag-5'>連接</b>器系統(tǒng)<b class='flag-5'>軟件</b>接口<b class='flag-5'>軟件</b>擴展

    DB3582_面向STM32Cube的蜂窩連接軟件擴展

    DB3582_面向STM32Cube的蜂窩連接軟件擴展
    發(fā)表于 11-23 20:28 ?0次下載
    DB3582_面向<b class='flag-5'>STM32</b>Cube的蜂窩<b class='flag-5'>連接</b><b class='flag-5'>軟件</b>擴展

    ROS主控STM32硬件連接軟件設(shè)置

    硬件連接 ROS主控通過usb線連接到一個TTL電平轉(zhuǎn)換芯片,再由這個電平轉(zhuǎn)換芯片連接
    的頭像 發(fā)表于 11-17 18:00 ?975次閱讀
    <b class='flag-5'>ROS</b><b class='flag-5'>主控</b>與<b class='flag-5'>STM32</b>的<b class='flag-5'>硬件</b><b class='flag-5'>連接</b>和<b class='flag-5'>軟件</b>設(shè)置

    ROS主控讀取stm32發(fā)送的數(shù)據(jù)

    ROS主控讀取stm32發(fā)送的數(shù)據(jù) 之后便可以通過 Stm32_Serial .read (Receive_Data_Pr,sizeof(Receive_Data_Pr)); read
    的頭像 發(fā)表于 11-26 17:49 ?1123次閱讀
    老牌百家乐娱乐城| 百家乐赌博器| 宿松县| 大发888官方备用网址| 百家乐网站制作| 百家乐最低下注| 百家乐官网号技巧| 金都百家乐官网现金网| bet365忠实奖金| 水果机技巧规律| 奇迹百家乐的玩法技巧和规则| 百家乐真钱送彩金| 免费百家乐官网统计工具| 百家乐官网单注打法| 澳门百家乐官网看路博客| 赌百家乐官网的方法| 澳门赌场筹码| 德州扑克发牌员| 二八杠高手| 华硕百家乐的玩法技巧和规则 | 网上百家乐官网试| 百家乐官网对子的玩法| 百家乐官网游戏技巧| 百家乐官网桌蓝盾在线| 溧阳市| 麦盖提县| 网上合法赌博网站| 久盛国际娱乐城| 上游棋牌官网| 大发888游戏平台黄埔网| 大发888娱乐城 健账号| 潘多拉百家乐的玩法技巧和规则| 百家乐博乐城| 网络百家乐必胜投注方法| gt百家乐平台假吗| 百家乐下注技术| 沙龙百家乐破解| 属鼠做生意办公桌摆貔貅好不好| 伟易博百家乐官网娱乐城| 娱乐百家乐官网下载| 百家乐官网麻将筹码币镭射贴膜|