中國人民解放軍63936部隊 柳吉齡 張洪彬 劉振偉 崔國瑞
引言
控制器局域網(wǎng)CAN(Controller Area Network)是目前被批準(zhǔn)為國際標(biāo)準(zhǔn)的少數(shù)現(xiàn)場總線之一。CAN網(wǎng)絡(luò)可采用多主方式工作。它采用非破壞性的總線仲裁技術(shù),其信號傳輸和控制采用短幀結(jié)構(gòu),因而具有較強的抗干擾能力和低耦合性;CAH網(wǎng)絡(luò)的通訊速率范圍為5 kbs/10km~lMbs//40m,驅(qū)動節(jié)點數(shù)可達(dá)110個。它的傳輸介質(zhì)可以是雙絞線、同軸電纜或光纖,選擇十分靈活;每幀信息都有CRC校驗及其它檢錯措施,因而數(shù)據(jù)出錯率極低,可靠性很高;當(dāng)其傳輸?shù)男畔⒊鲥e嚴(yán)重時,節(jié)點可自動斷開與總線的聯(lián)系,以使總線上其它的操作不受影響。
雖然目前PCI、USB等總線技術(shù)得到了快速發(fā)展,但在大量應(yīng)用的測試微機(jī)及工控機(jī)中,用的最多的還是ISA(Industry Standard Architecture.工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu))總線。ISA總線具有16位數(shù)據(jù)寬度,最高工作頻率為8MHz,數(shù)據(jù)傳輸速率達(dá)到16MB/s,地址總線有24條,可尋址16MB的地址單元,其總線信號分為5類,分別為地址線、數(shù)據(jù)線、控制線、時鐘線和電源線。
為了解決CAN控制器SJA1000與ISA總線各信號線的時序配合與邏輯配合問題,筆者設(shè)計了一種基于CAN總線的非智能適配卡。該適配卡已應(yīng)用于筆者研制的"基于CAN總線的運動控制系統(tǒng)"中,運行情況良好。
非智能型ISA總線CAN適配卡的總體結(jié)構(gòu)
CAN控制器SJA1000的地址數(shù)據(jù)總線是分時復(fù)用的,通過ALE信號的下降沿可鎖存總線上的地址信號;ISA總線上的地址和數(shù)據(jù)總線是單獨提供的,它不能直接和SJA1000的地址數(shù)據(jù)總線相連。本設(shè)計利用地址譯碼電路來對地址信號線進(jìn)行譯碼,從而為CAN適配卡分配出一定的端口地址。然后再利用74HC373芯片的數(shù)據(jù)鎖存功能鎖存第一次I/O操作中通過ISA數(shù)據(jù)總線傳送的數(shù)據(jù)信號,以便作為訪問CAN控制器SJA1000中寄存器的地址信號,最后在第二次I/O操作中完成對SJA1000中相應(yīng)地址寄存器的讀寫操作。其適配卡的總體結(jié)構(gòu)如圖1所示。