logo资料库

CAPL语法介绍.pdf

第1页 / 共37页
第2页 / 共37页
第3页 / 共37页
第4页 / 共37页
第5页 / 共37页
第6页 / 共37页
第7页 / 共37页
第8页 / 共37页
资料共37页,剩余部分请下载后查看
CAPL語法介紹 (I) 研發處 電動車與驗證工程專案 郭俐君 分機:04-7811222# 2373 信箱: lckuo@artc.org.tw
目錄 • CAPL簡介 • CAPL語法使用 • 建立Message • 建立事件觸發 – Message Event – Keyboard Event (Next) – System Event (Next) – Timers (Next)
CAPL簡介 (1/7) • CAPL全名為CAN Access Programming Language – 一種專用於CANalyzer以及CANoe軟體PC開發的程式語言 – 架構在C語言上的程式語言,因此在語法及概念上CAPL的語法與 C語言類似 – CAPL瀏覽器在進行編譯時,可一次僅編譯一個檔案,不與其他檔 案進行連結,因此除錯較為容易。 – CAPL事件一旦被觸發,對應的CAPL程式便開始執行,事件與事 件間採用分散式的運作模式,彼此並無一定的循序關聯性。 timer expires Key press Message received CAPL事件 CAPL程式 運作 在特定時間 執 行事件程序 使用者鍵入 某鍵時執行 收到某訊息 時執行 Fig:CAPL事件觸發型語言示意圖
CAPL簡介 (2/7) – 採用樹狀的架構來觸發事件與編譯 • 根據觸發的項目樹狀地往下進行事件的觸發 • CAPL瀏覽器針對不同的觸發事件分列了不同的項目,可根據不同的 項目進行新增,呼叫的方式也僅需要透過函式間的呼叫,e.g. Timer觸 發採用SetTimer()來進行呼叫 CAPL tree CAN Message System Keyboard … … Timer Stop Measurement Start PreStart Timer … Timer Output, write … Fig:CAPL樹狀架構圖
CAPL簡介--開啟編輯視窗 (3/7) • 如何開啟CAPL編輯視窗 1 – CAPL瀏覽器的開啟方式為在 CANoe的Simulation Setup視窗 內針對欲編輯的ECU,連續點 擊鉛筆圖案 – 第一次編輯則會出現開啟的.can 檔的畫面,若要新增一個CAPL 檔,則直接於檔名處新增*.can 的檔案名稱及選擇儲存位置,往 後該ECU便會以此*.can檔進行 CAPL語言的執行觸發及動作。 開啟完成後,便會跳出CAPL編 輯視窗。 2
CAPL簡介--編輯視窗架構 (4/7) • GLOBAL VARIAVLES window (總體參數視窗): – 該ECU會使用到的參數皆在此視 窗內進行設定,包含初始值的設 定以及參數的宣告。 • 針對特定Message進行初始值的 設定,以及各訊號內所填入的初 始值。 • 針對時序的使用也須在此視窗內 進行宣告,宣告為msTimer或是 Timer的變數型態,在總體參數 設定的名稱須與Timer內設定的 名稱相符 • EVENTS window (事件視窗): – 系統的事件(system-specific event),系統本身該有的動作, 如:系統、CAN控制器、錯誤訊框 (ErrorFrame); – 使用者定義的事件(User-defined event),由使用者控制當出現何種 情形時進行事件的觸發及動作, 如:CAN訊息、時序(Timer)、鍵 盤、環境、函數。 • EVENT PROCEDURE window (事件程序視 窗): – 在事件程序視窗的撰寫前,須先到事件視窗 (EVENTS)新增要編寫的事件項目 • 例如:編寫接收message時的動作程序 – 1.先到事件視窗內CAN message的項目按右 鍵新增(New)一個on message的事件程序 – 2.在EVENT PROCEDURE視窗中會出現on message,在on message後 處選擇Message form Database。
CAPL簡介--編輯視窗架構 (5/7) • 範例:編寫接收message時的動作程序 使用database中的 名稱,非參數欄位中 設定的名稱!! Step 2:在EVENT PROCEDURE 視窗中會出現on message,在 on message後 處直接按右鍵從database選擇 Message form Database。 Step1:在事件視窗內CAN message的項目按 右鍵新增(New)一個on message的事件程序
CAPL簡介--編輯視窗架構 (6/7) Compiler All Compiler • COMPILER window (編譯視窗): – 在CAPL程式編輯後,點擊compiler / compiler all鍵,或 按F9,若成功編譯完成會出現compiled的訊息,若編譯出 現錯誤則會在此視窗內提醒。 – ps. Compiler all會將所有CAPL的程式進行編譯。
分享到:
收藏