eCAN總線模塊概述
·CAN協(xié)議內(nèi)核(CPK)。
·消息控制器:
◇存儲器管理單元(MMU),包括CPU接口、接收控制單元(接收濾波)和定時(shí)器管理單元;
◇可以存儲ONJL個(gè)消息的郵箱存儲器;
◇控制和狀態(tài)寄存器。
CAN協(xié)議內(nèi)核接收到有效的消息后,消息控制器的接收控制單元確定是否將接收到的消息存儲到郵箱存儲器中。接收控制單元檢查消息的狀態(tài)、標(biāo)識符和所有消息對象的濾波,確定相應(yīng)郵箱的位置,接收到的消息經(jīng)過接收濾波后存放到第一個(gè)郵箱。如果接收控制單元不能找到存放接收消息的有效地址,接收到的消息將會被丟棄。標(biāo)準(zhǔn)格式的消息由H位標(biāo)識符、1個(gè)控制域和最多8字節(jié)的數(shù)據(jù)構(gòu)成。
圖1 eCAN模塊整體結(jié)構(gòu)圖
當(dāng)需要發(fā)送消息時(shí),消息控制器將要發(fā)送的消息傳送到CPI(的發(fā)送緩沖,以便在下一個(gè)總線空閑狀態(tài)開始發(fā)送該信息。當(dāng)有多個(gè)消息需要發(fā)送時(shí),消息控制器將準(zhǔn)各發(fā)送消息中優(yōu)先級最高的傳送到CPK。如果兩個(gè)郵箱有同樣的優(yōu)先級,首先發(fā)送編號大的郵箱內(nèi)存放的消息。
定時(shí)器管理單元包括一個(gè)定時(shí)郵遞計(jì)數(shù)器和一個(gè)所有接收或發(fā)送消息的定時(shí)標(biāo)識。當(dāng)在定時(shí)周期內(nèi)沒有接收或發(fā)送消息(超時(shí))時(shí),將產(chǎn)生一個(gè)超時(shí)中斷。僅在增強(qiáng)型CAN總線中有定時(shí)郵遞功能,標(biāo)準(zhǔn)的CAN總線沒有這種工作模式。
如果開始數(shù)據(jù)傳輸,則相應(yīng)控制寄存器中的傳送請求位必須置位,設(shè)置好后不需要CPU參與傳送過程和傳送過程中的錯(cuò)誤處理。如果一個(gè)郵箱配置為接收消息,CPU使用讀指令讀取數(shù)據(jù)寄存器。郵箱還可以配置成中斷模式,在完成消息發(fā)送或接收時(shí)向CPU發(fā)出中斷請求。
評論