• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 用UML建模開發嵌入式軟件[3]

    發表于:2009-11-09來源:作者:點擊數: 標簽:開發嵌入式umlUML軟件
    用UML建模 開發 嵌入式 軟件[3] UML模型 關鍵字:UML建模 嵌入式軟件 出于可移植性的考慮,所有類被分成3個層次: 最頂層是功能邏輯類的抽象,MachineStting為機器設置類;Keys為按鍵類,Displayr為顯示類,MotorController為電機控制器類。這些邏輯上的類與

    用UML建模開發嵌入式軟件[3]  UML模型

    關鍵字:UML建模 嵌入式軟件

      出于可移植性的考慮,所有類被分成3個層次:

      最頂層是功能邏輯類的抽象,MachineStting為機器設置類;Keys為按鍵類,Displayr為顯示類,MotorController為電機控制器類。這些邏輯上的類與硬件無關,便于以后硬件修改,同時使得開發繞線機的不同版本變得非常容易,如從平繞機到開發環行機,從二軸繞線機到開發三軸繞線機。

      中間層是外圍硬件類的抽象,Flash為Flash存儲類,用于存儲設置的參數;Speaker為揚聲器類;Panel為面板類;DCMoto/為直流電機類;StepMotor為步進電機類。

      最底層是單片機及其內部功能模塊類的抽象,H8/3062為單片機類,用于封裝輸入/輸出口;Timer_KeyShake為按鍵防抖定時器;Timer_DCMotor為直流電機PWM脈沖產生定時器;Timer_DCCapture為直流電機圈數捕獲定時器;Timer_StepMotor為步進電機PWM脈沖產生定時器。分這一層可以使得變換單片機類型非常容易,瑞薩H8/300H系列單片機在國內應用非常罕見,之所以選用這款是為了與國外產品的競爭,這樣可以更快、更好地打開國際銷路,但在選擇這款單片機的同時已經做好了移植到ARM內核單片機的準備。

      為了理解系統的動態行為,還應該用順序圖、協作圖、狀態圖和活動圖對系統動態行為進行描述。狀態圖對嵌入式系統的設計尤其重要,這里用其對MotorController的狀態轉換進行描述,如圖4所示。

      

      可以用時序圖等對用例進行進一步的分析,“啟動”按鍵按下后處理的時序圖如圖5所示。

      

      建模過程不是一個直線過程。它往往是一個演化、迭代的過程,不斷地分析、評價、修改、再分析,才可能得到一個高質量的模型,為高質量的軟件打下基礎。

      1.3 編碼過程

      Rose具有自動生成C++框架代碼的功能。在Rose菜單中選擇Tools→ANSI C++→Generate Code,可以生成C++的框架代碼。

     

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>