關(guān)于如何讓初學(xué)者形象理解CAN總線(xiàn)技術(shù)關(guān)鍵點(diǎn)的思考
總線(xiàn)阻抗匹配:在CAN總線(xiàn)通信的物理鏈路層,我們需要更好的總線(xiàn)阻抗匹配,才可以更好的傳輸數據;總線(xiàn)匹配不好,可能會(huì )造成信號的衰減和末端信號反射,造成對正常信號的干擾;就如人與人在說(shuō)話(huà)時(shí)候,由于聲音的傳輸介質(zhì)(如空氣稀薄等)不適合或周?chē)恼系K物造成的回音與正在說(shuō)的話(huà)的疊加,對聽(tīng)眾造成接收障礙一樣。所以我們需要對總線(xiàn)進(jìn)行阻抗匹配,避免造成信號衰減和反射震蕩,總線(xiàn)匹配需要選擇合適的線(xiàn)材及在適當的位置設置好終端電阻。同時(shí)配合示波器/PFautoCAN汽車(chē)CAN總線(xiàn)仿真開(kāi)發(fā)工具/不同長(cháng)度和材料的線(xiàn)纜/終端電阻加入位置和阻值現場(chǎng)向初學(xué)者進(jìn)行講解。
本文引用地址:http://dyxdggzs.com/article/201612/329859.htm高層協(xié)議:不同協(xié)議導致信號的表達不同,如一個(gè)是英語(yǔ),一個(gè)是漢語(yǔ),大多數情況下他們之間發(fā)出的信息是不一樣的,偶爾語(yǔ)調一樣(報文),但是可能表達了不同意思。所以我們在使用時(shí)一定要先理解好高層協(xié)議或者對協(xié)議進(jìn)行定義,才可以進(jìn)行順暢的溝通。定義好協(xié)議就可以在PFautoCAN軟件中進(jìn)行數據庫的建立,這樣方便于網(wǎng)絡(luò )調試/監聽(tīng)/模擬/錄制回放等。所以采用CANopen高層協(xié)議的網(wǎng)絡(luò )不可能兼容DeviceNET高層協(xié)議的網(wǎng)絡(luò ),雖然他們都采用了CAN作為底層通信協(xié)議,通信速率也可能一樣。
優(yōu)先級和無(wú)損仲裁:總線(xiàn)優(yōu)先級和無(wú)損仲裁類(lèi)似于“讓領(lǐng)導先走”+“和諧社會(huì )”。雖然CAN總線(xiàn)在表面上是多主網(wǎng)絡(luò ),所有節點(diǎn)都可以主動(dòng)往總線(xiàn)發(fā)數據,看起來(lái)是同時(shí)在收發(fā)信息,所有節點(diǎn)平等的享有總線(xiàn)的使用權。但是實(shí)際上CAN總線(xiàn)僅允許同時(shí)傳輸一個(gè)報文(就像一條僅允許通過(guò)一輛車(chē)的道路,所有節點(diǎn)共用這個(gè)道路)。在使用這個(gè)總線(xiàn)的時(shí)候,他們是有等級區分的,等級的區分來(lái)源于各個(gè)節點(diǎn)的報文ID,報文ID越小,優(yōu)先級越高??偩€(xiàn)上已經(jīng)有數據在傳輸時(shí),其他節點(diǎn)不會(huì )去干涉這個(gè)數據的傳輸;但是當總線(xiàn)出現空閑,而又有2個(gè)或者以上節點(diǎn)等待發(fā)數據時(shí),這些節點(diǎn)的CAN控制器將同時(shí)會(huì )發(fā)出待發(fā)送數據的ID(由高位到低位),并對總線(xiàn)現在的電平逐位比較,當發(fā)現自己的ID大于其他總線(xiàn)發(fā)出的ID時(shí),將會(huì )自動(dòng)退出總線(xiàn),讓ID小的數據先發(fā)送(就如在這條道路上已經(jīng)有車(chē)輛通行,其他車(chē)輛不管優(yōu)先級高低,自動(dòng)等待;但是當道路出現空閑,而又有兩輛車(chē)準備進(jìn)入這條路時(shí),大家先比對一下自己所處低位,然后讓低位高的先走)。這些測試情況可以用我公司的2個(gè)PFautoCAN汽車(chē)CAN總線(xiàn)仿真開(kāi)發(fā)工具在將通信速率降低后從數據的發(fā)送接收中看出(通信速率降低后,造成總線(xiàn)允許的最大數據量降低,這樣更容易實(shí)現總線(xiàn)的完全占用)。
評論