一種基于Salvo的通用CAN/LIN網關
各任務和中斷服務程序優(yōu)先級的設置對系統(tǒng)完成正常功能影響較大。為防止CAN總線和LIN總線上數據丟失,接收任務(CAN_RXD任務和LIN_RXD任務)優(yōu)先級高于發(fā)送任務優(yōu)先級(CAN_TXD任務和LIN_TXD任務)。為防止大量數據在網關中來不及轉換或發(fā)送而丟失,系統(tǒng)開辟了多個接收緩沖器(CANSDU和LINSDU數組)和發(fā)送緩沖器(LINPDU和CANPDU數組)。PIC18F4680的CAN模塊是獨立的硬件電路,可以不依賴于CPU獨立工作,且內有3個接收緩沖器(包括MAB)和3個發(fā)送緩沖器,而LIN協(xié)議的數據處理由CPU的程序控制USART完成,為防止LIN總線數據丟失,LIN總線任務(LIN_RXD任務和LIN_TXD任務)優(yōu)先級高于CAN總線任務(CAN_RXD任務和CAN_TXD任務)。系統(tǒng)各任務和中斷服務程序的優(yōu)先級參見表1。
本文引用地址:http://cafeforensic.com/article/173697.htm
5 結論
基于CAN/LIN總線的分級網絡控制系統(tǒng)正逐漸從汽車電子領域推廣到其它,如:工業(yè)測控、安全防護等鄰域中應用,在基于CAN/LIN總線的分級網絡控制系統(tǒng)中CAN/LIN網關是一個核心部件,它為CAN總線設備和LIN總線設備的互訪提供連接橋梁。本文討論的基于Salvo的通用CAN/LIN網關采用新型集成CAN2.0B模塊和可支持LIN1.3的USART模塊的PIC18F4680微處理器,軟件設計采用商用RTOSDDSalvo,大大提高了系統(tǒng)的穩(wěn)定性和可靠性,增加了系統(tǒng)的可移植性和可擴展性,通過系統(tǒng)功能的裁剪和擴充可應用于各種分級網絡控制領域,是一種通用性很強的CAN/LIN網關。
本文作者創(chuàng)新點:采用RTOSDDSalvo設計一個通用CAN/LIN網關,傳統(tǒng)的CAN/LIN網關主要專用于汽車電子通用性不強,采用RTOS設計的網關功能裁剪和擴充方便,可移植性和通用性大大增強。
評論