|
由于開發(fā)板沒有裝有CAN的收發(fā)器,在CAN通訊調(diào)測時(shí),是否能像TTL232一樣 交叉連接TX/RX進(jìn)行通信呢? CAN收發(fā)器將MCU的邏輯電平轉(zhuǎn)換為差分電平,同時(shí)將CAN總線上接收到的差分電平信號(hào)轉(zhuǎn)換回邏輯電平信號(hào)。正處理數(shù)據(jù)的是CAN核控制器,在共地的情況下兩個(gè)CAN-TX/RX在無收到器時(shí)是可以像TTL232一樣 交叉TX/RX直連的; 但這還不夠,因?yàn)镃AN控制器的優(yōu)先仲裁機(jī)制還需要實(shí)時(shí)RX偵測總線信號(hào),只交叉連接時(shí)TX的電平無法反饋到RX上,將發(fā)送端的Tx+Rx直接并接可以實(shí)現(xiàn)RX反饋TX信號(hào),但接收端的Tx+Rx直接并接會(huì)壞TX電平,當(dāng)接收端轉(zhuǎn)為發(fā)送端時(shí)亦是如此。 參考了網(wǎng)上的方法,使用二極管對(duì)RX->TX進(jìn)行隔離,實(shí)際在STM32F4x上測試,發(fā)現(xiàn)不通,示波器波形發(fā)現(xiàn)TX根本無法將電平拉低到地,最多只能拉到一半VCC(3V3); 于是想到用三極管,于是做出如下改進(jìn)電路:
改進(jìn)后 實(shí)測效果OK,波形與帶收發(fā)器一致,完美通信;
此電路在20K~250K速率下短距離(10~20CM)測試沒問題; 如果需要較高速率時(shí),應(yīng)將三極管更換為高頻管,并視情況降低其驅(qū)動(dòng)電阻R1/R3的阻值,可以獲得更好的驅(qū)動(dòng)效果。
|