AUTOSAR工具DaVinci Developer有什么,能干啥?
看完《AUTOSAR初學(xué)者最想搞懂的東西》是不是還是不知道怎么動(dòng)手開搞AUTOSAR,剛打開DaVinci工具依然很陌生,不知道點(diǎn)哪里?
其實(shí),這跟學(xué)其他軟件工具使用一樣,你不知道其里面有什么功能,所以不知道做什么。
如果你已經(jīng)入門了,以下內(nèi)容對(duì)你來(lái)說(shuō)可能小菜一碟,但是對(duì)初學(xué)者而言,前面是模糊的,不知道走哪條路比較好,又不敢向前踏出一步。
我希望我做的是一個(gè)引導(dǎo)圖,能夠引領(lǐng)初學(xué)者少走彎路。
本文就開始講解DaVinci工具如何使用。
1.概念和用途在使用之前,首先要搞清楚,Developer是干什么用的。
很多人認(rèn)為它是用來(lái)做SWC配置的,其實(shí)不然,應(yīng)該說(shuō)是做SWC設(shè)計(jì)的。
配置和設(shè)計(jì)有什么區(qū)別,如果你對(duì)A-Spice有一定了解,設(shè)計(jì)是Coding之前的工作。但是做AUTOSAR開發(fā)的小伙伴,很多人都不care這些,拿來(lái)就寫代碼,就配置參數(shù)。
認(rèn)真想一想,Developer里面對(duì)SWC的設(shè)計(jì)或者配置,其實(shí)跟軟件架構(gòu)設(shè)計(jì)過程中的Component設(shè)計(jì)很像,或者說(shuō)本來(lái)就是一回事。SWC中的C就是Component的意思。
做SWC的設(shè)計(jì),就要設(shè)計(jì)Component,就要設(shè)計(jì)Interface或者說(shuō)各種各樣的Ports,然后參數(shù)等等。這些統(tǒng)統(tǒng)都可以在Developer工具上進(jìn)行。
例如,之前我的博文《AUTOSAR Port配置教程》里面的
就是軟件架構(gòu)上的組件和接口圖。
所以說(shuō),Developer是用來(lái)做設(shè)計(jì)的,也就是說(shuō)要想好這個(gè)軟件要做些什么功能,要設(shè)計(jì)多少個(gè)SWC,具體的接口是怎樣的,同步還是異步的調(diào)用方式等等。然后在動(dòng)手在上面操作,整體而言,會(huì)節(jié)省很多時(shí)間。
當(dāng)然,對(duì)于初學(xué)者,把它當(dāng)做配置工具使用也沒有問題的,畢竟了解概念、摸清其操作、先把工具用起來(lái)會(huì)顯得更迫切、更重要。
2. 工具概覽
在使用之前,看看這個(gè)工具有什么。了解整體的視圖和功能在學(xué)一個(gè)軟件是很重要的。
就這個(gè)視圖而言,菜單欄和對(duì)象瀏覽窗口用的最多,特別是對(duì)象瀏覽窗口還藏著很多很多功能。
3. 菜單欄
跟其他軟件一樣,菜單欄很簡(jiǎn)單,沒必要做太多的解釋,點(diǎn)進(jìn)去看就行了。
4. 對(duì)象類型
重點(diǎn)講解Developer里面的對(duì)象(Object),我們平時(shí)在Developer做AUTOSAR開發(fā)大多數(shù)情況下操作的就是Object。
而這個(gè)Developer的Object類型是很多的。就是這個(gè)圖里面這些:
我用腦圖做了個(gè)全面的分類總結(jié):
以上這些都算是AUTOSAR的概念,不是這個(gè)DaVinciDeveloper獨(dú)有的,例如SWC的類型。各個(gè)是干什么用的呢?我在《AUTOSAR SWC詳解》里面講解很清楚了。
SWC | 描述/用途 |
Parameter SWC/Calibration | 此SWC用于將(其所在的ECU)的Calibration參數(shù)共享給外部設(shè)備。與Application SWC或SensorActuator SWC不同,這些SWC沒有任何內(nèi)部行為。 |
Composition SWC | 這個(gè)SWC是在系統(tǒng)配置期間單一ECU里面的SWC的集合。這種SWC有助于抽象和標(biāo)準(zhǔn)化AUTOSAR目標(biāo)的軟件開發(fā)。 |
Atomic SWC | 這個(gè)是相對(duì)Composition SWC而言的,是單個(gè)不再拆解的SWC,也算是個(gè)抽象的概念。 |
Application SWC | 一般只包含應(yīng)用程序的SWC |
SensorActuator SWC | 專門處理和sensor/actuator相關(guān)的SWC |
Nvblock SWC | 這種SWC是用于訪問NVRAM或Memory的 |
Complex Device Driver SWC | 用于開發(fā)CDD(Complex Device Driver)或者AUTOSAR標(biāo)準(zhǔn)不 |