嵌入式軟件設計-洗衣機程序需求分析與詳細設計知識講解_第1頁
嵌入式軟件設計-洗衣機程序需求分析與詳細設計知識講解_第2頁
嵌入式軟件設計-洗衣機程序需求分析與詳細設計知識講解_第3頁
嵌入式軟件設計-洗衣機程序需求分析與詳細設計知識講解_第4頁
嵌入式軟件設計-洗衣機程序需求分析與詳細設計知識講解_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、基于DARTS的洗衣機控制軟件設計1.洗衣機控制軟件需求分析與說明洗衣機是日常家用電器,它是人們?nèi)粘J褂妙l率較高的家用電器,有全自動、半自動等不同類型。根據(jù)題目中提出的需求概述,結(jié)合日常生活中人們的使用習慣,在這里給出其功能需求和相應的非功能需求以及相應的外部接口等的定義和描述。1)功能需求定義和描述(1)默認狀態(tài)下洗衣機處于關閉狀態(tài)。用戶按下電源開關后,洗衣機上電工作;當洗衣機處于工作狀態(tài)時,用戶按下電源開關后,無論洗衣機處于何種運行狀態(tài)均斷電、停止工作;(2)電源開關開啟后,洗衣機默認的程序功能是洗衣、漂洗、脫水,默認水位時中等水位,運行狀態(tài)是等待狀態(tài);(3)洗衣機有運行狀態(tài)和等待狀態(tài);當

2、用戶按下暫停啟動開關后,若洗衣機原來處于等待狀態(tài),則轉(zhuǎn)入運行狀態(tài),執(zhí)行等待狀態(tài)時的程序執(zhí)行狀態(tài);若洗衣機處于運行狀態(tài),則轉(zhuǎn)入等待狀態(tài),并保存程序的執(zhí)行狀態(tài);(4)當洗衣機處于運行狀態(tài)時,用戶的程序控制,即洗衣、漂洗、脫水按鍵和水位按鍵的輸入無效;只有當洗衣機處于等待狀態(tài)時其輸入才有效;(5)程序控制的洗衣、漂洗、脫水這三個鍵可以按下一個、兩個或者三個,洗衣機總是按洗衣-漂洗-脫水的順序執(zhí)行程序并且只執(zhí)行用戶選擇的程序;(6)水位按鍵每次只能選擇高、中、低三種水位的一個值;(7)洗衣機顯示面板顯示洗衣機的電源狀態(tài)、暫停啟動狀態(tài)、當前執(zhí)行的程序以及即將執(zhí)行的程序和水位狀態(tài),并且能根據(jù)用戶輸入以后及

3、時改變顯示信息。2)非功能需求定義和描述(1)洗衣機開關機的響應時間控制在500ms以內(nèi);(2)洗衣機在運行狀態(tài)和等待狀態(tài)之間的才換控制在800ms以內(nèi);(3)洗衣機功能和水位的輸入控制在600ms以內(nèi);(4)洗衣機顯示面板的響應控制在1200ms以內(nèi);(5)這里假設洗衣機洗衣用600s的時間,漂洗用300s的時間,脫水用100s的時間。3)外部接口描述外部接口描述如下所述:共有八個按鈕,分為四組,分別是電源、暫停/啟動、程序控制和水位。按鈕旁邊的指示燈顯示每個按鈕對應的狀態(tài):電源指示燈亮表示電源打開,暗則表示關閉;暫停/啟動按鈕亮表示正在運行,暗表示處于暫停狀態(tài);程序控制按鈕亮表示正在執(zhí)行或

4、者將要執(zhí)行,暗則表示不能執(zhí)行;水位按鈕亮表示當前處于某個水位。4)系統(tǒng)狀態(tài)變遷圖電源關閉程序水位控制2 .洗衣機控制軟件系統(tǒng)設計以及數(shù)據(jù)流分析根據(jù)以上所提出的需求,相應的數(shù)據(jù)流圖如下所示:說明:(1)洗衣機程序狀態(tài)信息是一組數(shù)據(jù),包含四個項:電源狀態(tài)、運行情況、程序狀態(tài)和水位信息,與輸入面板的相對應;(2)時鐘中斷的時間間隔是20ms,通過具有一定頻率的時鐘中斷來查看當前洗衣機程序執(zhí)行的執(zhí)行情況、按鍵輸入和面板輸出,以提高效率、降低復雜性。(3)洗衣機狀態(tài)、指令集是洗衣機在裝變?yōu)橄鄳獱顟B(tài)的時候所需要運行的指令等,這些設局存儲在快速讀寫存儲器之中,讀取這些數(shù)據(jù)的時間非???,在100ms的量級。3

5、 .洗衣機控制軟件任務劃分以及任務模塊設計1)洗衣機控制軟件任務劃分根據(jù)設計的數(shù)據(jù)流圖,洗衣機程序的任務劃分如下圖所示(在數(shù)據(jù)流圖中被劃入相同的任務的數(shù)據(jù)處理過程用相同顏色的虛線方框來表示):按下按鍵動作輸出信號響按鍵輸入按鍵無效發(fā)動機機處理電信號按鍵有效狀態(tài)變化觸發(fā)信息有效按鍵狀態(tài)信息觸發(fā)信息狀態(tài)信息狀態(tài)信息洗衣機狀態(tài)信息狀態(tài)信息改變顯示管觸發(fā)信息面板輸按鍵狀態(tài)轉(zhuǎn)換讀取按鍵輸入按鍵輸入處理按鍵有效性檢狀態(tài)判斷器解釋程序信息定時20個時鐘查看程序狀態(tài)定時10個時鐘定時15個時鐘洗衣機狀態(tài)、指令集進行以上任務劃分的理由:在DARTS設計方法中,劃分任務的原則包括以下幾種:I/O依賴性、功能的時間

6、關鍵性、計算需求、功能內(nèi)聚、時間內(nèi)聚和周期執(zhí)行,正是根據(jù)以上原則進行整體考慮得到以上的功能劃分。(1)按鍵輸入任務:功能內(nèi)聚原則;(2)中斷定時任務:周期執(zhí)行原則;(3)洗衣機狀態(tài)信息處理任務:計算需求和功能內(nèi)聚原則;(4)信號輸出任務:I/O依賴性原則。另外,為了提高效率,將數(shù)據(jù)流圖中的洗衣機狀態(tài)信息和洗衣機狀態(tài)指令集整合在一起作為洗衣機程序的信息存儲,以便各個任務的訪問能夠有一個統(tǒng)一的入口。2)洗衣機控制軟件任務接口3)任務模塊設計(1)按鍵輸入任務按鍵輸入任務的主要功能是在面板上的按鍵按下以后,得到正確的按鍵信息傳遞給狀態(tài)信息任務對按鍵信息進行處理。這里的正確信息是指每次只能有同一種類的

7、按鍵信息按下,比如不能同時按下暫停啟動鍵和洗衣程序任務鍵或者洗衣程序任務鍵和水位鍵等。而且需要將按鍵的電信號轉(zhuǎn)換成可以識別的程序信號傳遞下去。按鍵輸入任務的數(shù)據(jù)流圖如下所示:按鍵輸入的模塊結(jié)構(gòu)圖如下所示:(2)狀態(tài)信息處理任務狀態(tài)信息處理任務的主要功能是(1)每隔一段時間,把得到的按鍵輸入轉(zhuǎn)換成為相應的狀態(tài)信息,根據(jù)得到的按鍵輸入和當前的運行信息進行比較得到一個正確的運行信息寫入信息存儲器;(2)每隔一段時間,將運行信息傳遞給信號輸出單元執(zhí)行要運行的程序。狀態(tài)信息處理的數(shù)據(jù)流圖如下所示:狀態(tài)信息處理的模塊結(jié)構(gòu)如下所示:(3)中斷定時任務中斷定時任務的主要功能是為程序的執(zhí)行提供時間控制,狀態(tài)信息

8、處理和信號輸出均需要中斷定時任務的控制。中斷定時任務為每一個需要的任務設置定時器,如果定時器時間到達就發(fā)送觸發(fā)信息,并重置相應的中斷定時器。中斷定時任務的數(shù)據(jù)流圖如下:時鐘中斷觸發(fā)信息觸發(fā)信息定時器的任務模塊如下所示:獲取定時信息(4)信號輸出任務信號輸出任務主要是將程序的執(zhí)行狀態(tài)轉(zhuǎn)化為用戶可見的顯示和洗衣機的動作輸出。數(shù)據(jù)流圖如下所示:信號輸出任務模塊如下所示:4 .主要的功能流程設計通過以上的分析與設計,程序框架基本建立,大部分模塊的形成和設計如上面設計過程中的功能所示,這里對按鍵輸入任務中的按鍵提取、判斷和狀態(tài)信息處理任務中的狀態(tài)信息處理的算法實現(xiàn)進行描述。按鍵提取、判斷的流程:當?shù)玫捷斎腈I值以后,檢測按鍵的類型,如果類型大于1便認為是錯誤輸入;按鍵的類型等于1則認為是正確輸入,才能將其進行傳遞。狀態(tài)信息處理的流程:(1) 如果輸入的是電源開關按鍵值,直接傳遞給動作輸出信號任務改變電源狀態(tài),并將洗衣機狀態(tài)信息設為初始狀態(tài),因為電源狀態(tài)在洗衣機軟件中具有最重要的地位和最高優(yōu)先級;(2) 如果輸入的是暫停啟動按鍵值,應先判斷電源狀態(tài)是否為開,如果為開啟狀態(tài)就改變運行狀態(tài)為相對的狀態(tài),如果為關則將洗衣機狀態(tài)設置為初始狀態(tài),因為在電源為關閉的狀態(tài)下不應檢測到該按鍵值,這說明系統(tǒng)運行信息被非法修改;(3) 如果輸入的是運行程序值,同(2)一樣

溫馨提示

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

最新文檔

評論

0/150

提交評論