CAN收发器SN65HVD230,实际应用案例分析
文章目錄
- 一.前言
- 二. SN65HVD230
- 三. 實戰應用電路
- 3.1 應用電路
- 3.2 Rs 引腳(PIN8)
- 3.3 CAN總線的終端電阻
- 四.芯片價格
一.前言
STM32F系列的單片機基本都集成了CAN控制器,像STM32F4與F7等高性能的系列甚至有兩個CAN控制器。
單片機上的CAN-H與CAN-L引腳并不能直接連接到CAN總線上,需要經過CAN收發器才能連接至CAN總線上。
二. SN65HVD230
SN65HVD230是TI的一款性能強大且具體低功耗功能的CAN收發器。
三. 實戰應用電路
3.1 應用電路
我購買了一塊硬石科技的STM32H743開發板,使用STM32H743作為CANopen主站,控制機器人上的一條CAN總線上的14個伺服電機(CANopen從站)。使用1M的波特率也能正常通訊。但為了有更強的抗干擾能力,波特率使用500K。
以下是SN65HVD230的應用電路:
原理圖上有兩個問題需要研究一下:
3.2 Rs 引腳(PIN8)
先看芯片手冊:
每一款芯片的芯片手冊都會對每一個芯片的引腳的功能進行簡單的描述。從上圖看來,Rs的作用是切換CAN收發器的工作模式。SN65HVD230有三個工作模式:
一般的項目基本都只用高速模式,并不會使用斜率模式與低功耗模式。所以,直接將Rs引腳強下拉至GND就好了。
至于為什么是4.7K?再看芯片手冊上的一張圖:
這張圖描述的內容是電壓變化頻率(可以看作"通訊速度")與Rs引腳電阻的一個關系。
1… 當Rs引腳電阻是4.7K時,電壓變化頻率大約是18V/us。
2. 當Rs引腳電阻是10k時,電壓變化頻率大約13V/us。
3. 當Rs引腳電阻是0歐時,電壓變化頻率時20V/us。(即通訊速度是芯片的極限快)
所以,原理圖上使用4.7K將Rs下拉至GND時,芯片雖然處于高速模式,但并不是最高速的。但是,我實際測試1M的波特率時,能正常通訊。
芯片手冊也有應用電路介紹:
從圖上可以看到,Rs直接與MCU或DSP的輸出引腳相連,也能正常工作。比如MCU輸出高電平,CAN收發器進入低功耗模式,MCU輸出低電平,CAN收發器進入高速模式。但是,如果想按照上圖的電路設計電路板時,建議中間串聯一個0歐姆的電阻。這樣就能留下改變電阻的余地。
3.3 CAN總線的終端電阻
實際上,R43與R41都是總線上的終端電阻,CAN總線的終端電阻一般都是120R。在CAN總線上的最開始的站(從站或主站)與最后的站(從站或主站)才需要120R電阻。所以當開發板在CAN總線的非開始與最后的位置時,120R電阻需要去掉的。(實際項目上,我也是去掉的)
四.芯片價格
總結
以上是生活随笔為你收集整理的CAN收发器SN65HVD230,实际应用案例分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python删除连续相同字符_Pytho
- 下一篇: js写随机输出7位数代码教程