CAN總線(xiàn)網(wǎng)絡(luò )的實(shí)時(shí)性研究和改進(jìn)
可見(jiàn),在競爭失敗提升優(yōu)先級的情況下,不會(huì )出現優(yōu)先級相同的情況,因此不會(huì )產(chǎn)生相應的錯誤。該算法的實(shí)現流程圖如圖4所示。本文引用地址:http://dyxdggzs.com/article/155170.htm
CAN網(wǎng)絡(luò )已經(jīng)有很多控制芯片??刂菩酒梢酝瓿?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/CAN">CAN協(xié)議轉換。要想通過(guò)動(dòng)態(tài)優(yōu)先級來(lái)改進(jìn)CAN實(shí)時(shí)性,就要針對不同芯片的應用特性來(lái)實(shí)現。本文的仿真是利用Philips公司的SJA1000來(lái)實(shí)現的。
3 TTCAN協(xié)議
TTCAN(時(shí)間觸發(fā)CAN)是CAN協(xié)議的另外一種擴展,它依賴(lài)一個(gè)靜態(tài)的TDMA時(shí)間表來(lái)保證確定的響應時(shí)間。將系統中所有發(fā)送周期型數據的節點(diǎn)至少發(fā)送1次的時(shí)間稱(chēng)為系統周期,系統周期又由n個(gè)基本周期組成。TTCAN中一個(gè)特殊的節點(diǎn)即時(shí)間主控節點(diǎn)周期性地發(fā)送使各個(gè)節點(diǎn)同步的消息,并且將CAN的通信分割在基本周期內。每個(gè)基本周期開(kāi)始于一個(gè)參考消息,并且由下一個(gè)參考消息的開(kāi)始作為結束。在每個(gè)基本周期內,主定時(shí)器又將每個(gè)基本周期的信道使用時(shí)間分為一個(gè)個(gè)的時(shí)間窗口,分給不同的信號,特定的信號只能在特定的時(shí)間窗口內進(jìn)行傳輸,避免了信號之間的干擾,其結構如圖5所示。參考信息是由主定時(shí)器發(fā)送的,控制基本周期的時(shí)態(tài),它的發(fā)送表明一個(gè)基本周期的開(kāi)始;獨占窗口是為特定信號預留的特定時(shí)問(wèn)窗口,只有特定的信號才能在該時(shí)間窗口內傳輸,為了使系統具有一定的靈活性,獨占窗口在一個(gè)基本周期內可以重復出現,但是為了保證數據傳輸的確定性,CAN幀的自動(dòng)重發(fā)功能在獨占窗口內被禁止。分配給隨機發(fā)送信息的時(shí)間窗口叫競爭窗口,一個(gè)競爭時(shí)窗可以分配給多個(gè)信息幀,競爭時(shí)窗的數據碰撞采用CAN的位仲裁機制,在這里發(fā)送的每個(gè)信息幀都具有固定的優(yōu)先級,位仲裁機制決定網(wǎng)絡(luò )中哪個(gè)信息幀取得總線(xiàn)的訪(fǎng)問(wèn)權?;诤酮氄即翱谙嗤脑?,CAN的自動(dòng)重發(fā)機制也被禁止。自由窗口是為網(wǎng)絡(luò )的進(jìn)一步擴展預留的窗口。
評論