在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

STM32F103的CAN收發(fā)通信過程

GReq_mcu168 ? 來源:小麥大叔 ? 作者:小麥大叔 ? 2022-07-10 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在逛阿莫論壇的時候,發(fā)現(xiàn)一個很好的CAN調(diào)試器項目,給大家安利一下。


這里推薦一個國外的超級好用的開源工具CANable,有完全開源的軟硬件及上位機支持,支持windos和linux Stock can并且都免驅(qū),且支持Python


而且遠不止于此,經(jīng)過我不斷探索,在gitlhub各個大神倉庫各種折騰。
我發(fā)現(xiàn)這個canable這個項目衍生出了很多開源固件,目前固件和支持的軟件已經(jīng)極為豐富。


而且主芯片STM32F042/72支持USB DFU,可以通過USB直接更新固件,無縫切換多種上位機。關(guān)于STM32上的CAN通信基礎(chǔ)知識,可以參考此文:CAN總線詳解。也可以參考本次10.27第3條推文,演示STM32F103的CAN收發(fā)通信過程。


先上項目首頁,canbale項目官網(wǎng):

首先先看硬件項目

硬件項目其實叫做candleLight,github鏈接:

這個不帶隔離的硬件設(shè)計是比較簡單的,就是一塊帶usb和can的stm32f0 + CAN收發(fā)器TJA1051/3。


可惜的就是這顆stm32f0芯片現(xiàn)在價格漲得有點離譜了,之前在JLC打樣做了幾塊,主芯片就去到40多大洋,加上pcb和smt,打樣成本差不多投到100左右吧。


后來發(fā)現(xiàn)某寶上已經(jīng)有商家把canable作出產(chǎn)品了,帶隔離的價格也才100多,還帶外殼配件,果斷買了一個試試,某寶搜“開源 canable”就能找到,早知道就不用費勁自己打板了。


但是某寶上買的只提供了默認固件的相關(guān)資料,經(jīng)過我不斷探索,在gitlhub各個大神倉庫各種折騰。


我發(fā)現(xiàn)這個canable這個項目衍生出了很多開源固件,目前固件和支持的軟件已經(jīng)極為豐富,可以說可玩性極高。我甚至懷疑很多某寶和咸魚上的山寨PCAN就是canable換了一個殼子和固件而已!!!

c38b9ae8-ee0f-11ec-ba43-dac502259ad0.png

pdf原理圖:

https://github.com/HubertD/candleLight/blob/master/export/v1.1/pdf/candleLight-v1.1.pdf

重點還是固件,第一個先說重磅的,PCAN固件


論壇已經(jīng)有人分享了,還是這個鏈接:

https://github.com/moonglow/pcan_cantact


我會在附件里打包我編譯好的代碼和二進制文件可以直接USB燒寫

燒寫PCAN固件之后,CANable搖身一變就成了PEAK CAN-USB,直接可以使用PEAK的官方驅(qū)動以及軟件(pcan-view/ pcan-explorer 5),甚至基于peak開發(fā)的其他二次開發(fā)軟件(比如國內(nèi)的一些新能源車上位機,奇瑞,北汽這些)。


目前使用下來和原裝PCAN的兼容性還是相當(dāng)不錯的,但是注意不要用于ECU/PLC程序刷新,程序下載到到中途會出錯,這個問題還需要進一步優(yōu)化。但是想想原裝PCAN動輒2000的價格,100多塊錢的canable加上這個PCAN固件是真的香啊。

c3a5b306-ee0f-11ec-ba43-dac502259ad0.png
c3b0653a-ee0f-11ec-ba43-dac502259ad0.png
c3d3151c-ee0f-11ec-ba43-dac502259ad0.png

介紹第二個固件是canable的默認固件candleLight_fw
https://github.com/candle-usb/candleLight_fw

這個固件功能也蠻強大,采用的winUSB的免驅(qū)方案,USB bulk雙緩沖的模式,實際傳輸性能遠超那些虛擬串口的USB-CAN。


支持windos和linux Stock can并且都免驅(qū),且支持Python。
linux下使用和PCAN一樣都是內(nèi)核自帶驅(qū)動,支持SocketCAN 非常適合用一些開源的can的工具和庫進行二次開發(fā)。

candleLight固件的圖形化上位機叫做cangaroo。
cangaroo是candleLight固件專用的、簡單易用的can總線調(diào)試軟件,麻雀雖小五臟俱全,對于一般的can調(diào)試開發(fā)完全夠用,而且專門針對汽車逆向工程增加了通過can id分類接收到的can數(shù)據(jù)幀,并且當(dāng)某個id的數(shù)據(jù)幀活躍時會進行高亮顯示以便于觀察分析。

c3ed41c6-ee0f-11ec-ba43-dac502259ad0.png
? 支持Windos/Linux (Ubuntu發(fā)行版本)
? 最大支持同時接入32個CANable模塊
? 數(shù)據(jù)幀時間戳
? 支持數(shù)據(jù)日志保存
? 支持CAN DBC 文件協(xié)議解析
? 軟件綠色免安裝

candleLight固件還支持BUSMASTER(這個也就很厲害了,用過的都懂),BUSMASTER是一款功能強大的專業(yè)級CAN總線調(diào)試軟件,不僅能夠應(yīng)對一般的CAN調(diào)試開發(fā),還一個用于設(shè)計,監(jiān)測,分析與模擬CAN網(wǎng)絡(luò)的開源的開放式總線PC軟件。BUSMASTER已被RBEI概念化,設(shè)計與開發(fā),同時基于CANvas軟件工具。


不過candleLight固件需要下載增加BUSMASTER增加了cantact設(shè)備支持的版本。

c3fc44c8-ee0f-11ec-ba43-dac502259ad0.png
c41e500e-ee0f-11ec-ba43-dac502259ad0.png

虛擬串口轉(zhuǎn)can的Stock slcan固件
對于很多不熟悉usb編程,還是需要串口協(xié)議轉(zhuǎn)can的小伙伴,slcan固件就正好滿足需求,CANable通過燒寫slcan固件。該固件枚舉為Linux、Mac和Windows上的標(biāo)準(zhǔn)串行設(shè)備。CANable可以很容易地通過重新燒寫固件,在Linux中枚舉為本地can設(shè)備,在Windows中枚舉為通用串口設(shè)備。


在Linux上,CANable原生地與slc一起工作,因此您可以使用所有標(biāo)準(zhǔn)的can-utils命令行工具,甚至Wireshark來與總線交互。


在Windows和Mac上,CANable可以和cantact-app一起工作。這是一個簡單的Java應(yīng)用程序,可以實時顯示CAN流量,并允許您在總線上傳輸消息。

固件燒寫方式

web在線燒寫固件
如果只是想copy一個來用用,不需要去自己編譯燒寫,可以直接用STM32的USB DFU通過USB下載固件,我會在附件資料提供相應(yīng)的軟件和文檔說明,并提供編譯好的幾個固件。

canable還提供了一個web的燒寫頁面:

https://canable.io/updater/


這個真的超級方便了,意味著你不需要任何燒寫器或者準(zhǔn)備任何固件編譯的環(huán)境,只要有谷歌瀏覽器,就能隨時隨地切換固件,是不是很強大!


用谷歌瀏覽器打開這個頁面,把canbale的DFU撥碼開關(guān)按下去,在用USB連接電腦。選擇需要燒寫的的固件類型,再點connect and update就可以直接通過網(wǎng)頁進行燒寫。

c46d1db0-ee0f-11ec-ba43-dac502259ad0.png
注:這個網(wǎng)頁上只能燒寫canable的官方固件,自行編譯的固件無法燒寫(現(xiàn)在該頁面已經(jīng)支持燒寫PCAN固件了!給力)。

USB DFU-util燒寫固件
下載dfu-util-0.9-win64:

https://liquidtelecom.dl.sourceforge.net/project/dfu-util/dfu-util-0.9-win64.zip

解壓后,將編譯好的.bin文件拷貝到解壓后的目錄
創(chuàng)建一個文本文件,拷貝以下內(nèi)容進去,注意candleLight_fw.binary 為要燒寫的bin文件,需要改成需要燒寫的文件名。然后把這個文本文件保存為flash.cmd

dfu-util --dfuse-address -d 0483:df11 -c 1 -i 0 -a 0 -s 0x08000000 -D candleLight_fw.binarycmd /k

canbale的DFU撥碼開關(guān)按下去,連接電腦USB線會識別成“STM32 BOOTLOADER”

如果識別失敗需要下載安裝驅(qū)動,

https://canable.io/utilities/ImpulseRC_Driver_Fixer.exe

識別成功后,雙擊運行之前創(chuàng)建的flash.cmd文件,會看到開始燒寫的進度,如下就是燒寫完成了

Download        [=========================] 100%        36108 bytesDownload done.File downloaded successfully

原文標(biāo)題:自制一個CAN調(diào)試器

文章出處:【微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:彭靜

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

    關(guān)注

    57

    文章

    2912

    瀏覽量

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

    關(guān)注

    11

    文章

    3478

    瀏覽量

    67413
  • STM32F103
    +關(guān)注

    關(guān)注

    33

    文章

    483

    瀏覽量

    65402
  • 調(diào)試器
    +關(guān)注

    關(guān)注

    1

    文章

    312

    瀏覽量

    24281

原文標(biāo)題:自制一個CAN調(diào)試器

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    STM32F103CAN收發(fā)通信的程序思路與代碼分享

    STM32的標(biāo)識符屏蔽濾波目的是減少了CPU處理CAN通信的開銷。STM32的過濾器組最多有28個(互聯(lián)型),但是STM32F103ZET6
    的頭像 發(fā)表于 06-14 16:13 ?1.2w次閱讀
    用<b class='flag-5'>STM32F103</b>做<b class='flag-5'>CAN</b>的<b class='flag-5'>收發(fā)</b><b class='flag-5'>通信</b>的程序思路與代碼分享

    基于STM32F103實現(xiàn)CAN數(shù)據(jù)收發(fā)的功能

    。基于rt-thread,已經(jīng)有CAN的驅(qū)動框架,可以快速實現(xiàn)CAN數(shù)據(jù)的收發(fā)。這里基于STM32F103 實現(xiàn)CAN數(shù)據(jù)
    發(fā)表于 08-19 07:20

    如何使用STM32F103CAN收發(fā)通信

    如何使用STM32F103CAN收發(fā)通信
    發(fā)表于 12-15 07:36

    基于STM32F103的SVPWM算法實現(xiàn)

    基于STM32F103的SVPWM算法實現(xiàn)
    發(fā)表于 03-22 12:12 ?90次下載

    基于STM32F103的振動監(jiān)測系統(tǒng)設(shè)計

    基于STM32F103的振動監(jiān)測系統(tǒng)設(shè)計。
    發(fā)表于 11-09 17:49 ?46次下載

    STM32F103封裝方式與功能配置

    本文介紹STM32F103封裝方式和STM32F103管腳功能的配置。
    發(fā)表于 08-03 17:44 ?2.2w次閱讀
    <b class='flag-5'>STM32F103</b>封裝方式與功能配置

    STM32F103使用總結(jié)

    STM32F103使用總結(jié)
    發(fā)表于 10-24 10:22 ?152次下載

    stm32f103移植

    stm32f103移植
    發(fā)表于 10-27 09:03 ?43次下載
    <b class='flag-5'>stm32f103</b>移植

    STM32F103教程之STM32F103單片機的使用心得資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是STM32F103教程之STM32F103單片機的使用心得資料免費下載目前很火的設(shè)計STM32教程。
    發(fā)表于 09-26 08:00 ?257次下載

    STM32F103 CAN模板程序

    STM32F103 CAN模板程序
    發(fā)表于 11-09 11:08 ?85次下載
    <b class='flag-5'>STM32F103</b> <b class='flag-5'>CAN</b>模板程序

    stm32f030和stm32f103功能差異

    stm32f030和stm32f103功能差異主要表現(xiàn)在哪?
    的頭像 發(fā)表于 07-22 09:35 ?2.3w次閱讀

    STM32F103學(xué)習(xí)筆記三 串口通信

    STM32F103學(xué)習(xí)筆記三 串口通信
    發(fā)表于 11-25 09:06 ?71次下載
    <b class='flag-5'>STM32F103</b>學(xué)習(xí)筆記三   串口<b class='flag-5'>通信</b>

    STM32F103 模擬IIC時序

    STM32F103 模擬IIC時序
    發(fā)表于 11-25 09:51 ?35次下載
    <b class='flag-5'>STM32F103</b>  模擬IIC時序

    GD32F103STM32F103的區(qū)別 2021.6.2

    GD32F103STM32F103區(qū)別介紹關(guān)鍵詞Key words:GD32F103STM32F103摘要Abstract:本文主要是GD32F
    發(fā)表于 12-08 11:06 ?83次下載
    GD32<b class='flag-5'>F103</b>與<b class='flag-5'>STM32F103</b>的區(qū)別 2021.6.2

    STM32F103開源分享

    電子發(fā)燒友網(wǎng)站提供《STM32F103開源分享.zip》資料免費下載
    發(fā)表于 08-22 10:42 ?109次下載
    <b class='flag-5'>STM32F103</b>開源分享
    主站蜘蛛池模板: 真实偷清晰对白在线视频 | 特黄特黄aaaa级毛片免费看 | 免费看国产精品久久久久 | eee在线播放成人免费 | 美日韩免费视频 | 一级a性色生活片毛片 | 992tv国产精品福利在线 | 美女性爽视频国产免费 | 美国bj69video18 | 91拍拍在线观看 | 爱爱免费视频网站 | 亚欧洲乱码专区视频 | 日本一区不卡在线观看 | 一级毛片在线免费视频 | 午夜影院在线观看免费 | 国产成人在线播放视频 | 天堂成人一区二区三区 | 久久性感美女视频 | 中文字幕三级 | 国产美女亚洲精品久久久综合 | 欧美视频精品一区二区三区 | 欧美另类丰满69xxxxx | 国模私拍一区二区 | 欧美一区二区视频 | 亚洲免费人成在线视频观看 | 国产精品免费久久久免费 | 国产区精品高清在线观看 | 久久国产免费观看精品 | 午夜嘿嘿嘿 | 国产精品漂亮美女在线观看 | 国产精品高清一区二区三区 | 伊人不卡久久大香线蕉综合影院 | 亚洲天天操 | 日本黄色免费电影 | 爽好舒服老师快点 | 精品久久久久久午夜 | 国产精品资源在线观看 | 成熟女人免费一级毛片 | 免费男女| 久久夜色精品国产亚洲噜噜 | 一级大片免费看 |