STM32103 TJA1050電平轉換晶片CAN接收RX

2021-03-28 19:37:50 字數 3109 閱讀 9782

1樓:匿名使用者

這個晶片我不是很熟悉,但是這種問題我倒是遇到過。你可以檢查一下這個引腳是不是複用的引腳?屬性配置對不對?比如功能,方向等等。

stm32f103ve can 迴環模式可以用示波器打到波形但是正常模式tx(p9)引腳一直為高電平 50

2樓:匿名使用者

p9是啥,103ve 的can在pa11和12,remap到pd0,1哈

stm32的can迴環模式正常,但是正常模式,兩個stm32通訊不成功,傳送時rxd和txd一直為高電平,求幫忙!

3樓:肥肥的爆米花

1)波特率是否一樣

2)rxd引腳是否上拉輸入,txd是否「開漏輸出+上拉」或推輓輸出

3)是否接了終端電阻

4樓:匿名使用者

你好,請問您是怎麼解決的?

stm32 can環回模式下cantx引腳上有波形嗎???沒有外接can的電平轉換晶片

5樓:匿名使用者

tja1050;沒量過can環回引腳的電平。反正你發什麼會收到什麼就正常了

6樓:匿名使用者

沒有。外接的can電平有vp2303

stm32 can正常模式引腳波形

7樓:匿名使用者

迴環測試模式傳送有波形,改為正常模式傳送沒有波形,說明傳送端程式沒問題。

原因是傳送端仲裁失利,無法完成傳送。最大的可能是硬體,匯流排上有損壞的晶片,導致匯流排無法正常工作。

沒有接can晶片的情況下的波形我也沒有測過。如果是can晶片損壞,得分兩種情況,一是開路,這是不影響的;二是短路,匯流排無法工作。你遇到的可能是情況二,也有可能是匯流排上的其他主機有問題。

建議你先用迴環模式連續傳送固定資料,用示波器觀察can晶片兩個輸出引腳的波形,應該是對稱的。如果不對稱或者無輸出,可能是晶片損壞了。

然後,改為正常模式,其他不變,再次觀察can輸出波形,並判斷情況。

最後,連線其他主機,再測一遍,再判斷。

stm32微控制器can通訊,can控制器採用tja1050,canh與canl輸出波形一致是怎麼回事呢? 5

8樓:墨汁諾

can匯流排通過baican控制器介面晶片上du的兩個輸出端zhicanh和canl與物理匯流排相連,而daocanh端的狀態只能是高電平或版懸浮狀權態,canl端只能是低 電平或懸浮狀態。

can匯流排的介面晶片目前用的比較多的就是sja1000,它是將資料轉換成can資料幀,但要與can匯流排連線還必須用pca82c250,說得更準確點是:sja1000和pca82c250必須配對使用。

9樓:匿名使用者

電路貌似沒什麼問題,,,你這個兩個訊號一致應該是軟體配置錯誤,因為canh和canl上沒訊號,中間跨接120r電阻,所以兩個腳波形一致,,,仔細檢查一下你的can配置吧

10樓:

can是一種由帶有can控制器組成的高效能序列資料局域通訊網路,是國際上應用最廣泛的現場回

匯流排之一屬於現場匯流排的答範疇,它是一種有效支援分散式控制或實時控制的序列通訊網路。現場匯流排是當今自動化領域技術發展的熱點之一,被譽為自動化領域的計算機區域網。它的出現為分散式控制系統實現各節點之間實時、可靠的資料通訊提供了強有力的技術支援。

can總 線通過can控制器介面晶片上的兩個輸出端canh和canl與物理匯流排相連,而canh端的狀態只能是高電平或懸浮狀態,canl端只能是低 電平或懸浮狀態。

利用stm32的兩個引腳接收資料

11樓:匿名使用者

同樣感覺問題不大清楚,如果微控制器上的那兩個引腳的協議確定,那麼就接到內stm32上的相應外設引腳容即可,然後設定下雙方工作模式。如果確定是兩根線,那麼iic的可能性大一些(不過要查下iic的匯流排時序,看看是否與描述的一致),畢竟標準spi要miso,mosi,clk與cs四根線。其他的序列通訊暫時能想到的都是非同步的了。

如果協議不確定,只是想分析協議與資料,那麼最好的方式是使用邏輯分析儀。

如果這種情況下仍然想要使用stm32來分析,只能使用io口中斷或定時器捕捉模式來分析協議。如果只是只想要資料的話,可以用io中斷,再每個微控制器clk的上升沿觸發中斷,在isr中把另一個io口採集到的資料儲存並移位(要注意msb在前還是lsb在前,spi是msb在前),採集完8個後處理。不過這樣肯定會做累的半死。

所有的時序,都要處理好了。還要考慮到各種出錯的可能性。

當然如果後面的描述正確的話,可以嘗試使用spi協議(spi規定是msb在前,要對應好了)但是需要微控制器上一根額外的引腳作為片選接到stm32上,或者想其他辦法把片選接上,stm32作為從機使用mosi線,,設定下相位和極性即可。

12樓:匿名使用者

你的問題不bai是太清楚:

1. 是stm32要讀du取微控制器上面的資料zhi嗎?dao可以使用很多協議,但是回要先確定哪一方主動,

答如果是微控制器主動發,那stm32最好用中斷,微控制器方根據需要或者定時傳送;如果是stm32主動讀,那stm32可以根據需要或者定時讀,微控制器則採用中斷接收。只要雙方匹配,根據你資料的實時程度,不難確定哪方主動。由於你只有兩個口建議用i2c,spi當然也可以,實現的方式可以手動模擬協議,也可以利用晶片內建的協議模組。

2. 「時鐘大概是4us一個週期,資料是8位.,時鐘的上升沿時獲取資料引腳的一位資料」 這個要求是微控制器的要求還是stm32的要求?為什麼會有這樣的要求?

proteus中怎麼在**找到tja1050(can控制介面晶片),或者他的替代模組啊?謝謝!!

13樓:匿名使用者

你要的這兩個晶片都沒有

。要做can匯流排,只有sja1000也不行的,還必須配pca82c250,這內也沒有。

再說了,can匯流排容是不僅僅是介面,還有很複雜的通訊協議,這些是無法**出來。

在硬體上,只能做實物,必須在實物電路板上進行除錯通訊協議。

proteus並非是萬能的,不要什麼事都想要用它來**,它所能**的東西實在很有限的。

excel中E24 MAX E 3 E 32 10是什麼意思

e24的值除以e3 e32區間單元格的最大值,後乘10。注意 這個公式往下拉的時候e3 e32絕對引用,也就是一直是取這個區間的最大值然後去除e24 e25 e26 e24單元格的值 除以 e3到e32中最大的值 10 如果e24 18,e3 到e32中最大的值是36 那麼這個公式就等於18 36 ...

stm32tcp包多大會分包,stm32f4支援多少條tcp

一般所處的乙太網,乙太網幀最大1500位元組,減去20位元組ip首部8位元組udp首部,一次udp報文也就是說sendto不要超過1472位元組,否則ip分片。stm32f4支援多少條tcp stm32的部分io口可以容忍5v,部分io口只能是3.3v容忍。到底哪些能夠容忍,檢視資料手冊,引腳標註 ...

stm32執行一句語句需要多少,STM32執行一句語句需要多少ns

那要看你設定stm32的主頻是多少hz了,另外,有的指令是單週期的,還有是多週期完成的,看你用什麼指令了,單週期指令比如nop就可以用 stm32語句的執行時間是多少 stm32有多個系列,主頻也不一樣 可配置 misp也不一樣,可以通過測試來得到。如果需要延時的話,stm32定時器比較多,可以使用...