SN65HVD230型CAN總線收發(fā)器的原理及應(yīng)用
關(guān)鍵詞:收發(fā)器 CAN CAN收發(fā)器
本文引用地址:http://butianyuan.cn/article/164158.htm引言
CAN總線以其較高的通訊速率、良好的抗電磁干擾能力可實(shí)現(xiàn)高可靠性串行通信,因而在實(shí)際應(yīng)用中具有極高的應(yīng)用價(jià)值。但是,隨著集成技術(shù)的不斷發(fā)展,為了節(jié)省功耗,縮小電路體積,一些新型CAN總線控制器的邏輯電平均采用LVTTL,這就需要與之相適應(yīng)的總線收發(fā)器。TI公司生產(chǎn)的SN65HVD230型電路很好地解決了這個(gè)問題。
1 SN65HVD230簡介
SN65HVD230是德州儀器公司生產(chǎn)的3.3CAN總線收發(fā)器,主要是與帶有CAN控制器的TMS320Lx240x系列DSP配套使用,該收發(fā)器具有差分收發(fā)能力,最高速率可達(dá)1Mb/s。廣泛用于汽車、工業(yè)自動(dòng)化、UPS控制等領(lǐng)域。
1.1 主要特點(diǎn)及引腳功能 SN65HVD230采用PSOP8封裝,具體引腳排列及其邏輯功能如圖1所示,表1所列是其引腳功能。
表1 SN65HVD230的引腳功能 各種控制功能主要通過調(diào)用系統(tǒng)的通用函數(shù)和功能函數(shù)來實(shí)現(xiàn)。其中,系統(tǒng)通用函數(shù)用于系統(tǒng)的初始化及一些通用功能的實(shí)現(xiàn)。首先對CAN系統(tǒng)進(jìn)行初始化,同時(shí)完成端口配置、位時(shí)間確定、消息體的配置等。其節(jié)點(diǎn)初始化函數(shù)如下:
SN65HVD230可用于較高干擾環(huán)境下。該器件在不同的速率下均有良好的收發(fā)能力,其主要特點(diǎn)如下:
?完全兼容ISO11898標(biāo)準(zhǔn);
?高輸入阻抗,允許120個(gè)節(jié)點(diǎn);
?低電流等待模式,典型電流為370μA;
?信號傳輸速率最高可達(dá)1Mb/s;
?具有熱保護(hù),開路失效保護(hù)功能;
?具有抗瞬間干擾,保護(hù)總線的功能;
?斜率控制,降低射頻干擾(RFI);
?差分接收器,具有抗寬范圍的共模干擾、電磁干擾(EMI)能力。
引腳號 | 引腳名稱 | 引腳功能 | 描 述 |
1 | D | 輸入 | CAN控制器發(fā)送數(shù)據(jù)輸入端 |
2 | GND | 地 | 接地 |
3 | Vcc | +3V電源 | +3V電源電壓 |
4 | R | 輸出 | CAN總線接收數(shù)據(jù)輸出端 |
5 | VREF | 參考電壓 | 參考電壓輸出 |
6 | CANL | CAN總線低 | 低電平CAN電壓輸入/輸出 |
7 | CANH | CAN總線高 | 高電平CAN電壓輸入/輸出 |
8 | Rs | 方式選擇 | 斜率電阻器輸入 |
1.2 工作模式和控制邏輯
SN65HVD230具有高速、斜率和等待3種不同的工作模式。其工作模式控制可通過Rs控制引腳來實(shí)現(xiàn)。圖2是SN65HVD230在CAN總線系統(tǒng)中的典型應(yīng)用圖。由圖中可以看出,CAN控制器的輸出引腳Tx接到SN65HVD230的數(shù)據(jù)輸入端D,可將此CAN節(jié)點(diǎn)發(fā)送的數(shù)據(jù)傳送到CAN網(wǎng)絡(luò)中;而CAN控制器的接收引腳Rx與SN65HVD230的數(shù)據(jù)輸出端R相連,用于接收數(shù)據(jù)。SN65HVD230方式選擇端口Rs通過跳線和一端接地的斜率電阻器連接,通過硬件方式可實(shí)現(xiàn)3種工作模式的選擇,其中斜率電阻器為0~100kΩ的電位器。VRs為加在Rs引腳上的電壓。具體工作模式的選擇如表2所列。
表2 SN65HVD230的工作模式選擇
Vrs | 工作模式 |
VRs≥0.75Vcc | 等待模式 |
10kΩ到100kΩ接地 | 斜率控制模式 |
VRs≤1V | 高速模式 |
使Rs接邏輯低電平可以使收發(fā)器工作在高速模式。在高速模式下,收發(fā)器的通信速率達(dá)到最高,此時(shí)沒有內(nèi)部輸出上升斜率和下降斜率的限制,但在該方式下,最大速率的限制與電纜的長度有關(guān)。
而在有些場合中,考慮到系統(tǒng)成本等問題,使用非屏蔽電纜時(shí),收發(fā)器必須滿足電磁兼容等條件。為了減少因電平快速上升而引起的電磁干擾,在SN65HVD230中引入了斜率控制方式。這種控制方式可通過連接在Rs引腳上的串聯(lián)斜率電阻器來實(shí)現(xiàn)。電壓轉(zhuǎn)換和斜率電阻的關(guān)系如圖2所示。
在Rs引腳加上邏輯高電平(≥0.75Vcc),可使器件進(jìn)入等待模式,處于待機(jī)狀態(tài),系統(tǒng)只“聽”發(fā)送過來的消息。在“聽”狀態(tài)下,收發(fā)器的發(fā)送功能處于關(guān)斷狀態(tài),接收功能仍處于有效狀態(tài)。此時(shí),接收器對于總線來說總是隱性的。
1.3 控制邏輯
SN65HVD230采用正邏輯控制方式,有接收和發(fā)送二種方式,具體控制邏輯如表3所列。
表3 SN65HVD2304的控制邏輯
發(fā) 送 | 接 收 | ||||||
輸入D | Rs | 輸出 | 總線狀態(tài) | 差分輸入 | Rs | 輸出R | |
CANH | CANL | ||||||
L | XRs≤1.2V | H | L | 顯性 | VIN≥0.9V | X | L |
H | Z | Z | 隱性 | 0.5VVID0.9V | X | ? | |
Open | X | Z | Z | 隱性 | VID≤0.5V | X | H |
X | VRS≥0.75Vcc | Z | Z | 隱性 | Open | X | H |
其中,Z表示高阻狀態(tài),?表示未定狀態(tài),X表示無關(guān)。
2 實(shí)際應(yīng)用
某自動(dòng)測試系統(tǒng)需要多路實(shí)時(shí)可控的交流供電電源,為此,筆者設(shè)計(jì)了基于CAN總線的智能電源控制器。該系統(tǒng)的主控計(jì)算機(jī)中安裝了CAN總線通信控制卡,電源控制器中裝有CAN總線通信適配卡,故可通過控制卡與適配卡來實(shí)現(xiàn)計(jì)算機(jī)與各智能電源控制器之間的通信,從而完成對各電源控制器的控制及對各電源控制器輸出狀態(tài)的檢測。
2.1 系統(tǒng)原理
該電源控制器采用SN65HVD230型CAN總線收發(fā)器和Cygnal公司生產(chǎn)的具有3.3V集成式CAN控制器的C8051F040型單片機(jī)來設(shè)計(jì)CAN總線通信控制卡及CAN總線通信適配卡。其原理框圖如圖4所示,通過PC控制各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)來實(shí)現(xiàn)其具體的控制功能,并以此組成網(wǎng)絡(luò)控制系統(tǒng)。
2.2 CAN總線通信控制卡的設(shè)計(jì)
在整個(gè)CAN控制網(wǎng)絡(luò)中,CAN總線通信控制卡起著非常重要的作用。該卡主要包括C8051F040型單片機(jī)、雙口RAM及其控制電路、中斷申請電路、復(fù)位電路和CAN驅(qū)動(dòng)電路。該控制卡的結(jié)構(gòu)框圖如圖5所示。CAN通信控制卡通過CAN總線將各個(gè)節(jié)點(diǎn)串聯(lián)起來,從而將一個(gè)等網(wǎng)絡(luò)變成一個(gè)簡單的“一主多從”控制網(wǎng)絡(luò)。PC通過CAN總線通信控制卡向網(wǎng)絡(luò)中各個(gè)具有不同地址的節(jié)點(diǎn)發(fā)送各種格式的控制命令字,并將各網(wǎng)絡(luò)節(jié)點(diǎn)中代表各節(jié)點(diǎn)狀態(tài)的數(shù)據(jù)字讀回,以此實(shí)現(xiàn)整個(gè)CAN網(wǎng)絡(luò)的控制。
2.3 CAN節(jié)點(diǎn)的設(shè)計(jì)
在整個(gè)CAN控制網(wǎng)絡(luò)中,節(jié)點(diǎn)是整個(gè)網(wǎng)絡(luò)的“從者”,它通過相應(yīng)的地址匹配來識別控制卡發(fā)來的信息。若信息不是發(fā)送給自己的,則不進(jìn)行任何動(dòng)作,若信息是發(fā)給自己的,則該節(jié)點(diǎn)接收信息,并執(zhí)行相應(yīng)的操作。在CAN控制網(wǎng)絡(luò)中,信息通過幀模式進(jìn)行傳送。CAN節(jié)點(diǎn)根據(jù)設(shè)定的幀格式內(nèi)容進(jìn)入相應(yīng)的控制程序,以對外圍電路進(jìn)行操作控制。CAN節(jié)點(diǎn)系統(tǒng)框圖如圖6所示。
2.4 混合電平電路抗干擾設(shè)計(jì)
由于智能電源控制器本身是一個(gè)混合電平系統(tǒng),內(nèi)部有多路220V/50Hz交流電、控制電路的3.3V直流電平、CAN控制網(wǎng)絡(luò)接口電平等不同電平,因此必須實(shí)現(xiàn)不同電平信號的隔離,以增強(qiáng)系統(tǒng)的抗干擾能力。
本系統(tǒng)通過對C8051F040控制信號進(jìn)行光隔離和驅(qū)動(dòng)處理后控制繼電器,以實(shí)現(xiàn)對交流電源的輸出控制,從而確保了大功率交流電源與內(nèi)部控制電路之間的有效隔離。而CAN接口在收發(fā)器和控制器之間采用了LVTTL/LVCMOS兼容高速光隔離來實(shí)現(xiàn)不同電平之間的電氣隔離。
2.5 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件主要由CAN總線通信控制卡控制程序和各個(gè)節(jié)點(diǎn)控制程序二部分組成。CAN總線通信控制卡控制程序是基于Windows的編程,這里不再多述,本文主要給出各個(gè)節(jié)點(diǎn)的控制程序。
WDTCN=0xde; //關(guān)watch dog
WDTCN=0xad;
config_IO(void); //端口配置函數(shù),實(shí)現(xiàn)控制模塊的控制引腳的分配
Clock(void); //時(shí)鐘及CAN總線速度定義函數(shù)
clear_msg_objects(void);//各個(gè)消息體的清除函數(shù)
msg_objects_init(void);//CAN消息體初始化函數(shù)
……
startCAN(); //系統(tǒng)允許進(jìn)行CAN通訊
EA=1; //系統(tǒng)開中斷;
3 結(jié)束語
在實(shí)際工程應(yīng)用中,SN65HVD230作為一種新型CAN總線收發(fā)器,具有高速率和高抗電磁干擾等特點(diǎn),加之其電氣連接十分簡單,因而具有良好的實(shí)用性。
評論