內(nèi)容參考zipc教程_第1頁
內(nèi)容參考zipc教程_第2頁
內(nèi)容參考zipc教程_第3頁
內(nèi)容參考zipc教程_第4頁
內(nèi)容參考zipc教程_第5頁
已閱讀5頁,還剩151頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

本從ZIPC中文檔的建立方法到管理方法,從仿真到代碼生成,涵蓋了利用ZIPC進(jìn)行開發(fā)的諸多內(nèi)容,目的是使ZIPC初學(xué)者能夠簡單的操作。另外,還有一個目的就是希望ZIPC的中級者能夠盡快理解ZIPC的新功能,成為ZIPC的高級者,從而將ZIPC迅速應(yīng)用到Studio本中,按照下列作業(yè)流程分步進(jìn)行作業(yè)。圖 ZIPC作業(yè)流在本中隨處可見這樣的“小技巧。這里面記錄了有用的信息,望查看本中說明的項目在樣例中,因此,參考樣例的話有助于理解。另外,閱讀本教ZIPC軟件。1ZIPC入 1- 需求確 1- 新建ZIPC項 1- 設(shè)計階 1-3-1各種設(shè)計 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動作單元格的編 1-3-9函數(shù)設(shè)計 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è)計書的生 1-4-6覆蓋 1- 目標(biāo)階 1-5-1變量設(shè)計 1-5-2定義設(shè)計 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器樣例,邊解說ZIPC中的開發(fā)流程OFFOFF ,并處于電源OFF狀態(tài)。。有停止按鈕,按下該按鈕的話,會 狀態(tài)變?yōu)橥V範(fàn)顟B(tài),并返回 狀態(tài)有ZIPC,新建項目。在本中,是以上述的需求為基礎(chǔ),在ZIPC中進(jìn)行開發(fā)的zpf下面創(chuàng)建“CD器”項目。【步驟PCPCwindows選擇【開始】→【所有程序】→【ZIPCV10】→【ZIPCDeveloperStudio】選項,啟ZIPC。3.選擇主菜單中的【文件】→【新建項目】選項,啟動【新建項目】框圖1-2.3- 【新建項目】菜 在【項目名稱】欄中輸入“CD器。此時【文件名】會跟【項目名稱】同名。然后圖1-2.3- 【新建項目】4.選擇【項目屬性】框中的【屬性】選項卡5.在【項目屬性】框中的【屬性】選項卡中,設(shè)定項目的相關(guān)信息圖1- 【項目屬性】框的【屬性】選項在【項目屬性】框中的【屬性】選項卡中,雙擊到【附件】列表中的文件6.選擇【項目屬性】框中的【管理者】選項卡7.按下該選項卡中的【添加】按鈕,啟動【個人信息(管理者)】框圖1- 【項目屬性】框的【管理者】選項8.在【個人信息(管理者)】框中設(shè)定個人信息后,單擊【OK】按鈕圖1- 【個人信息(管理者】9.確認(rèn)在【項目屬性】框中的【管理者】選項卡中設(shè)定的內(nèi)容圖1- 【項目屬性】框的【管理者】選項10.選擇【項目屬性】框中的【操作者】選項卡11.12.單擊【項目屬性】框中的【OK】按鈕,設(shè)置【項目屬性】框圖1- 【項目屬性】框的【操作者】選項在【項目屬性信息】框中即使未輸入項目的詳細(xì)事項,也不會對項目有影響。13.在【新建項目】框中單擊【OK】按鈕,對【新建項目】框進(jìn)行設(shè)置圖1- 【項目新建】14.關(guān)閉【新建項目】框的話,顯示圖1-2.14所示的文檔樹。另外,在文檔樹最上“CD圖1- 新建項目后的ZIPC文檔15.選擇【文件】→【項目保存】選項,保存“CD器.zpf”項目文件圖1- 【項目保存】菜16.ZIPC圖1- 退出器.zpf”項目文件記為“CD器”項目。ZIPCZIPCZIPC的各種消息;在“編輯窗口”中進(jìn)行各種設(shè)計書的編輯。ZIPC綜合環(huán)境圖1- ZIPC的畫ZIPC“動畫階段”以及“模擬階段”5種。1.4.WindowsNative圖1- 階段說 設(shè)計階在“設(shè)計階段”進(jìn)行各種設(shè)計書的建立、以及編輯。 各種設(shè)計表1-3- 設(shè)計書一設(shè)計define義FLASHIOZIPC換為狀態(tài)轉(zhuǎn)移圖,將序列圖轉(zhuǎn)換為狀態(tài)轉(zhuǎn)移表等。有關(guān)轉(zhuǎn)換功能的詳細(xì)介紹,可參考后述的“3在本中,不涉及有關(guān)各設(shè)計書的詳細(xì)介紹。有關(guān)各設(shè)計書的詳細(xì)介紹可參考手1另外,在本中建立的“CD器”項目屬于的入門篇,只使用所需最低限在“文檔樹”的各項目中,的內(nèi)容如下所示ZIPC設(shè)置文(.zkw(.kwd“ZIPC關(guān)鍵字文件”用來系統(tǒng)調(diào)用以及仿真器調(diào)用。可以通過修改“ZIPC關(guān)鍵字“ZIPC關(guān)鍵字文件”是在項目建立時自己的?!瓣P(guān)鍵字文件”用來ZIPC中使用的符號。全體文在【全體文檔】項目中的是分析時建立的設(shè)計書(如任務(wù)關(guān)聯(lián)圖、序列圖以及時全體文檔項目中的設(shè)計書在“設(shè)計階段”以外沒有關(guān)聯(lián)控制在這些項目各設(shè)計書。的設(shè)計書為“仿真階段“動畫階段“模擬階段”系統(tǒng)共任在【任務(wù)】項目中各任務(wù)中使用的設(shè)計書不使用OS的話,添加一個任務(wù)項目,將各任務(wù)中使用的設(shè)計書到添加的任務(wù)項目(OS的話,也可以建立多個任務(wù),但是不能夠進(jìn)行仿真。這種情況下,不能夠句在【句柄】項目中各句柄中使用的設(shè)計書OSOS時的句柄一般為中斷處理)ZC件夾下的各設(shè)計書的路徑也會相應(yīng)發(fā)生變化。比項目文件所處的級別高的各設(shè)計書時,不改變路徑?!静襟E1.2.選擇【文件】→【項目打開】選項,啟動【打開已存在的項目】框圖1-3- 打開項圖1-3-3.3- 【打開已存在的項目】圖1-3-3.3- 【打開已存在的項目】4.5.圖1-3-3.5- 添加任圖1-3-3.5- 新的任6.7.在該快捷菜單中,選擇【重命名】選項,啟動【重命名】框圖1-3- 任務(wù)重命“CD,名稱變?yōu)椤癈D圖1-3- 【重命名】下面向“CD”任務(wù)狀態(tài)轉(zhuǎn)移表?將文檔樹中的文件的表示方式改為只用【文件名】表示“絕對路徑”表示以?的文件的排列可以改為“按名字排列“按種類排列”以及“按順序排?向“CD”任務(wù)“狀態(tài)轉(zhuǎn)移表【步驟2.圖1-3- 狀態(tài)轉(zhuǎn)移表“CD,圖1-3- 【打開文件】4.在【文檔樹】中,確認(rèn)“CD.stm”設(shè)計書已到【控制器】→【CD】→【設(shè)計書】另外,會在“編輯窗口”中自動打開“CD.stm圖1-3- 【CD.st】設(shè)計書5.“CD.stmCD.stm”設(shè)圖1-3- 保存“CD.stm”設(shè)計6.“CD.stm”設(shè)計書處于有效狀態(tài),選擇【文件】→【關(guān)閉】選項,關(guān)閉“CD.stm”設(shè)計書。圖1-3- 關(guān)閉“CD.stm”設(shè)計至此,就將“CD.stm”設(shè)計書到了“CD”任務(wù)中。在這里,定義“CD器”項目的狀態(tài)轉(zhuǎn)移表 時,也將立即終 按 按鈕的話,進(jìn) 按鈕時,才會發(fā)生狀態(tài)變化有停止按鈕,按下該按鈕的話,會 中狀態(tài)變?yōu)橥V範(fàn)顟B(tài) 有快進(jìn)按鈕 時按下該按鈕的話,開始快進(jìn),放開該按鈕的話,返 按鈕 時按下該按鈕的話,開 ,放開該按鈕的話,返(state首先抽出事件。從需求中抽出的事件為“電源按鈕“出入倉鈕“按鈕“停止按鈕“暫停按鈕“快進(jìn)按鈕按下“暫停按鈕松開“按鈕按下“ONOFFCDCD“停止“““快進(jìn)”和“暫停。表1-3-5.0 CD器的狀態(tài)轉(zhuǎn)移表【步驟2.在該菜單中選擇【打開】菜單,啟動“CD.stm圖1-3- 打開“CD.stm”設(shè)計圖1-3- 啟動【STM設(shè)定】4.在【STM設(shè)定】框中,選擇【屬性】選項卡】】STM名:CD圖1-3- 【STM設(shè)定】6.在“編輯窗口”中確認(rèn)“CD.stm1-3-6.6圖1-3- 進(jìn)行“STM設(shè)定”的“CD.stm”設(shè)計STM類在“CD.stm”設(shè)計書中,指定表示狀態(tài)轉(zhuǎn)移表基本動作的“EE有關(guān)“STMSTM名①STM名稱不能全為數(shù)字②STM名稱大多數(shù)為1個記號(不能有符號、運(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è)計手Ver.2.0“擴(kuò)展階層化狀態(tài)轉(zhuǎn)移表設(shè)計手法Ver.2.0”東京銀座ISBN4-89469-004-在這里,進(jìn)行狀態(tài)轉(zhuǎn)移表“CD.stm狀態(tài)轉(zhuǎn)移表是利用外部的事件來表示從某個狀態(tài)轉(zhuǎn)移到另一個狀態(tài)的一種形式。在這事件、狀態(tài)字符串的輸入方使用ZIPC的STM編輯器進(jìn)行輸入的方法包括“編輯模式”下的字符輸入方法以及“保事件“電源按鈕“出入倉鈕“按鈕“止按鈕暫停按鈕“快進(jìn)按鈕按下“暫停按鈕松開“按鈕按下“按松開狀為“電源“電源OFF“入C“插入C停止“““快進(jìn)”“暫停。。圖1-3- 在事件單元格中輸入“電源按鈕”例事件單元格、狀態(tài)單元格的分割、分組方ON將要分組的事件單元格以及狀態(tài)單元格全選,在“事件”或者“狀態(tài)”單元格上點(diǎn)擊事件單元格、狀態(tài)單元格的刪除方事件單元格、狀態(tài)單元格的添加方選擇一個事件單元格或者狀態(tài)單元格,點(diǎn)擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【插STM在該狀態(tài)下輸入方向鍵的話單元格會添加到輸入的上另外可以通過按鍵,或者用鼠標(biāo)選擇其他單元格來解除單元格添加模式。下面就來編輯“CD.stm【步驟1.參述的操作方法,如圖1-3-7.1所示,進(jìn)行“CD.stm”設(shè)計書的編輯圖1-3- 狀態(tài)轉(zhuǎn)移表的事件以及狀態(tài)的設(shè)OFF來“電源按鈕”事件,此時進(jìn)行“電源ON處理,并移到“停止”狀態(tài)OFF格進(jìn)行分割。描述方法如下所示。動作單元格的描述方ZIPCSTM編輯器編輯動作單元格的方法如下所示。這里將“動作單元格”分▲▲【步驟CD.stm圖1-3-8.1- 動作單元格的設(shè)動作單元格中的0:0(事件號0:狀態(tài)號0)為型轉(zhuǎn)移(※,因此,記為“電ON:停止(D(上圖使用的是狀態(tài)名。(deep-,書寫方式 轉(zhuǎn)移對象狀態(tài)名(圖1-3-8.1- 型轉(zhuǎn)移的動作描表1-3- 常用加速鍵一加速撤撤銷粘全檢置插入單刪除單分轉(zhuǎn)移處轉(zhuǎn)轉(zhuǎn)SWITCH處處處SWITCH無 函數(shù)實體可以從【文檔樹】中的各設(shè)計書中自動抽【步驟動【FNC設(shè)計書-函數(shù)抽出添加生成】框。圖1-3- “函數(shù)設(shè)計書”快捷菜設(shè)計書選擇】框圖1-3- 【FNC設(shè)計書/函數(shù)抽出添加生成】“CD,圖1-3- 【生成處FNC設(shè)計書選擇】5.顯示【文件做成確認(rèn)】框,單擊【OK】按鈕圖1-3- 【文件做成確認(rèn)】voidvoid圖1-3- 【FNC設(shè)計書-函數(shù)抽出添加生成】框7.顯示【函數(shù)抽出生成確認(rèn)】框,單擊【OK】按鈕圖1-3- 【函數(shù)抽出生成確認(rèn)】在【FNC設(shè)計書-函數(shù)抽出添加生成】框的【全部生成函數(shù)字符指定】→【返回添加到函數(shù)設(shè)計所有函數(shù)。要想給每個函數(shù)設(shè)定不同的“返回值”和“參數(shù)”的8.在【文檔樹】中,確認(rèn)“CD.fnc”已到【控制器】→【CD】→【設(shè)計書】項目中。圖1-3- “CD.fnc”設(shè)計書CD.fnc圖1-3- 函數(shù)設(shè)計書的生成例10.保存“CD.fnc至此,就完成了函數(shù)設(shè)計書的、編輯。ZIPC中具有進(jìn)行狀態(tài)轉(zhuǎn)移表的“文檔檢查”功能。文檔檢查是指執(zhí)行“轉(zhuǎn)移對象是否STM的調(diào)用格式是否選擇【項目】→【項目設(shè)定】→【文檔檢查設(shè)定】選項,啟動【文檔檢查設(shè)定】有關(guān)【文檔檢查設(shè)定】框的詳細(xì)介紹,可參考手冊“第13章檢查器。【步驟1.圖1-3- 文檔檢2.圖1-3- “文檔檢查”的結(jié)10圖1-3- “CD.stm”設(shè)計書的更4.5.圖1-3- 顯示【文檔檢查】錯..\CD.stm(2,1,0)errorE060001(雙擊出錯的地方也能夠?qū)崿F(xiàn)跳轉(zhuǎn)圖1-2- 【跳轉(zhuǎn)】菜圖1-2- 出錯地方的閃保存“CDZIPC。在仿真階段,由設(shè)定的設(shè)計書在內(nèi)部CC代碼進(jìn)行仿真調(diào)試。?可以設(shè)置斷點(diǎn)、參照變量值以及事件等14【步驟2.圖1-4- 進(jìn)入【仿真階段3.選擇【項目】→【代碼生成】選項,啟動【代碼生成執(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.在該快捷菜單中選擇【事件】選項,“電源按鈕”事件。圖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è)計書中,執(zhí)行仿真調(diào)試,事件,這樣設(shè)置斷點(diǎn)的單元格會閃爍6.在“CD.stm圖1-4- 斷點(diǎn)執(zhí)行時的狀態(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)試中,使用在文檔樹中的【控制器】→【CD→【仿真用代碼】項目中的文件,可以像一般的調(diào)試器那樣,進(jìn)行C代碼的調(diào)試1414【步驟1.2.圖1-4- 開始獲取日3.4.事件,進(jìn)行仿真調(diào)試5.6.選擇【調(diào)試】→【創(chuàng)建日志】→【結(jié)束】選項,啟動【日志保存確認(rèn)】框圖1-4- 日志生成結(jié)7.在該框中,選擇【OK】選項,啟動【保存日志文件】框圖1-4- 【日志保存確認(rèn)】“CD,圖1-4-4.8 【步驟1.選擇【工具】→【從日志中生成文檔】→【生成時序圖】選項,啟動【日志文件】圖1-4- 序列圖的生2.在該框中,將【文件名】設(shè)為“CD.log”,單擊【】按鈕,啟動【從日志文件圖1-4- 【日志文件】3.在該框中,進(jìn)行序列圖的設(shè)定。由于在這里是按照初始狀態(tài)生成的,因此,不做任圖1-4- 【從日志文件中生成序列圖】4.1圖1-4- 序列5.6.1”處于有效狀態(tài),選擇【顯示】→【網(wǎng)格大小】選項,啟動【值輸入】對圖1-4- 【網(wǎng)格大小】菜7.在該框中,更改【縱向網(wǎng)格值】的大小。網(wǎng)格數(shù)最好設(shè)為簡單易懂的數(shù)值圖1-4- 【值輸入】9.圖1-4- “序列圖1”的畫“CD,1”設(shè)計書。11.保存并關(guān)閉“CD.msc在生成的序列圖中,除了的事件信息之外,還生成C源代碼的變量設(shè)定部分。這是由于在【從日志文件中生成序列圖】框中,是按照初始狀態(tài)進(jìn)行生成的緣故。有關(guān)【從日志文件中生成序列圖】框的詳細(xì)介紹,可參考手冊“第16章ATV在序列圖中,由仿真建立的日志文件可以把握進(jìn)行了什么樣的測試,并且也是ATV(AutoTestVerification)中的測試/章ATV【步驟1.2.選擇【工具】→【跑完覆蓋率執(zhí)行】選項,啟動【跑完覆蓋率執(zhí)行】框圖1-4- 跑完覆蓋率的執(zhí)3.在該框中,選擇【覆蓋率用日志文件設(shè)定】選項卡4.在該選項卡中,選擇單擊【】按鈕,啟動【日志文件】框圖1-4- 【跑完覆蓋率執(zhí)行】框的【日志文件】5.在該框中,將【文件名】設(shè)為“CD.log,單擊【】按鈕,關(guān)閉【日志文圖1-4- 【日志文件】5中選擇的日志文件已添加到【日圖1-4- 【日志文件一覽】的確7.在【跑完覆蓋率執(zhí)行】框中,選擇【STM覆蓋率輸出】選項卡(View圖1-4- 【跑完覆蓋率執(zhí)行】框的【STM覆蓋率輸出】選項9.在“CD.stm10.另外,在“CD.stm”設(shè)計書中,檢查閃爍單元格中表示的值,確認(rèn)跑完的次數(shù)。跑圖1-4- 確認(rèn)“CD.stm”設(shè)計書的跑完11.在【跑完覆蓋率執(zhí)行】框的【STM覆蓋率輸出】選項卡中,選擇【STM跑完率輸出(%,啟動【STM跑完率輸出】框。圖1-4- 【STM跑完率輸出】12.在該框中,確認(rèn)跑完率C0C1C2”是狀13.確認(rèn)完跑完率后,在【STM跑完率輸出】框中,單擊【OK】按鈕,關(guān)閉【STM跑圖1-4- 【STM跑完率輸出】14.選擇【跑完覆蓋率執(zhí)行】框的【重播環(huán)境】選項卡,單擊【環(huán)境生成】按鈕圖1-4- 【跑完覆蓋率執(zhí)行】框的【重播環(huán)境】選項15.選擇【跑完覆蓋率執(zhí)行】框的【重播】選項卡,單擊操作區(qū)的【Play(連續(xù)執(zhí)PlayPlay圖1-4- 【跑完覆蓋率執(zhí)行】框的【重播】選項16.確認(rèn)“CD.stm”設(shè)計書的單元格像執(zhí)行仿真時那樣閃爍。日志結(jié)束的話,會顯17.關(guān)閉【跑完率執(zhí)行】框18.保存并關(guān)閉“CD在仿真階段,可以利用與VIP(VisualInterfacePrototy(利用VisualVIP的仿真介紹,可參考后述的“2VIP14在目標(biāo)階段中,生設(shè)計書向目標(biāo)實裝用的C代碼“第17章。下面生成“CDC源代碼,對已建立的狀態(tài)轉(zhuǎn)移表的事件不進(jìn)行詳細(xì)設(shè)計?!皊hort+10?!静襟E1.ZIPC,打開“CD2.在【文檔樹】中,選擇【控制器】→【CD】→【設(shè)計書】項目,點(diǎn)擊鼠標(biāo)右鍵,會彈出圖1-5- 變量設(shè)計書的建5.在【打開文件】框中,將【文件名】設(shè)為“CD,單擊【打開】按鈕,關(guān)閉【打開圖1-5- 【打開文件】6.在【文檔樹】中,確認(rèn)“CD.ram”設(shè)計書已到【控制器】→【CD】→【設(shè)計書】項另外,在“編輯窗口”中會自動打開“CD.ram圖1-5- “CD.ram”設(shè)計書7.在“編輯窗口”中,如下所示,編輯“CD.ram*short變量 8.保存并關(guān)閉“CD.ramdefine【步驟在【文檔樹】中,選擇【控制器】→【CD】→【設(shè)計書】項目,點(diǎn)擊鼠標(biāo)右鍵,會彈出圖1-5- 定義設(shè)計書的建3.在該框中,將【文件名】設(shè)為“CD,單擊【打開】按鈕,關(guān)閉【打開文件】圖1-5- 【打開文件】4.在【文檔樹】中,確認(rèn)“CD.def”設(shè)計書已到【控制器】→【CD】→【設(shè)計書】項另外,在“編輯窗口”中會自動打開“CD.def圖1-5- “CD.def”設(shè)計書5.在“編輯窗口”中,如下所示,編輯“CD.def**#define正 0x01/*電源0x02/*出入倉動作0x03/*0x04/*停止0x05/*快進(jìn)按鈕按下0x06/*快進(jìn)按鈕松開0x07/*后退按鈕按下0x08/*后退按鈕松開0x09/*暫停0x00/*清6.保存并關(guān)閉“CD.def計書”以及“定義設(shè)計書”4種。各設(shè)計書的詳細(xì)介紹可參考手冊“第1章文檔”以及手冊“第17章 :<@NONE>: :<@TGT>: :<@EMU>:2至此,就完成了所需的設(shè)計書的。在之前建立的“CDC代碼生成時,建立的設(shè)計書都是日文的,因此,在“代碼翻譯器”定義書中,定義將2字節(jié)字符的符號名置換為編譯器能夠識別的12下面就建立代碼翻譯器信息。在這里,建立“消息翻譯器定義書(MCG”和“符號翻譯器定義書(SCG”這兩種設(shè)計書。在消息翻譯器定義書中,將CD的事件置換全局變6【步驟在【文檔樹】中,選擇【控制器】→【CD】→【設(shè)計書】→【CD.stm】項目,點(diǎn)擊鼠標(biāo)(可以選擇任意一個設(shè)計書在該快捷菜單中,選擇【代碼翻譯器定義】→【模板生成】選項,啟動【代碼翻譯器定圖1-5- 【模板生成】菜3.在該框中,單擊【生成文件路徑】旁邊的【選擇】按鈕,指定文件路徑(將文件名CD圖1-5- 【代碼翻譯器定義書模板生成】4.1~3”生成符號翻譯器定義書。這一次在【代碼翻譯器定義書類別】圖1-5- 【代碼翻譯器定義書類別有關(guān)【代碼翻譯器定義書模板生成】框中各設(shè)定的詳細(xì)介紹,可參考手冊“12圖1-5- “CD.mcg”定義書和“CD.scg”定義書“CD.mcg)define值來進(jìn)行描述。代碼翻譯器定義書“CD.scg)只是列出符號名。因此,只是單純的將日文表示的26.在“編輯窗口”中,如下所示,編輯“CD.scg”定義書和“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)按鈕松開#CHG后退按鈕按下#CHG后退按鈕松開#CHG暫停按鈕7.保存并關(guān)閉“CD.scg”定義書和“CD.mcg在文檔樹中的【系統(tǒng)共通】項目中“代碼翻譯器定義書”的話,建立的代碼翻main1.選擇【項目】→【項目設(shè)定】→【代碼生成設(shè)定】選項,啟動【C代碼生成設(shè)定】圖1-5- 【C代碼生成設(shè)定】菜2.在該框中,選擇【生成處設(shè)定】選項卡“CD圖1-5- 【C代碼生成設(shè)定】“main,圖1-5- 【主函數(shù)名設(shè)定】5.在【生產(chǎn)處設(shè)定】選項卡中,確認(rèn)“CD”任務(wù)的【主函數(shù)名稱】已設(shè)為“main,單擊“確定”按鈕,關(guān)閉【 代碼生成設(shè)定】框圖1-5- 確認(rèn)設(shè)定】選項卡中,選擇【C生成時的名稱設(shè)定】選項,更改生成的文件名。更改【C代碼生成設(shè)定】框的話,更改后的內(nèi)容將適用于所有階段有關(guān)【C代碼生成設(shè)定】框的詳細(xì)介紹,可參考手冊“第17章”或者手冊“第17章2.V91.2.選擇【項目】→【代碼生成】菜單,啟動【代碼生成執(zhí)行確認(rèn)】框圖1-5- 【代碼生成】菜3.圖1-5- 【代碼生成執(zhí)行確認(rèn)】4.在【文檔樹】中,確認(rèn)生成的C代碼已到【控制器】→【CD】→【程序】→【生成圖1-5- 確認(rèn)生成的代ZIPC利用ZIPC行開發(fā)并不是那樣的。讀者可以參考本,自己試著建立其他的樣例相信一定會輕松完成的。 VIP仿一章當(dāng)中,讓上一章建立的CD器同用VisualBasic建立的外觀圖聯(lián)合進(jìn)行仿真。在上章建立的D器有以下事件“源按鈕出入倉按鈕“按“停。以使這些事件同用VisualBasic建的Window的按鈕相關(guān)聯(lián)并進(jìn)行。VisualBasicVisualBasic另外,本使用VisualBasic2008Express下面,將按鈕粘貼到表單上,建立 器【步驟1.啟動VisualBasic2008ExpressEdition(以后簡稱為VB2.選擇【文件】→【新建項目】選項,打開【新建項目】框3.在該框中,選擇【W(wǎng)indows樣式應(yīng)用】選項,單擊【OK】按鈕,新建一個項目圖2- 新建項4.選擇【項目】→【添加參照】選項,打開【添加參照】框圖2- 【添加參照】菜5.在該框中,選擇【COM】選項卡,確認(rèn)用VB建立的外觀圖和ZIPCVIP間進(jìn)行通信所需的“mActiveXControlmodule”已在列表中,單擊【OK】按鈕。列表中圖2- 【添加參照】框的【COM】選項6.列表中不存在組件文件的話,選擇【參照】選項卡,尋找組件文件。選擇“步驟5”所示路徑下的“ 圖2- 【添加參照】框的【參照】選項7.8.打開已安裝ZIPC 9.將“OCX”文件夾中的“ 圖2-1.9- 組組件被的話,顯示結(jié)果如下圖2-1.9- 組10.首先進(jìn)行表單的設(shè)定。選擇【Form1.vb?※?:CD※圖2- 表單的設(shè)11.如下圖所示,將“VIP通信組件( ? ※項目圖2- “VIP通信組件”項目的配置和屬性設(shè)12.? ? 圖2- “電源按鈕”項目的配置與屬性設(shè)13.12?????????“FF??“REW??圖2- “按鈕”項目的配置14.“PowerBtn“EjectBtn“PlayBtn本次樣例中,使用Comm1項目的SetVipEvent方式來作為進(jìn)行ZIPCVIP管理的端口值更新的一種。有關(guān)VIP通信組件中其他方式的詳細(xì)介紹,可參考手冊“第15章VIP15.選擇表單中的“PowerBtn按鈕”項目,單擊“屬性”窗口的【事件】圖標(biāo)(16.在事件一覽中雙擊【Click圖2- “PowerBtn”的“Click”事件的17.'PrivateSubPowerBtn_Click(ByValsenderAsByVal'PrivateSubPowerBtn_Click(ByValsenderAsByValeAsSystem.EventArgs)HandlesPowerBtn.Click'對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'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PowerBtn",EndPrivateSubEjectBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesEjectBtn.Click'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("EjectBtn",End'單 按鈕時的鉤子函PrivateSubPlayBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesPlayBtn.Click'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PlayBtn",EndPrivateSubPauseBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesPauseBtn.Click'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("PauseBtn",EndPrivateSubStopBtn_Click(ByValsenderAsByValeAsSystem.EventArgsHandlesStopBtn.Click'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("StopBtn",CByte(1))EndSub19.對于“FFBtn”和“RewBtnZIPCVIP管理的端口20.按照“步15、16”所進(jìn)行的操作,選擇“RewBtn按鈕”項目,在事件一覽中雙擊圖2- “RewBtn”的“MouseDown”事件21.'PrivateSubRewBtn_MouseDown(ByValsenderAsByVal'PrivateSubRewBtn_MouseDown(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseDown'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",CByte(1))EndSub'PrivateSubRewBtn_MouseUp(ByValsenderAsByVal'PrivateSubRewBtn_MouseUp(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseUp'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",CByte(0))EndSubPrivateSubRewBtn_MouseDown(ByValPrivateSubRewBtn_MouseDown(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseDown'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",EndPrivateSubRewBtn_MouseUp(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesRewBtn.MouseUp'對ZIPCVIP進(jìn)行值更新處理CallComm1.SetVipEvent("RewBtn",EndPrivateSubFFBtn_MouseDown(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesFFBtn.MouseDown'后退按鈕松開時的鉤子函數(shù)CallComm1.SetVipEvent("FFBtn",EndPrivateSubFFBtn_MouseUp(ByValsenderAsByValeAsSystem.Windows.Forms.MouseEventArgs)HandlesFFBtn.MouseUpCallComm1.SetVipEvent("FFBtn",CByte(0))EndSub22.23.?裝置 ?啟動方 圖2- 項目設(shè)24.選擇【文件】→【全體保存】選項,啟動【項目保存】框25.在【項目保存】框中,將【名字】設(shè)為“CD_Player,選擇【保存】選項保存圖2- 【項目保存】26.由之前建立的環(huán)境建立外觀圖用執(zhí)行文件。選擇【編譯】→【CDPlayer編譯】選項。圖2- 執(zhí)行文件的生27.圖2- 編譯結(jié)28.24、25VB。VB的外觀圖。ZIPCVIP【步驟1.啟動ZIPC,打開“CD器.zpf”項目2.3.選擇【項目】→【項目設(shè)定】→【VIP設(shè)定】選項,啟動【VIP設(shè)定】框圖2- VIP的環(huán)境設(shè)4.在該框中,選擇【通信環(huán)境】選項卡5.在【VIP設(shè)定】框的【通信環(huán)境】選項卡中,單擊【】按鈕,啟動【外觀圖執(zhí)圖2- 【VIP設(shè)定】框的【通信環(huán)境】選項“CD_Player.exe圖2- 【外觀圖執(zhí)行文件選擇】7.在【通信環(huán)境】選項卡中,確認(rèn)“CD_Player.exe”已到【完成執(zhí)行文件名】図2- 【VIP設(shè)定】框的【通信環(huán)境】選項8.在【VIP設(shè)定】框中,選擇【PIO設(shè)定】選項卡9.7圖2- 【VIP設(shè)定】框的【PIO設(shè)定】選項No.0“PowerBtn,“CD_Player.exe,圖2- 11.表2- 輸入屬性設(shè)定的內(nèi)容一01Byte11Byte21Byte31Byte41Byte51Byte61Byte12.在【VIP設(shè)定】框中,選擇【名稱事件設(shè)定】選項卡13.PIO圖2- 【VIP設(shè)定】框的【名稱事件設(shè)定】選項“No.0,“CD圖2- 15.表2- 事件信息設(shè)定的內(nèi)容一========16.在【VIP設(shè)定】框中,選擇【確定】按鈕,關(guān)閉【VIP設(shè)定】框圖2- 【VIP設(shè)定】VIP17.保存“CD器”項目

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論