微控制器用CAN匯流排與PC通訊,請問CAN協議用什麼晶片如何連線

2021-09-30 17:41:26 字數 3799 閱讀 8044

1樓:巨季雅

你的問題本身就是有問題的

“can協議用什麼晶片”?

pc機和一些外圍裝置一般通過 序列通行方式(232串列埠或usb)

要想can和pc 通訊,必須轉換,你需要用can-rs232轉換器,或者帶轉接功能的pci卡(不推薦),

如果通過232序列方式,只需在pc機編寫軟體就行了,也可以用串列埠除錯助手,

如果是usb方式的,一般也要用usb轉232

單純給你一個max232(串列埠通訊用的),也不能直接和can通訊,還是需要程式的,

最好買一個can-232轉換器,自己做一個也行()不是很難的事。

如何連線?

232與pc也就是三根線,txd rxd 和gnd,和pc後端db9連線即可,如果筆記本,沒辦法,只能usb轉串列埠了,

也可以選一個can-usb轉換器ok

2樓:

常見的兩種組合:

恩智浦全家福:sja1000t+pca82c250

microchip全家福:mcp2515+mcp2551

3樓:電子元件劉小姐

sja1000t+pca82c250或者pca82c251t

微控制器can通訊怎麼用,

4樓:匿名使用者

首先,can通訊需要有介面的,在有接收的基礎上,再加一片can匯流排驅動晶片pca82c250才行。

這是要看你是什麼微控制器了,有的微控制器帶有can介面的,就像帶有串列埠uart一樣。

帶有can介面的微控制器,有專用的通訊用暫存器來實現通訊,與串列埠無關。

沒有can介面的微控制器,如51系列的,就需要加一片can擴充套件接收晶片,如sja1000,通訊時,是按外部擴充套件介面來實現的,當然了,用sja1000也同樣需要pca82c250晶片的。

另外,在can通訊時,具有很嚴格的通訊協議的,必須按協議寫程式才行的。並不像串列埠通訊那麼簡單的。

51微控制器運用can匯流排的通訊協議 急!!!!!!!!!!

5樓:匿名使用者

首先canbus是問答式的通訊方式報文最大長度11char1仲裁場(共12位)

bit10 bit9 bit8 bit7 bit6功能編碼

bit5 bit4 bit3

目的地址

bit2 bit1 bit0

源插地址

rtr遠端幀

2.控制場

ide r0 dl3 dl2 dl1 dl00 0 資料長度

3.資料場

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0

資料幀資料(最長8組)

應答時仲裁場目的地址源地址交換,就是目的地址就是你回答的詢問報文中的原地址,當然原地址就是你地址 485匯流排的通訊距離也在300m以上!485的通訊協議比較靈活!可以自己定值問答式協議!

可參考通訊中常用的同步頭+資料長度+效驗的格式自己設計,

例如:採用0xeb 0x90 同步頭

可以給你一份我做過的協議!自己分析一下!不明白給我發郵件[email protected]

6樓:匿名使用者

7樓:匿名使用者

到這了看看把

很全 不知道.看看高手怎麼回答?

8樓:匿名使用者

can線不要太長.可能出的問題就是出在你的線問題上,最多就1米的資料傳輸.還有就是add-模組地址編碼。

如果要解決的話就測到自身故障時,將切斷輸出,退出通訊,並向上位機報警,同時發出聲光報警.自訂can高層協議問題,解決的辦法就是:規範can2.

0a規定標準的資料幀有11位識別符號,使用者可以自行規定其含義,將所需要的資訊包含在內。在充電機系統中,每一個節點都有一個唯一的地址,地址碼和模組一一對應,通過撥碼開關設定,匯流排上資料的傳送也是根據地址進行的。由於本系統規模較小,節點數少於32個,因此為每個模組分配一個5位的地址碼,同一系統中地址碼不得重複,系統初始化時由外部引腳讀入。

將識別符號id9-id5定義為源地址,id4-id0定義為目的地址,本協議中從模組的目的地址全填0,表示資料是廣播資料,所有節點都可接收,主模組中目的地址根據要進行通訊目的模組的地址確定

這樣的情況出現還不好的話,兄弟.換了吧.沒有辦法了,

9樓:匿名使用者

我做過最多就1米的資料傳輸,沒有做過300米的

10樓:百度使用者

到這了看看把很全

11樓:匿名使用者

不知道.看看高手怎麼回答?

stm32與can匯流排是什麼關係啊?? 求高手指教啊! can是晶片嗎?要具體點的好嗎?

12樓:匿名使用者

stm32是一

塊微控制器,就是一塊控制晶片。

can匯流排是一種通訊協議,就像咱們的串列埠,是用於器件之間通訊用的。

就像咱們的串列埠需要一塊max232晶片作邏輯轉換一樣,can也需要一塊專門的can晶片支援。

微控制器普通io腳接can晶片,微控制器發出通訊訊號給can晶片作邏輯轉換後,can晶片將訊號放到can匯流排上去傳輸,訊號到了目的地後進入另一塊can晶片,can晶片將處理好的訊號給予目標晶片。

但是咱們的stm32比普通的微控制器強大,已經將這塊can晶片整合到stm32內部,所以我們使用時不用再外接晶片。stm32有專門的can口用於收發can訊號。

其實,can協議就是一種簡易化了的網路協議,那個所謂的can晶片就像我們的網絡卡,而stm32就是一個整合了網絡卡的cpu!

13樓:匿名使用者

1.首先你要搞懂stm32是什麼,其次你要搞懂can匯流排是什麼2.你現在連個基本的概念都還沒建立起來呢。好好打基礎。

3.stm32說白了,可以理解為微控制器。初步就這麼理解就可以。關鍵是可能你連微控制器是什麼都不知道。

4.can匯流排的知識可以去周立功的**上去看看5.世界上還有很多其他種類的匯流排,各有特點。

stm32與can匯流排是什麼關係啊?can是晶片嗎

14樓:匿名使用者

stm32是32位嵌入式晶片。而can匯流排是一種通訊方式。stm32主要負責程式的執行,而can匯流排只是一種通訊協議。

stm32之間的通訊可以通過can匯流排進行資料交換,也可以通過usb匯流排進行資料交換。can是一種協議,stm32如果與其他裝置要通過can協議通訊的話,那麼stm32要接一個can電平訊號轉換晶片才可以。

15樓:考客資料

stm32是一款主控晶片,裡面包含can匯流排控制器和can匯流排收發器。stm32與can匯流排沒有任何關係,只是stm32含有can匯流排通訊的相關外設。can是一種現場匯流排,和rs232,rs485等一樣,提供底層的資料通訊鏈路,實現can匯流排通訊有好多種晶片,這個可以根據你的使用場景所決定。

16樓:匿名使用者

這麼說吧,can是一種匯流排標準,用作微控制器和外設之間通訊的,通常用在汽車電子上;類似的匯流排還有i2c,spi等。

stm32是基於cortex m3的處理器,俗稱微控制器。它帶有若干個匯流排介面和外部通訊,can是其中之一。

17樓:聽聽—那冷雨

1、can整合在stm32內部,一般stm32都帶can介面

2、有單獨can的晶片

關於微控制器和CAN匯流排,微控制器的CAN匯流排問題。希望大家能幫助我下。

缺少檔案。因而找不到報錯的那幾個巨集定義。帶can匯流排功能的微控制器有哪些?帶can匯流排控制器 的微控制器還有西門子的sab c505c和ti的tms320lf2407 帶can匯流排功能的微控制器,就內是整合can控制器的微控制器 比如容 p87c591 是乙個單片8 位高效能微控制器,具有片...

PC機與微控制器通訊!我用RS232進行串列埠通訊,為什麼我是2 2,3 3的連,我用串列埠除錯接收不了

rs232的管腳說明 管腳 名稱 作用 中文解釋 pin2 rxd receiver 接收資料pin3 txd transmit 傳送資料pin5 gnd ground 地線微控制器的專txd通過rs232晶元的屬txd接rs232的rxd,微控制器的rxd通過rs232晶元的rxd接rs232的t...

微控制器與PC串列埠通訊程式,要求如下

這種問題必須你自己解決,雖然道理簡單,但是做起程式來還是挺麻煩,好好學學吧,自己弄懂之後你會很有成就感,沒有人會願意花上半上午的時間給你做這個程式的 微控制器與pc用串列埠通訊需要什麼條件?pc的串列埠的電平邏輯1是 3 15v邏輯0是 3 15v跟微控制器0 5v電平是不相容的 所以需要max23...