chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

CAPL編程語言快速入門

北匯信息POLELINK ? 2022-09-17 16:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

提到CAPL,相信各位一定不陌生,它是由Vector公司開發(fā)的類似于C語言的面向過程編程語言,是CANoe和CANalyzer中可用的編程語言。CAPL中程序塊的執(zhí)行由事件控制,在專用的編譯器中開發(fā)和編譯,這樣可以訪問數(shù)據(jù)庫中的所有對象以及系統(tǒng)變量,作為汽車電子工程師,在工作中會(huì)經(jīng)常用到。

CAPL可以在CANoe界面Tools>>CAPL Browser中打開。

pYYBAGMlf1eAItJYAACC7Felt7Q468.png

圖1CAPL打開方式

CAPL界面由功能區(qū)、程序框架瀏覽樹、輸出窗口、編輯區(qū)、訪問區(qū)五部分組成。

poYBAGMlf1iAeZYtAAKe0OLiot4024.png

圖2CAPL界面

顧名思義,程序編輯區(qū)就是編寫CAPL腳本的區(qū)域;程序架構(gòu)瀏覽樹起目錄的作用,可以把編輯區(qū)定位到編寫的事件或函數(shù)類型的語句;輸出窗口可以輸出編譯過程中的事件和使用搜索時(shí)定位到的結(jié)果;訪問區(qū)能夠訪問到CANoe工程加載的數(shù)據(jù)庫中的信號、創(chuàng)建的系統(tǒng)變量以及CAPL函數(shù)庫中的語句,直接從右側(cè)訪問區(qū)拖拽到中間編輯區(qū)使用(注意:工程創(chuàng)建路徑中不能有中文,否則訪問不到數(shù)據(jù)庫文件)。

功能區(qū)由五部分構(gòu)成,首先是File菜單欄,與大多數(shù)軟件相同,它是文件創(chuàng)建、保存、加載、設(shè)置等功能區(qū)域。

pYYBAGMlf1eAVJfdAAGEX2DbJ08313.png

圖3File菜單欄

Home功能區(qū)提供了CAPL編譯常用功能,包括代碼編譯、查找、替換、屏蔽、取消屏蔽等功能。

pYYBAGMlfx-AKr85AACc3nFrtCw088.png

圖4Home功能區(qū)

Filter功能區(qū)的作用是管理CAPL的函數(shù)庫,可以在函數(shù)訪問區(qū)中屏蔽掉不需要的函數(shù)。

pYYBAGMlfyOABh6TAACwHg2SLls833.png

圖5Filter功能區(qū)

Debug功能區(qū)是調(diào)試的區(qū)域,提供了一些基本的調(diào)試操作,一般情況下不通過debug模式來調(diào)試腳本?;旧暇幾g一次,存在錯(cuò)誤可以通過Output輸出窗口獲得錯(cuò)誤類型并進(jìn)行更改。如果腳本編譯成功之后,仍然不能滿足測試步驟的輸出,一般會(huì)使用Write窗口進(jìn)行調(diào)試。

poYBAGMlfx2AFl_XAAB5gxk1EKA062.png

圖6Debug功能區(qū)

Layout功能區(qū)主要是針對CAPL用戶的頁面展示。例如進(jìn)行水平分區(qū)、垂直分區(qū)等操作方便用戶進(jìn)行腳本編寫。

poYBAGMlfx6AG76sAACDVhMSLCQ677.png

圖7Layout功能區(qū)

CAPL應(yīng)用場景:

  1. 節(jié)點(diǎn)仿真

關(guān)聯(lián)Simulation Setup中的ECU節(jié)點(diǎn),實(shí)現(xiàn)ECU節(jié)點(diǎn)仿真和整車網(wǎng)絡(luò)仿真。

pYYBAGMlfyCAL1uTAACDQh9-i-U949.png

圖8SimulationSetup窗口

  1. 測試功能

關(guān)聯(lián)Simulation Setup中的Test Module模塊或是Test菜單中的Test Setup,結(jié)合TSL(Test Service Library,測試服務(wù)庫)進(jìn)行測試功能開發(fā)。

poYBAGMlfyGAECgkAAB4fih5Id8151.png

圖9TestSetup窗口

  1. 分析功能

關(guān)聯(lián)Measurement Setup窗口功能模塊中的Program Node,實(shí)現(xiàn)總線過濾、分析功能。

poYBAGMlfyKAHqMMAACe4NminBU794.png

圖10MeasurementSetup窗口

CAPL腳本結(jié)構(gòu):

一個(gè)完整的CAPL腳本由三部分組成:變量、各種事件和自定義函數(shù)。

pYYBAGMlfyOABnu2AAEOt1t_2TM813.png

圖11CAPL的三部分

CAPL的事件類型包含三種:總線事件、屬性事件、時(shí)間事件。CAPL常用的事件類型如下圖所示。

poYBAGMlfySAIg5xAALJDR5IEYY494.png

圖12MeasurementSetup窗口

CAPL常用函數(shù):

下面以CANoe中Easy工程的light.can腳本為例介紹CAPL中的常用函數(shù),該腳本與Panel聯(lián)用實(shí)現(xiàn)轉(zhuǎn)向燈仿真。

pYYBAGMlfySAfjDVAAAyfIEcFVE402.png

圖13聲明全局變量

上圖是CAPL中的全局變量聲明,其中 ‘msTimer’為聲明以ms為單位的計(jì)時(shí)器;‘const int’為聲明int類型的常值變量,該變量的值無法改變;‘int’為聲明int類型的變量,該類型變量有符號,長度為2字節(jié)。

poYBAGMlfySALF5xAAAXlRWFibE461.png

圖14系統(tǒng)事件

onstart’是系統(tǒng)事件,測量開始執(zhí)行會(huì)觸發(fā)該事件,也就是點(diǎn)擊Start按鈕觸發(fā)。

poYBAGMlfymAd-DVAAChdCFAvV8120.png

圖15CAN消息事件

onmessage’是CAN消息事件,接收到指定消息時(shí)執(zhí)行?!?span style="color:rgb(0,112,192);">onmessageLightState’是對名字為LightState的報(bào)文反應(yīng),除直接使用字符串外,還可以使用報(bào)文ID指定觸發(fā)報(bào)文。‘onmessage123’是對ID為123(dec)的報(bào)文反應(yīng);‘on message0x123’ 是對ID為123(hex)的報(bào)文反應(yīng);‘on message*’是對所有的報(bào)文反應(yīng);‘on message100-200’是對ID為100-200間的報(bào)文反應(yīng)。

poYBAGMlfymAR7bTAABB-QqteBA941.png

圖15系統(tǒng)變量事件

onsysvarsysvar’是系統(tǒng)變量事件,指定的系統(tǒng)變量值改變時(shí)執(zhí)行。與之相對應(yīng)另一個(gè)系統(tǒng)變量事件是‘onsysvar_updatesysvar’,指定的系統(tǒng)變量值更新時(shí)執(zhí)行。

‘setTimer(msTimert,longduration)’是設(shè)置定時(shí)器函數(shù),他有兩個(gè)輸入?yún)?shù),第一個(gè)為聲明的定時(shí)器變量,第二個(gè)是設(shè)定的時(shí)間?!甤ancelTimer(msTimert)’是取消定時(shí)器函數(shù),入?yún)槎〞r(shí)器變量,該函數(shù)的作用為取消設(shè)定的定時(shí)器。

pYYBAGMlfymAPg__AAAkTOfb9bw335.png

圖16時(shí)間事件

ontimer’為時(shí)間事件,定時(shí)時(shí)間超過時(shí)執(zhí)行,它與設(shè)置定時(shí)器函數(shù)聯(lián)用。定時(shí)器通常應(yīng)用在實(shí)現(xiàn)某個(gè)任務(wù)循環(huán),在時(shí)間事件中寫入一個(gè)設(shè)置定時(shí)器函數(shù)實(shí)現(xiàn)循環(huán)。

pYYBAGMlfyaAI4IEAAAf0yAL3TE819.png

onkey’為鍵盤事件,被指定的鍵按下時(shí)執(zhí)行。該事件常用于腳本調(diào)試。

此外,‘write()’函數(shù)在調(diào)試腳本中也常使用,該函數(shù)基于C語言中的‘printf()’函數(shù),可以將文本消息輸出在write窗口中。

注:圖片來自Vector。

總結(jié):

北匯信息作為Vector中國的合作伙伴,始終專注于汽車電子領(lǐng)域的新技術(shù)和新產(chǎn)品,為整車廠和零部件企業(yè)提供完整的研發(fā)、測試解決方案,為工程師在汽車領(lǐng)域提供“趁手裝備“!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • CANoe
    +關(guān)注

    關(guān)注

    4

    文章

    83

    瀏覽量

    9660
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    FPGA 入門必看:Verilog 與 VHDL 編程基礎(chǔ)解析!

    很多開發(fā)者第一次接觸FPGA,都會(huì)有同樣的疑問:FPGA是硬件,不是軟件,怎么寫程序?答案就是用硬件描述語言(HDL),最常用的就是Verilog和VHDL。今天,我們就帶你入門,搞清楚FPGA編程
    的頭像 發(fā)表于 01-19 09:05 ?196次閱讀
    FPGA <b class='flag-5'>入門</b>必看:Verilog 與 VHDL <b class='flag-5'>編程</b>基礎(chǔ)解析!

    Renesas QuickConnect Beginners Kit 快速上手:從入門到實(shí)踐

    Renesas QuickConnect Beginners Kit 快速上手:從入門到實(shí)踐 在當(dāng)今快速發(fā)展的電子科技領(lǐng)域,快速原型開發(fā)和高效的系統(tǒng)設(shè)計(jì)是工程師們追求的目標(biāo)。Renes
    的頭像 發(fā)表于 12-29 09:25 ?156次閱讀

    為什么單片機(jī)還在用C語言編程?

    說起單片機(jī)我們就會(huì)想到C語言,單片機(jī)為什么還在用C語言編程?現(xiàn)在有很多很好用的高級語言,如VC、PYTHON、PHP等等,為什么這些語言不能
    發(fā)表于 11-28 07:37

    C語言編程技巧

    設(shè)計(jì),分層開發(fā)代碼,便于理解和維護(hù)。 ?8、避免使用GOTO語句?:盡管GOTO語句在某些情況下仍然有用,但現(xiàn)代編程更傾向于使用函數(shù)和循環(huán)控制結(jié)構(gòu),以提高代碼的可讀性和維護(hù)性。 ?9、利用C語言的靈活性
    發(fā)表于 11-27 06:46

    一文了解Mojo編程語言

    Mojo 是一種由 Modular AI 公司開發(fā)的編程語言,旨在將 Python 的易用性與 C 語言的高性能相結(jié)合,特別適合人工智能(AI)、高性能計(jì)算(HPC)和系統(tǒng)級編程場景。
    發(fā)表于 11-07 05:59

    C語言入門(硬件嵌入式那種不是APP開發(fā)的)

    C語言入門(硬件嵌入式那種不是APP開發(fā)的),有沒有對初學(xué)者很友好的書籍、視頻等資料推薦一下,一直以來看了正dian原子、野火等的視頻、文檔結(jié)果從快要入門到放氣,然后再從放氣到快要入門
    發(fā)表于 09-27 12:03

    MiniVC6(C語言快速部署)資料

    MiniVC6(C語言快速部署)軟件,無需安裝。
    發(fā)表于 09-04 16:59 ?0次下載

    梯形圖語言補(bǔ)充編程說明書

    電子發(fā)燒友網(wǎng)站提供《梯形圖語言補(bǔ)充編程說明書.pdf》資料免費(fèi)下載
    發(fā)表于 07-09 14:14 ?2次下載

    C語言精彩編程百例-364頁

    內(nèi)容提要 C是一種通用的程序設(shè)計(jì)語言,它包含了緊湊的表達(dá)式、豐富的運(yùn)算符集合、現(xiàn)代控制流以及數(shù)據(jù)結(jié)構(gòu)等四個(gè)部分。C語言功能豐富,衣達(dá)能力強(qiáng),使用起來靈活方便:它應(yīng)用面廣,可移植性強(qiáng),網(wǎng)時(shí)具有高級語言
    發(fā)表于 06-13 17:28

    免費(fèi)分享Arduino入門+進(jìn)階(全套例程+書籍)

    Arduino是一款開源電子原型平臺(tái),由硬件(單片機(jī)開發(fā)板)和軟件(編程環(huán)境)組成,旨在讓非專業(yè)用戶也能輕松入門電子制作和編程。它的核心思想是簡化硬件開發(fā),通過直觀的編程和模塊化設(shè)計(jì),
    的頭像 發(fā)表于 05-22 11:40 ?966次閱讀
    免費(fèi)分享Arduino<b class='flag-5'>入門</b>+進(jìn)階(全套例程+書籍)

    單片機(jī)c語言編程實(shí)例大全

    單片機(jī)c語言編程實(shí)例大全_18
    發(fā)表于 04-30 16:11 ?7次下載

    矩陣混音技術(shù)快速入門

    A&H矩陣混音技術(shù)快速入門Live_Matrix_MixingChinese
    發(fā)表于 03-26 14:12 ?0次下載

    51單片機(jī)C語言學(xué)習(xí)筆記

    c51語言快速入門
    發(fā)表于 03-24 14:04 ?3次下載

    單片機(jī)C語言編程寶典大全,初學(xué)必備【強(qiáng)推下載!】

    資料介紹:包含 1. 51單片機(jī)入門教程 2. 初學(xué)者適用:單片機(jī)C語言實(shí)例100例(代碼及釋義) 3. 51單片機(jī)C語言快速上手 4. 51單片機(jī)C
    發(fā)表于 03-14 11:03

    數(shù)字電路編程語言介紹

    數(shù)字電路編程語言是專門為描述和模擬數(shù)字電路而設(shè)計(jì)的編程語言。它們通常具有以下特點(diǎn): 硬件描述語言(HDL) :大多數(shù)數(shù)字電路
    的頭像 發(fā)表于 01-24 09:39 ?1543次閱讀