版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本從ZIPC中文檔的建立方法到管理方法,從仿真到代碼生成,涵蓋了利用ZIPC進(jìn)行開(kāi)發(fā)的諸多內(nèi)容,目的是使ZIPC初學(xué)者能夠簡(jiǎn)單的操作。另外,還有一個(gè)目的就是希望ZIPC的中級(jí)者能夠盡快理解ZIPC的新功能,成為ZIPC的高級(jí)者,從而將ZIPC迅速應(yīng)用到Studio本中,按照下列作業(yè)流程分步進(jìn)行作業(yè)。圖 ZIPC作業(yè)流在本中隨處可見(jiàn)這樣的“小技巧。這里面記錄了有用的信息,望查看本中說(shuō)明的項(xiàng)目在樣例中,因此,參考樣例的話有助于理解。另外,閱讀本教ZIPC軟件。1ZIPC入 1- 需求確 1- 新建ZIPC項(xiàng) 1- 設(shè)計(jì)階 1-3-1各種設(shè)計(jì) 1-3-2文檔 1-3-3添加任 1-3-4狀態(tài)轉(zhuǎn)移表 1-3-5狀態(tài)轉(zhuǎn)移表的定 1-3-6STM設(shè) 1-3-7事件單元格、狀態(tài)單元格的編 1-3-8動(dòng)作單元格的編 1-3-9函數(shù)設(shè)計(jì) 1-3-10文檔檢 1- 仿真階 1-4-1仿真執(zhí)行環(huán)境生 1-4-2仿真調(diào) 1-4-3斷 1-4-4日志生 1-4-5序列圖設(shè)計(jì)書(shū)的生 1-4-6覆蓋 1- 目標(biāo)階 1-5-1變量設(shè)計(jì) 1-5-2定義設(shè)計(jì) 1-5-3代碼翻譯器信 1-5-4代碼生成設(shè) 1-5-5代碼生 1- 小 2VIP仿 2- VISUAL 2- VIP(VISUALINTERFACEPROTOTY 2- 小 3文檔間轉(zhuǎn) 3- 狀態(tài)轉(zhuǎn)移圖→狀態(tài)轉(zhuǎn)移 3- 狀態(tài)轉(zhuǎn)移表→狀態(tài)轉(zhuǎn)移 3- 序列圖→狀態(tài)轉(zhuǎn)移 3- 小 1ZIPC入在本中,將邊制作CD器樣例,邊解說(shuō)ZIPC中的開(kāi)發(fā)流程O(píng)FFOFF ,并處于電源OFF狀態(tài)。。有停止按鈕,按下該按鈕的話,會(huì) 狀態(tài)變?yōu)橥V範(fàn)顟B(tài),并返回 狀態(tài)有ZIPC,新建項(xiàng)目。在本中,是以上述的需求為基礎(chǔ),在ZIPC中進(jìn)行開(kāi)發(fā)的zpf下面創(chuàng)建“CD器”項(xiàng)目?!静襟EPCPCwindows選擇【開(kāi)始】→【所有程序】→【ZIPCV10】→【ZIPCDeveloperStudio】選項(xiàng),啟ZIPC。3.選擇主菜單中的【文件】→【新建項(xiàng)目】選項(xiàng),啟動(dòng)【新建項(xiàng)目】框圖1-2.3- 【新建項(xiàng)目】菜 在【項(xiàng)目名稱】欄中輸入“CD器。此時(shí)【文件名】會(huì)跟【項(xiàng)目名稱】同名。然后圖1-2.3- 【新建項(xiàng)目】4.選擇【項(xiàng)目屬性】框中的【屬性】選項(xiàng)卡5.在【項(xiàng)目屬性】框中的【屬性】選項(xiàng)卡中,設(shè)定項(xiàng)目的相關(guān)信息圖1- 【項(xiàng)目屬性】框的【屬性】選項(xiàng)在【項(xiàng)目屬性】框中的【屬性】選項(xiàng)卡中,雙擊到【附件】列表中的文件6.選擇【項(xiàng)目屬性】框中的【管理者】選項(xiàng)卡7.按下該選項(xiàng)卡中的【添加】按鈕,啟動(dòng)【個(gè)人信息(管理者)】框圖1- 【項(xiàng)目屬性】框的【管理者】選項(xiàng)8.在【個(gè)人信息(管理者)】框中設(shè)定個(gè)人信息后,單擊【OK】按鈕圖1- 【個(gè)人信息(管理者】9.確認(rèn)在【項(xiàng)目屬性】框中的【管理者】選項(xiàng)卡中設(shè)定的內(nèi)容圖1- 【項(xiàng)目屬性】框的【管理者】選項(xiàng)10.選擇【項(xiàng)目屬性】框中的【操作者】選項(xiàng)卡11.12.單擊【項(xiàng)目屬性】框中的【OK】按鈕,設(shè)置【項(xiàng)目屬性】框圖1- 【項(xiàng)目屬性】框的【操作者】選項(xiàng)在【項(xiàng)目屬性信息】框中即使未輸入項(xiàng)目的詳細(xì)事項(xiàng),也不會(huì)對(duì)項(xiàng)目有影響。13.在【新建項(xiàng)目】框中單擊【OK】按鈕,對(duì)【新建項(xiàng)目】框進(jìn)行設(shè)置圖1- 【項(xiàng)目新建】14.關(guān)閉【新建項(xiàng)目】框的話,顯示圖1-2.14所示的文檔樹(shù)。另外,在文檔樹(shù)最上“CD圖1- 新建項(xiàng)目后的ZIPC文檔15.選擇【文件】→【項(xiàng)目保存】選項(xiàng),保存“CD器.zpf”項(xiàng)目文件圖1- 【項(xiàng)目保存】菜16.ZIPC圖1- 退出器.zpf”項(xiàng)目文件記為“CD器”項(xiàng)目。ZIPCZIPCZIPC的各種消息;在“編輯窗口”中進(jìn)行各種設(shè)計(jì)書(shū)的編輯。ZIPC綜合環(huán)境圖1- ZIPC的畫(huà)ZIPC“動(dòng)畫(huà)階段”以及“模擬階段”5種。1.4.WindowsNative圖1- 階段說(shuō) 設(shè)計(jì)階在“設(shè)計(jì)階段”進(jìn)行各種設(shè)計(jì)書(shū)的建立、以及編輯。 各種設(shè)計(jì)表1-3- 設(shè)計(jì)書(shū)一設(shè)計(jì)define義FLASHIOZIPC換為狀態(tài)轉(zhuǎn)移圖,將序列圖轉(zhuǎn)換為狀態(tài)轉(zhuǎn)移表等。有關(guān)轉(zhuǎn)換功能的詳細(xì)介紹,可參考后述的“3在本中,不涉及有關(guān)各設(shè)計(jì)書(shū)的詳細(xì)介紹。有關(guān)各設(shè)計(jì)書(shū)的詳細(xì)介紹可參考手1另外,在本中建立的“CD器”項(xiàng)目屬于的入門(mén)篇,只使用所需最低限在“文檔樹(shù)”的各項(xiàng)目中,的內(nèi)容如下所示ZIPC設(shè)置文(.zkw(.kwd“ZIPC關(guān)鍵字文件”用來(lái)系統(tǒng)調(diào)用以及仿真器調(diào)用??梢酝ㄟ^(guò)修改“ZIPC關(guān)鍵字“ZIPC關(guān)鍵字文件”是在項(xiàng)目建立時(shí)自己的?!瓣P(guān)鍵字文件”用來(lái)ZIPC中使用的符號(hào)。全體文在【全體文檔】項(xiàng)目中的是分析時(shí)建立的設(shè)計(jì)書(shū)(如任務(wù)關(guān)聯(lián)圖、序列圖以及時(shí)全體文檔項(xiàng)目中的設(shè)計(jì)書(shū)在“設(shè)計(jì)階段”以外沒(méi)有關(guān)聯(lián)控制在這些項(xiàng)目各設(shè)計(jì)書(shū)。的設(shè)計(jì)書(shū)為“仿真階段“動(dòng)畫(huà)階段“模擬階段”系統(tǒng)共任在【任務(wù)】項(xiàng)目中各任務(wù)中使用的設(shè)計(jì)書(shū)不使用OS的話,添加一個(gè)任務(wù)項(xiàng)目,將各任務(wù)中使用的設(shè)計(jì)書(shū)到添加的任務(wù)項(xiàng)目(OS的話,也可以建立多個(gè)任務(wù),但是不能夠進(jìn)行仿真。這種情況下,不能夠句在【句柄】項(xiàng)目中各句柄中使用的設(shè)計(jì)書(shū)OSOS時(shí)的句柄一般為中斷處理)ZC件夾下的各設(shè)計(jì)書(shū)的路徑也會(huì)相應(yīng)發(fā)生變化。比項(xiàng)目文件所處的級(jí)別高的各設(shè)計(jì)書(shū)時(shí),不改變路徑?!静襟E1.2.選擇【文件】→【項(xiàng)目打開(kāi)】選項(xiàng),啟動(dòng)【打開(kāi)已存在的項(xiàng)目】框圖1-3- 打開(kāi)項(xiàng)圖1-3-3.3- 【打開(kāi)已存在的項(xiàng)目】圖1-3-3.3- 【打開(kāi)已存在的項(xiàng)目】4.5.圖1-3-3.5- 添加任圖1-3-3.5- 新的任6.7.在該快捷菜單中,選擇【重命名】選項(xiàng),啟動(dòng)【重命名】框圖1-3- 任務(wù)重命“CD,名稱變?yōu)椤癈D圖1-3- 【重命名】下面向“CD”任務(wù)狀態(tài)轉(zhuǎn)移表?將文檔樹(shù)中的文件的表示方式改為只用【文件名】表示“絕對(duì)路徑”表示以?的文件的排列可以改為“按名字排列“按種類排列”以及“按順序排?向“CD”任務(wù)“狀態(tài)轉(zhuǎn)移表【步驟2.圖1-3- 狀態(tài)轉(zhuǎn)移表“CD,圖1-3- 【打開(kāi)文件】4.在【文檔樹(shù)】中,確認(rèn)“CD.stm”設(shè)計(jì)書(shū)已到【控制器】→【CD】→【設(shè)計(jì)書(shū)】另外,會(huì)在“編輯窗口”中自動(dòng)打開(kāi)“CD.stm圖1-3- 【CD.st】設(shè)計(jì)書(shū)5.“CD.stmCD.stm”設(shè)圖1-3- 保存“CD.stm”設(shè)計(jì)6.“CD.stm”設(shè)計(jì)書(shū)處于有效狀態(tài),選擇【文件】→【關(guān)閉】選項(xiàng),關(guān)閉“CD.stm”設(shè)計(jì)書(shū)。圖1-3- 關(guān)閉“CD.stm”設(shè)計(jì)至此,就將“CD.stm”設(shè)計(jì)書(shū)到了“CD”任務(wù)中。在這里,定義“CD器”項(xiàng)目的狀態(tài)轉(zhuǎn)移表 時(shí),也將立即終 按 按鈕的話,進(jìn) 按鈕時(shí),才會(huì)發(fā)生狀態(tài)變化有停止按鈕,按下該按鈕的話,會(huì) 中狀態(tài)變?yōu)橥V範(fàn)顟B(tài) 有快進(jìn)按鈕 時(shí)按下該按鈕的話,開(kāi)始快進(jìn),放開(kāi)該按鈕的話,返 按鈕 時(shí)按下該按鈕的話,開(kāi) ,放開(kāi)該按鈕的話,返(state首先抽出事件。從需求中抽出的事件為“電源按鈕“出入倉(cāng)鈕“按鈕“停止按鈕“暫停按鈕“快進(jìn)按鈕按下“暫停按鈕松開(kāi)“按鈕按下“ONOFFCDCD“停止“““快進(jìn)”和“暫停。表1-3-5.0 CD器的狀態(tài)轉(zhuǎn)移表【步驟2.在該菜單中選擇【打開(kāi)】菜單,啟動(dòng)“CD.stm圖1-3- 打開(kāi)“CD.stm”設(shè)計(jì)圖1-3- 啟動(dòng)【STM設(shè)定】4.在【STM設(shè)定】框中,選擇【屬性】選項(xiàng)卡】】STM名:CD圖1-3- 【STM設(shè)定】6.在“編輯窗口”中確認(rèn)“CD.stm1-3-6.6圖1-3- 進(jìn)行“STM設(shè)定”的“CD.stm”設(shè)計(jì)STM類在“CD.stm”設(shè)計(jì)書(shū)中,指定表示狀態(tài)轉(zhuǎn)移表基本動(dòng)作的“EE有關(guān)“STMSTM名①STM名稱不能全為數(shù)字②STM名稱大多數(shù)為1個(gè)記號(hào)(不能有符號(hào)、運(yùn)算符、空格、制表符以及換行(也有例外,如克隆STM等,在這里不做介紹)CD階層00.1? 0.1 0在這,在【STM定】框中進(jìn)行了所需最低限度的設(shè)定。有關(guān)【STM設(shè)】詳細(xì)介紹可參考手“第7章態(tài)轉(zhuǎn)移表編輯器手“第17章或《狀STMEHST(擴(kuò)展階層化狀態(tài)轉(zhuǎn)移表STM另外,有關(guān)擴(kuò)展階層化狀態(tài)轉(zhuǎn)移表的詳細(xì)介紹,可參考“擴(kuò)展階層化狀態(tài)轉(zhuǎn)移表設(shè)計(jì)手Ver.2.0“擴(kuò)展階層化狀態(tài)轉(zhuǎn)移表設(shè)計(jì)手法Ver.2.0”東京銀座ISBN4-89469-004-在這里,進(jìn)行狀態(tài)轉(zhuǎn)移表“CD.stm狀態(tài)轉(zhuǎn)移表是利用外部的事件來(lái)表示從某個(gè)狀態(tài)轉(zhuǎn)移到另一個(gè)狀態(tài)的一種形式。在這事件、狀態(tài)字符串的輸入方使用ZIPC的STM編輯器進(jìn)行輸入的方法包括“編輯模式”下的字符輸入方法以及“保事件“電源按鈕“出入倉(cāng)鈕“按鈕“止按鈕暫停按鈕“快進(jìn)按鈕按下“暫停按鈕松開(kāi)“按鈕按下“按松開(kāi)狀為“電源“電源OFF“入C“插入C停止“““快進(jìn)”“暫停。。圖1-3- 在事件單元格中輸入“電源按鈕”例事件單元格、狀態(tài)單元格的分割、分組方ON將要分組的事件單元格以及狀態(tài)單元格全選,在“事件”或者“狀態(tài)”單元格上點(diǎn)擊事件單元格、狀態(tài)單元格的刪除方事件單元格、狀態(tài)單元格的添加方選擇一個(gè)事件單元格或者狀態(tài)單元格,點(diǎn)擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【插STM在該狀態(tài)下輸入方向鍵的話單元格會(huì)添加到輸入的上另外可以通過(guò)按鍵,或者用鼠標(biāo)選擇其他單元格來(lái)解除單元格添加模式。下面就來(lái)編輯“CD.stm【步驟1.參述的操作方法,如圖1-3-7.1所示,進(jìn)行“CD.stm”設(shè)計(jì)書(shū)的編輯圖1-3- 狀態(tài)轉(zhuǎn)移表的事件以及狀態(tài)的設(shè)OFF來(lái)“電源按鈕”事件,此時(shí)進(jìn)行“電源ON處理,并移到“停止”狀態(tài)OFF格進(jìn)行分割。描述方法如下所示。動(dòng)作單元格的描述方ZIPCSTM編輯器編輯動(dòng)作單元格的方法如下所示。這里將“動(dòng)作單元格”分▲▲【步驟CD.stm圖1-3-8.1- 動(dòng)作單元格的設(shè)動(dòng)作單元格中的0:0(事件號(hào)0:狀態(tài)號(hào)0)為型轉(zhuǎn)移(※,因此,記為“電ON:停止(D(上圖使用的是狀態(tài)名。(deep-,書(shū)寫(xiě)方式 轉(zhuǎn)移對(duì)象狀態(tài)名(圖1-3-8.1- 型轉(zhuǎn)移的動(dòng)作描表1-3- 常用加速鍵一加速撤撤銷粘全檢置插入單刪除單分轉(zhuǎn)移處轉(zhuǎn)轉(zhuǎn)SWITCH處處處SWITCH無(wú) 函數(shù)實(shí)體可以從【文檔樹(shù)】中的各設(shè)計(jì)書(shū)中自動(dòng)抽【步驟動(dòng)【FNC設(shè)計(jì)書(shū)-函數(shù)抽出添加生成】框。圖1-3- “函數(shù)設(shè)計(jì)書(shū)”快捷菜設(shè)計(jì)書(shū)選擇】框圖1-3- 【FNC設(shè)計(jì)書(shū)/函數(shù)抽出添加生成】“CD,圖1-3- 【生成處FNC設(shè)計(jì)書(shū)選擇】5.顯示【文件做成確認(rèn)】框,單擊【OK】按鈕圖1-3- 【文件做成確認(rèn)】voidvoid圖1-3- 【FNC設(shè)計(jì)書(shū)-函數(shù)抽出添加生成】框7.顯示【函數(shù)抽出生成確認(rèn)】框,單擊【OK】按鈕圖1-3- 【函數(shù)抽出生成確認(rèn)】在【FNC設(shè)計(jì)書(shū)-函數(shù)抽出添加生成】框的【全部生成函數(shù)字符指定】→【返回添加到函數(shù)設(shè)計(jì)所有函數(shù)。要想給每個(gè)函數(shù)設(shè)定不同的“返回值”和“參數(shù)”的8.在【文檔樹(shù)】中,確認(rèn)“CD.fnc”已到【控制器】→【CD】→【設(shè)計(jì)書(shū)】項(xiàng)目中。圖1-3- “CD.fnc”設(shè)計(jì)書(shū)CD.fnc圖1-3- 函數(shù)設(shè)計(jì)書(shū)的生成例10.保存“CD.fnc至此,就完成了函數(shù)設(shè)計(jì)書(shū)的、編輯。ZIPC中具有進(jìn)行狀態(tài)轉(zhuǎn)移表的“文檔檢查”功能。文檔檢查是指執(zhí)行“轉(zhuǎn)移對(duì)象是否STM的調(diào)用格式是否選擇【項(xiàng)目】→【項(xiàng)目設(shè)定】→【文檔檢查設(shè)定】選項(xiàng),啟動(dòng)【文檔檢查設(shè)定】有關(guān)【文檔檢查設(shè)定】框的詳細(xì)介紹,可參考手冊(cè)“第13章檢查器?!静襟E1.圖1-3- 文檔檢2.圖1-3- “文檔檢查”的結(jié)10圖1-3- “CD.stm”設(shè)計(jì)書(shū)的更4.5.圖1-3- 顯示【文檔檢查】錯(cuò)..\CD.stm(2,1,0)errorE060001(雙擊出錯(cuò)的地方也能夠?qū)崿F(xiàn)跳轉(zhuǎn)圖1-2- 【跳轉(zhuǎn)】菜圖1-2- 出錯(cuò)地方的閃保存“CDZIPC。在仿真階段,由設(shè)定的設(shè)計(jì)書(shū)在內(nèi)部CC代碼進(jìn)行仿真調(diào)試。?可以設(shè)置斷點(diǎn)、參照變量值以及事件等14【步驟2.圖1-4- 進(jìn)入【仿真階段3.選擇【項(xiàng)目】→【代碼生成】選項(xiàng),啟動(dòng)【代碼生成執(zhí)行確認(rèn)】框圖1-4- 【代碼生成】菜4.在【代碼生成執(zhí)行確認(rèn)】框中,單擊【是】按鈕,生成仿真用代碼圖1-4-1.4- 【代碼生成執(zhí)行確認(rèn)】框圖1-4-1.4- 代碼生成結(jié)5.圖1-4- 仿真編0的話,就可以進(jìn)行仿真調(diào)試。圖1-4- 仿真調(diào)試結(jié)束【步驟1.圖1-4- 仿真調(diào)試的執(zhí)圖1-4- “電源OFF”狀態(tài)單元格閃4.在該快捷菜單中選擇【事件】選項(xiàng),“電源按鈕”事件。圖1-4- “電源按鈕”事ON:停止:CD未插入”狀態(tài)。圖1-4- “電源按鈕”事件發(fā)生后的狀態(tài)轉(zhuǎn)移6.以同樣方式其他事件,執(zhí)行仿真7.圖1-4- 仿真調(diào)試的終【步驟CD.stm圖1-4- 【復(fù)位】菜3.圖1-4- 斷點(diǎn)的設(shè)4.在“CD.stm5.在“CD.stm”設(shè)計(jì)書(shū)中,執(zhí)行仿真調(diào)試,事件,這樣設(shè)置斷點(diǎn)的單元格會(huì)閃爍6.在“CD.stm圖1-4- 斷點(diǎn)執(zhí)行時(shí)的狀態(tài)轉(zhuǎn)移7.9.圖1-4- 【斷點(diǎn)解除】菜10.在“CD.stm圖1-4- 斷點(diǎn)解除的狀態(tài)轉(zhuǎn)移11.關(guān)閉“CD.stm在仿真調(diào)試中,使用在文檔樹(shù)中的【控制器】→【CD→【仿真用代碼】項(xiàng)目中的文件,可以像一般的調(diào)試器那樣,進(jìn)行C代碼的調(diào)試1414【步驟1.2.圖1-4- 開(kāi)始獲取日3.4.事件,進(jìn)行仿真調(diào)試5.6.選擇【調(diào)試】→【創(chuàng)建日志】→【結(jié)束】選項(xiàng),啟動(dòng)【日志保存確認(rèn)】框圖1-4- 日志生成結(jié)7.在該框中,選擇【OK】選項(xiàng),啟動(dòng)【保存日志文件】框圖1-4- 【日志保存確認(rèn)】“CD,圖1-4-4.8 【步驟1.選擇【工具】→【從日志中生成文檔】→【生成時(shí)序圖】選項(xiàng),啟動(dòng)【日志文件】圖1-4- 序列圖的生2.在該框中,將【文件名】設(shè)為“CD.log”,單擊【】按鈕,啟動(dòng)【從日志文件圖1-4- 【日志文件】3.在該框中,進(jìn)行序列圖的設(shè)定。由于在這里是按照初始狀態(tài)生成的,因此,不做任圖1-4- 【從日志文件中生成序列圖】4.1圖1-4- 序列5.6.1”處于有效狀態(tài),選擇【顯示】→【網(wǎng)格大小】選項(xiàng),啟動(dòng)【值輸入】對(duì)圖1-4- 【網(wǎng)格大小】菜7.在該框中,更改【縱向網(wǎng)格值】的大小。網(wǎng)格數(shù)最好設(shè)為簡(jiǎn)單易懂的數(shù)值圖1-4- 【值輸入】9.圖1-4- “序列圖1”的畫(huà)“CD,1”設(shè)計(jì)書(shū)。11.保存并關(guān)閉“CD.msc在生成的序列圖中,除了的事件信息之外,還生成C源代碼的變量設(shè)定部分。這是由于在【從日志文件中生成序列圖】框中,是按照初始狀態(tài)進(jìn)行生成的緣故。有關(guān)【從日志文件中生成序列圖】框的詳細(xì)介紹,可參考手冊(cè)“第16章ATV在序列圖中,由仿真建立的日志文件可以把握進(jìn)行了什么樣的測(cè)試,并且也是ATV(AutoTestVerification)中的測(cè)試/章ATV【步驟1.2.選擇【工具】→【跑完覆蓋率執(zhí)行】選項(xiàng),啟動(dòng)【跑完覆蓋率執(zhí)行】框圖1-4- 跑完覆蓋率的執(zhí)3.在該框中,選擇【覆蓋率用日志文件設(shè)定】選項(xiàng)卡4.在該選項(xiàng)卡中,選擇單擊【】按鈕,啟動(dòng)【日志文件】框圖1-4- 【跑完覆蓋率執(zhí)行】框的【日志文件】5.在該框中,將【文件名】設(shè)為“CD.log,單擊【】按鈕,關(guān)閉【日志文圖1-4- 【日志文件】5中選擇的日志文件已添加到【日?qǐng)D1-4- 【日志文件一覽】的確7.在【跑完覆蓋率執(zhí)行】框中,選擇【STM覆蓋率輸出】選項(xiàng)卡(View圖1-4- 【跑完覆蓋率執(zhí)行】框的【STM覆蓋率輸出】選項(xiàng)9.在“CD.stm10.另外,在“CD.stm”設(shè)計(jì)書(shū)中,檢查閃爍單元格中表示的值,確認(rèn)跑完的次數(shù)。跑圖1-4- 確認(rèn)“CD.stm”設(shè)計(jì)書(shū)的跑完11.在【跑完覆蓋率執(zhí)行】框的【STM覆蓋率輸出】選項(xiàng)卡中,選擇【STM跑完率輸出(%,啟動(dòng)【STM跑完率輸出】框。圖1-4- 【STM跑完率輸出】12.在該框中,確認(rèn)跑完率C0C1C2”是狀13.確認(rèn)完跑完率后,在【STM跑完率輸出】框中,單擊【OK】按鈕,關(guān)閉【STM跑圖1-4- 【STM跑完率輸出】14.選擇【跑完覆蓋率執(zhí)行】框的【重播環(huán)境】選項(xiàng)卡,單擊【環(huán)境生成】按鈕圖1-4- 【跑完覆蓋率執(zhí)行】框的【重播環(huán)境】選項(xiàng)15.選擇【跑完覆蓋率執(zhí)行】框的【重播】選項(xiàng)卡,單擊操作區(qū)的【Play(連續(xù)執(zhí)PlayPlay圖1-4- 【跑完覆蓋率執(zhí)行】框的【重播】選項(xiàng)16.確認(rèn)“CD.stm”設(shè)計(jì)書(shū)的單元格像執(zhí)行仿真時(shí)那樣閃爍。日志結(jié)束的話,會(huì)顯17.關(guān)閉【跑完率執(zhí)行】框18.保存并關(guān)閉“CD在仿真階段,可以利用與VIP(VisualInterfacePrototy(利用VisualVIP的仿真介紹,可參考后述的“2VIP14在目標(biāo)階段中,生設(shè)計(jì)書(shū)向目標(biāo)實(shí)裝用的C代碼“第17章。下面生成“CDC源代碼,對(duì)已建立的狀態(tài)轉(zhuǎn)移表的事件不進(jìn)行詳細(xì)設(shè)計(jì)?!皊hort+10?!静襟E1.ZIPC,打開(kāi)“CD2.在【文檔樹(shù)】中,選擇【控制器】→【CD】→【設(shè)計(jì)書(shū)】項(xiàng)目,點(diǎn)擊鼠標(biāo)右鍵,會(huì)彈出圖1-5- 變量設(shè)計(jì)書(shū)的建5.在【打開(kāi)文件】框中,將【文件名】設(shè)為“CD,單擊【打開(kāi)】按鈕,關(guān)閉【打開(kāi)圖1-5- 【打開(kāi)文件】6.在【文檔樹(shù)】中,確認(rèn)“CD.ram”設(shè)計(jì)書(shū)已到【控制器】→【CD】→【設(shè)計(jì)書(shū)】項(xiàng)另外,在“編輯窗口”中會(huì)自動(dòng)打開(kāi)“CD.ram圖1-5- “CD.ram”設(shè)計(jì)書(shū)7.在“編輯窗口”中,如下所示,編輯“CD.ram*short變量 8.保存并關(guān)閉“CD.ramdefine【步驟在【文檔樹(shù)】中,選擇【控制器】→【CD】→【設(shè)計(jì)書(shū)】項(xiàng)目,點(diǎn)擊鼠標(biāo)右鍵,會(huì)彈出圖1-5- 定義設(shè)計(jì)書(shū)的建3.在該框中,將【文件名】設(shè)為“CD,單擊【打開(kāi)】按鈕,關(guān)閉【打開(kāi)文件】圖1-5- 【打開(kāi)文件】4.在【文檔樹(shù)】中,確認(rèn)“CD.def”設(shè)計(jì)書(shū)已到【控制器】→【CD】→【設(shè)計(jì)書(shū)】項(xiàng)另外,在“編輯窗口”中會(huì)自動(dòng)打開(kāi)“CD.def圖1-5- “CD.def”設(shè)計(jì)書(shū)5.在“編輯窗口”中,如下所示,編輯“CD.def**#define正 0x01/*電源0x02/*出入倉(cāng)動(dòng)作0x03/*0x04/*停止0x05/*快進(jìn)按鈕按下0x06/*快進(jìn)按鈕松開(kāi)0x07/*后退按鈕按下0x08/*后退按鈕松開(kāi)0x09/*暫停0x00/*清6.保存并關(guān)閉“CD.def計(jì)書(shū)”以及“定義設(shè)計(jì)書(shū)”4種。各設(shè)計(jì)書(shū)的詳細(xì)介紹可參考手冊(cè)“第1章文檔”以及手冊(cè)“第17章 :<@NONE>: :<@TGT>: :<@EMU>:2至此,就完成了所需的設(shè)計(jì)書(shū)的。在之前建立的“CDC代碼生成時(shí),建立的設(shè)計(jì)書(shū)都是日文的,因此,在“代碼翻譯器”定義書(shū)中,定義將2字節(jié)字符的符號(hào)名置換為編譯器能夠識(shí)別的12下面就建立代碼翻譯器信息。在這里,建立“消息翻譯器定義書(shū)(MCG”和“符號(hào)翻譯器定義書(shū)(SCG”這兩種設(shè)計(jì)書(shū)。在消息翻譯器定義書(shū)中,將CD的事件置換全局變6【步驟在【文檔樹(shù)】中,選擇【控制器】→【CD】→【設(shè)計(jì)書(shū)】→【CD.stm】項(xiàng)目,點(diǎn)擊鼠標(biāo)(可以選擇任意一個(gè)設(shè)計(jì)書(shū)在該快捷菜單中,選擇【代碼翻譯器定義】→【模板生成】選項(xiàng),啟動(dòng)【代碼翻譯器定圖1-5- 【模板生成】菜3.在該框中,單擊【生成文件路徑】旁邊的【選擇】按鈕,指定文件路徑(將文件名CD圖1-5- 【代碼翻譯器定義書(shū)模板生成】4.1~3”生成符號(hào)翻譯器定義書(shū)。這一次在【代碼翻譯器定義書(shū)類別】圖1-5- 【代碼翻譯器定義書(shū)類別有關(guān)【代碼翻譯器定義書(shū)模板生成】框中各設(shè)定的詳細(xì)介紹,可參考手冊(cè)“12圖1-5- “CD.mcg”定義書(shū)和“CD.scg”定義書(shū)“CD.mcg)define值來(lái)進(jìn)行描述。代碼翻譯器定義書(shū)“CD.scg)只是列出符號(hào)名。因此,只是單純的將日文表示的26.在“編輯窗口”中,如下所示,編輯“CD.scg”定義書(shū)和“CD.mcg**例#CHG電源ON#CHG電源OFF處理#CHGCD插入處理#CHGCD未插入處理#CHG停止處理 #CHG快進(jìn)處理#CHG快進(jìn)取消#CHG后退處理#CHG后退取消#CHG**例#CHGTEVTskdata=#CHG電源按鈕#CHG #CHG#CHG快進(jìn)按鈕按下#CHG快進(jìn)按鈕松開(kāi)#CHG后退按鈕按下#CHG后退按鈕松開(kāi)#CHG暫停按鈕7.保存并關(guān)閉“CD.scg”定義書(shū)和“CD.mcg在文檔樹(shù)中的【系統(tǒng)共通】項(xiàng)目中“代碼翻譯器定義書(shū)”的話,建立的代碼翻main1.選擇【項(xiàng)目】→【項(xiàng)目設(shè)定】→【代碼生成設(shè)定】選項(xiàng),啟動(dòng)【C代碼生成設(shè)定】圖1-5- 【C代碼生成設(shè)定】菜2.在該框中,選擇【生成處設(shè)定】選項(xiàng)卡“CD圖1-5- 【C代碼生成設(shè)定】“main,圖1-5- 【主函數(shù)名設(shè)定】5.在【生產(chǎn)處設(shè)定】選項(xiàng)卡中,確認(rèn)“CD”任務(wù)的【主函數(shù)名稱】已設(shè)為“main,單擊“確定”按鈕,關(guān)閉【 代碼生成設(shè)定】框圖1-5- 確認(rèn)設(shè)定】選項(xiàng)卡中,選擇【C生成時(shí)的名稱設(shè)定】選項(xiàng),更改生成的文件名。更改【C代碼生成設(shè)定】框的話,更改后的內(nèi)容將適用于所有階段有關(guān)【C代碼生成設(shè)定】框的詳細(xì)介紹,可參考手冊(cè)“第17章”或者手冊(cè)“第17章2.V91.2.選擇【項(xiàng)目】→【代碼生成】菜單,啟動(dòng)【代碼生成執(zhí)行確認(rèn)】框圖1-5- 【代碼生成】菜3.圖1-5- 【代碼生成執(zhí)行確認(rèn)】4.在【文檔樹(shù)】中,確認(rèn)生成的C代碼已到【控制器】→【CD】→【程序】→【生成圖1-5- 確認(rèn)生成的代ZIPC利用ZIPC行開(kāi)發(fā)并不是那樣的。讀者可以參考本,自己試著建立其他的樣例相信一定會(huì)輕松完成的。 VIP仿一章當(dāng)中,讓上一章建立的CD器同用VisualBasic建立的外觀圖聯(lián)合進(jìn)行仿真。在上章建立的D器有以下事件“源按鈕出入倉(cāng)按鈕“按“停。以使這些事件同用VisualBasic建的Window的按鈕相關(guān)聯(lián)并進(jìn)行。VisualBasicVisualBasic另外,本使用VisualBasic2008Express下面,將按鈕粘貼到表單上,建立 器【步驟1.啟動(dòng)VisualBasic2008ExpressEdition(以后簡(jiǎn)稱為VB2.選擇【文件】→【新建項(xiàng)目】選項(xiàng),打開(kāi)【新建項(xiàng)目】框3.在該框中,選擇【W(wǎng)indows樣式應(yīng)用】選項(xiàng),單擊【OK】按鈕,新建一個(gè)項(xiàng)目圖2- 新建項(xiàng)4.選擇【項(xiàng)目】→【添加參照】選項(xiàng),打開(kāi)【添加參照】框圖2- 【添加參照】菜5.在該框中,選擇【COM】選項(xiàng)卡,確認(rèn)用VB建立的外觀圖和ZIPCVIP間進(jìn)行通信所需的“mActiveXControlmodule”已在列表中,單擊【OK】按鈕。列表中圖2- 【添加參照】框的【COM】選項(xiàng)6.列表中不存在組件文件的話,選擇【參照】選項(xiàng)卡,尋找組件文件。選擇“步驟5”所示路徑下的“ 圖2- 【添加參照】框的【參照】選項(xiàng)7.8.打開(kāi)已安裝ZIPC 9.將“OCX”文件夾中的“ 圖2-1.9- 組組件被的話,顯示結(jié)果如下圖2-1.9- 組10.首先進(jìn)行表單的設(shè)定。選擇【Form1.vb?※?:CD※圖2- 表單的設(shè)11.如下圖所示,將“VIP通信組件( ? ※項(xiàng)目圖2- “VIP通信組件”項(xiàng)目的配置和屬性設(shè)12.? ? 圖2- “電源按鈕”項(xiàng)目的配置與屬性設(shè)13.12?????????“FF??“REW??圖2- “按鈕”項(xiàng)目的配置14.“PowerBtn“EjectBtn“PlayBtn本次樣例中,使用Comm1項(xiàng)目的SetVipEvent方式來(lái)作為進(jìn)行ZIPCVIP管理的端口值更新的一種。有關(guān)VIP通信組件中其他方式的詳細(xì)介紹,可參考手冊(cè)“第15章VIP15.選擇表單中的“PowerBtn按鈕”項(xiàng)目,單擊“屬性”窗口的【事件】圖標(biāo)(16.在事件一覽中雙擊【Click圖2- “PowerBtn”的“Click”事件的17.'PrivateSubPowerBtn_Click(ByValsenderAsByVal'PrivateSubPowerBtn_Click(ByValsenderAsByValeAsSystem.EventArgs)HandlesPowerBtn.Click'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PowerBtn",CByte(1))EndSub這次為了進(jìn)行聯(lián)合作業(yè),需要描述以“CallComm1.SetVipEvent18.17”所進(jìn)行的操作,描述“EjectBtn“PlayBtn“StopBtn”以及圖2-1.18- 各按鈕的描述PrivatePrivateSubPower_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesPower.Click'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PowerBtn",EndPrivateSubEjectBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesEjectBtn.Click'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("EjectBtn",End'單 按鈕時(shí)的鉤子函PrivateSubPlayBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesPlayBtn.Click'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PlayBtn",EndPrivateSubPauseBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesPauseBtn.Click'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PauseBtn",EndPrivateSubStopBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesStopBtn.Click'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("StopBtn",CByte(1))EndSub19.對(duì)于“FFBtn”和“RewBtnZIPCVIP管理的端口20.按照“步15、16”所進(jìn)行的操作,選擇“RewBtn按鈕”項(xiàng)目,在事件一覽中雙擊圖2- “RewBtn”的“MouseDown”事件21.'PrivateSubRewBtn_MouseDown(ByValsenderAsByVal'PrivateSubRewBtn_MouseDown(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseDown'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",CByte(1))EndSub'PrivateSubRewBtn_MouseUp(ByValsenderAsByVal'PrivateSubRewBtn_MouseUp(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseUp'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",CByte(0))EndSubPrivateSubRewBtn_MouseDown(ByValPrivateSubRewBtn_MouseDown(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseDown'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",EndPrivateSubRewBtn_MouseUp(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseUp'對(duì)ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",EndPrivateSubFFBtn_MouseDown(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesFFBtn.MouseDown'后退按鈕松開(kāi)時(shí)的鉤子函數(shù)CallComm1.SetVipEvent("FFBtn",EndPrivateSubFFBtn_MouseUp(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesFFBtn.MouseUpCallComm1.SetVipEvent("FFBtn",CByte(0))EndSub22.23.?裝置 ?啟動(dòng)方 圖2- 項(xiàng)目設(shè)24.選擇【文件】→【全體保存】選項(xiàng),啟動(dòng)【項(xiàng)目保存】框25.在【項(xiàng)目保存】框中,將【名字】設(shè)為“CD_Player,選擇【保存】選項(xiàng)保存圖2- 【項(xiàng)目保存】26.由之前建立的環(huán)境建立外觀圖用執(zhí)行文件。選擇【編譯】→【CDPlayer編譯】選項(xiàng)。圖2- 執(zhí)行文件的生27.圖2- 編譯結(jié)28.24、25VB。VB的外觀圖。ZIPCVIP【步驟1.啟動(dòng)ZIPC,打開(kāi)“CD器.zpf”項(xiàng)目2.3.選擇【項(xiàng)目】→【項(xiàng)目設(shè)定】→【VIP設(shè)定】選項(xiàng),啟動(dòng)【VIP設(shè)定】框圖2- VIP的環(huán)境設(shè)4.在該框中,選擇【通信環(huán)境】選項(xiàng)卡5.在【VIP設(shè)定】框的【通信環(huán)境】選項(xiàng)卡中,單擊【】按鈕,啟動(dòng)【外觀圖執(zhí)圖2- 【VIP設(shè)定】框的【通信環(huán)境】選項(xiàng)“CD_Player.exe圖2- 【外觀圖執(zhí)行文件選擇】7.在【通信環(huán)境】選項(xiàng)卡中,確認(rèn)“CD_Player.exe”已到【完成執(zhí)行文件名】図2- 【VIP設(shè)定】框的【通信環(huán)境】選項(xiàng)8.在【VIP設(shè)定】框中,選擇【PIO設(shè)定】選項(xiàng)卡9.7圖2- 【VIP設(shè)定】框的【PIO設(shè)定】選項(xiàng)No.0“PowerBtn,“CD_Player.exe,圖2- 11.表2- 輸入屬性設(shè)定的內(nèi)容一01Byte11Byte21Byte31Byte41Byte51Byte61Byte12.在【VIP設(shè)定】框中,選擇【名稱事件設(shè)定】選項(xiàng)卡13.PIO圖2- 【VIP設(shè)定】框的【名稱事件設(shè)定】選項(xiàng)“No.0,“CD圖2- 15.表2- 事件信息設(shè)定的內(nèi)容一========16.在【VIP設(shè)定】框中,選擇【確定】按鈕,關(guān)閉【VIP設(shè)定】框圖2- 【VIP設(shè)定】VIP17.保存“CD器”項(xiàng)目
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年崇左考從業(yè)資格證客運(yùn)試題
- 2024年泉州道路旅客運(yùn)輸駕駛員從業(yè)資格模擬試題
- 2024年鄂爾多斯客運(yùn)從業(yè)資格證模擬考試題
- 吉首大學(xué)《教師書(shū)寫(xiě)技能》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉首大學(xué)《城鄉(xiāng)社會(huì)綜合調(diào)查與研究》2021-2022學(xué)年第一學(xué)期期末試卷
- 《機(jī)床夾具設(shè)計(jì)》試卷20
- 吉林藝術(shù)學(xué)院《藝術(shù)投融資》2021-2022學(xué)年第一學(xué)期期末試卷
- 吉林藝術(shù)學(xué)院《人體結(jié)構(gòu)素描》2021-2022學(xué)年第一學(xué)期期末試卷
- 交通陪償協(xié)議書(shū)范本范本模板
- 安裝空調(diào)水管合同協(xié)議書(shū)范文
- 期中模擬(1-3單元)(試題)-2024-2025學(xué)年六年級(jí)上冊(cè)數(shù)學(xué)蘇教版
- 期中 (試題) -2024-2025學(xué)年人教PEP版英語(yǔ)四年級(jí)上冊(cè)
- 點(diǎn)亮文明 課件 2024-2025學(xué)年蘇少版(2024)初中美術(shù)七年級(jí)上冊(cè)
- 廉政法規(guī)知識(shí)測(cè)試及答案
- 托育服務(wù)中心項(xiàng)目可行性研究報(bào)告
- 2024內(nèi)蒙古農(nóng)牧業(yè)融資擔(dān)保限公司招聘28人高頻難、易錯(cuò)點(diǎn)500題模擬試題附帶答案詳解
- 5.1 延續(xù)文化血脈 課件-2024-2025學(xué)年統(tǒng)編版道德與法治九年級(jí)上冊(cè)-2
- 湖北省襄陽(yáng)市2023-2024學(xué)年六年級(jí)上學(xué)期語(yǔ)文期中考試試卷(含答案)
- 2024-2030年中國(guó)CCUS技術(shù)行業(yè)現(xiàn)狀調(diào)查與前景策略分析研究報(bào)告
- 2024-2025形勢(shì)與政策:七十五載砥礪奮進(jìn)創(chuàng)輝煌 中國(guó)式現(xiàn)代化繼往開(kāi)來(lái)興偉業(yè)
- “數(shù)字城市”公共智慧底座項(xiàng)目解決方案
評(píng)論
0/150
提交評(píng)論