數(shù)字錄音機(jī)(數(shù)字錄音機(jī)設(shè)計(jì)具體專(zhuān)業(yè)技術(shù)方案),36創(chuàng)業(yè)加盟網(wǎng)給大家?guī)?lái)詳細(xì)的介紹,讓更多的人可以參考:數(shù)字錄音機(jī)(數(shù)字錄音機(jī)設(shè)計(jì)具體專(zhuān)業(yè)技術(shù)方案)。
數(shù)字錄音機(jī)設(shè)計(jì)方案: 一個(gè)使用統(tǒng)一建模語(yǔ)言(UML)設(shè)計(jì)嵌入式系統(tǒng)的實(shí)例 Ivan Porres Paltor,Johan Lilius 著,樂(lè)林峰 譯 摘要 本文內(nèi)容是采用統(tǒng)一建模語(yǔ)言(UML)對(duì)一個(gè)嵌入式系統(tǒng)進(jìn)行面向?qū)ο蠓治龊驮O(shè)計(jì)的 實(shí)例。 被分析的系統(tǒng)是一個(gè)數(shù)字錄音機(jī)或稱(chēng)口授留聲機(jī)。 設(shè)計(jì)實(shí)現(xiàn)采用一個(gè)嵌入式微處理器 和 C++編碼。 關(guān)鍵字:面向?qū)ο蟮脑O(shè)計(jì),UML,嵌入式系統(tǒng) 1 簡(jiǎn)介 統(tǒng)一建模語(yǔ)言Unified Modeling Language-UML[BJR1,BJR2]提供了一套標(biāo)準(zhǔn)的符號(hào)來(lái) 表示面向?qū)ο蟮能浖治龊驮O(shè)計(jì)方法[CY90,MO92,SS95]。使用 UML 圖表能夠?qū)軓?fù)雜的 系統(tǒng)建模,包括實(shí)時(shí)嵌入式系統(tǒng)。 然而,UML 并不是軟件開(kāi)發(fā)過(guò)程,也沒(méi)有嚴(yán)格區(qū)分軟件工程中各開(kāi)發(fā)階段。 UML 定義了一套由不同圖表組成的標(biāo)記符號(hào),但是并沒(méi)有描述怎樣創(chuàng)建和應(yīng)用這些圖 表。[Dou98] 介紹了使用 UML 和面向?qū)ο蟮姆治鲈O(shè)計(jì)技術(shù)建造實(shí)時(shí)嵌入式系統(tǒng)。本文由 Douglass 撰寫(xiě),描述了使用 UML 對(duì)一個(gè)數(shù)字錄音機(jī)(或口授留聲機(jī))系統(tǒng)進(jìn)行面向?qū)ο笤O(shè) 計(jì)和實(shí)現(xiàn)的過(guò)程。
目前市場(chǎng)上已經(jīng)有一些數(shù)字錄音機(jī)商業(yè)化產(chǎn)品。本文我們描述的模型參照了一家著名 廠商的類(lèi)似產(chǎn)品的設(shè)計(jì)。 相關(guān)需求說(shuō)明參見(jiàn)本文第二節(jié)。 第三節(jié)討論系統(tǒng)的對(duì)象模型給出主 類(lèi)圖。第四節(jié)繼續(xù)進(jìn)行面向?qū)ο蟮姆治?strong>數(shù)字錄音機(jī),但是主要討論每個(gè)對(duì)象內(nèi)部的行為。第五節(jié)進(jìn)行系 統(tǒng)結(jié)構(gòu)設(shè)計(jì)。包括數(shù)字錄音機(jī)的硬件結(jié)構(gòu),以及并行處理模型數(shù)字錄音機(jī),在該模型內(nèi),為每個(gè)對(duì)象將 分配一個(gè)可執(zhí)行的線(xiàn)程。 第六節(jié)將定義不同對(duì)象之間的合作關(guān)系。 并通過(guò)設(shè)計(jì)模式[GHJV95] 將分析階段定義的類(lèi)整合。詳細(xì)設(shè)計(jì)在第七節(jié)進(jìn)行討論。最后,第八節(jié)討論系統(tǒng)實(shí)現(xiàn)。我們 使用 C++進(jìn)行軟件的開(kāi)發(fā),硬件平臺(tái)采用一個(gè) 32 位 RISC精簡(jiǎn)指令集計(jì)算機(jī)嵌入處理器。 2 需求分析 數(shù)字錄音機(jī)是一個(gè)電子消費(fèi)產(chǎn)品, 用來(lái)錄制和回放語(yǔ)音。 通過(guò)內(nèi)置的麥克錄制語(yǔ)音信息, 然后將信息保存在數(shù)字內(nèi)存中。 使用者可以很方便的在任何時(shí)候回放任意錄制好的信息, 聲 音將通過(guò)設(shè)備前端的揚(yáng)聲器播放。該產(chǎn)品將具有體積小、重量輕、使用方便等特點(diǎn)。圖 2.1 是我們?cè)O(shè)計(jì)的數(shù)字錄音機(jī)的外觀示意圖。 它是一個(gè)手持系統(tǒng), 具有一塊平面顯示屏以及一些 按鈕。 圖 2.1 外觀示意圖 在設(shè)計(jì)中將要考慮到的系統(tǒng)特性如下: ? ? ? ? 最多存儲(chǔ) 10 條信息,每條信息的長(zhǎng)度將受系統(tǒng)剩余內(nèi)存的限制。
簡(jiǎn)單易用的屏幕菜單。 直接存取任意語(yǔ)音信息。 具有時(shí)鐘功能(不存在 2000 年問(wèn)題) ,用戶(hù)可以每天設(shè)置鬧鐘,鬧鐘鈴聲 60 秒鐘后自動(dòng)停止,用戶(hù)也可以按任意鍵停止鈴聲。 ? 全功能液晶顯示屏. 屏幕上總是顯示當(dāng)前日期和時(shí)間。同時(shí)顯示提示信息如 操作指南,當(dāng)前操作信息等。 ? ? 電池電量顯示,如果電量不足,系統(tǒng)會(huì)發(fā)出嗶嗶聲警告。 為了節(jié)省電池. 在不使用的情況下,系統(tǒng)將關(guān)閉外部設(shè)備的電源,用戶(hù)可以 通過(guò)按任意鍵使系統(tǒng)回復(fù)正常。 ? 提供好的聲音回放質(zhì)量。使用 6Khz 的 8 位采樣頻率。 2.1 外部事件 嵌入式系統(tǒng)經(jīng)常要跟外部環(huán)境交互。在目前的分析階段,我們把系統(tǒng)視為一個(gè)可以響 應(yīng)外部環(huán)境的請(qǐng)求和消息的黑盒子。 外部環(huán)境由一些參與者(Actor)組成。每個(gè)參與者與 我們的系統(tǒng)進(jìn)行不同目的的交互并交換一組不同的信息。 系統(tǒng)范圍圖/Context-Level Diagram 圖 2.2 顯示了所有與我們的系統(tǒng)進(jìn)行交互的參與者。圖中我們定義了 3 個(gè)參與者:用 戶(hù)User,電池Battery和時(shí)鐘(time) 。 圖中還顯示了接口和用于實(shí)現(xiàn)系統(tǒng)和參與者交換信 息的傳感裝置和執(zhí)行裝置。
這里指的信息可以是參與者向系統(tǒng)提出的請(qǐng)求, 也可以是系統(tǒng)作 出的響應(yīng)或提供給參與者的服務(wù)內(nèi)容。傳感裝置 Sensors 包括麥克和按鈕。執(zhí)行裝置 Actuators包括揚(yáng)聲器、電池電量顯示表。 每當(dāng)一個(gè)時(shí)間計(jì)時(shí)結(jié)束時(shí),參與者‘時(shí)鐘‘向系統(tǒng)發(fā)送一個(gè)內(nèi)容類(lèi)似于‘下一秒’或 者‘下一個(gè)小時(shí)’的消息。在實(shí)際實(shí)現(xiàn)中,我們將用一個(gè)硬件定時(shí)器來(lái)控制具體時(shí)間。 圖 2.2 系統(tǒng)范圍圖 事件/Events 事件是環(huán)境與系統(tǒng)之間傳遞的的重要消息。一個(gè)實(shí)時(shí)響應(yīng)系統(tǒng)必須在某個(gè)限定的時(shí)間 內(nèi)對(duì)外部事件作出響應(yīng)。下表中內(nèi)容顯示了針對(duì)我們的系統(tǒng)所有可能發(fā)生的外部事件。 事件的方向:’In’表示該事件由環(huán)境傳遞給系統(tǒng),‘Out’表相反。 事件發(fā)生模式A: 周期事件 Periodic:表示該事件的發(fā)生是遵循某個(gè)固定的時(shí)間周期的。 在表格中用 P 表示。 隨機(jī)事件: (Episodic) :表示該事件隨機(jī)發(fā)生。在表格中用 E 表示。 響應(yīng)時(shí)間: 表示系統(tǒng)對(duì)該事件作出響應(yīng)所需時(shí)間的上限, 如果在給出的時(shí)間內(nèi)系統(tǒng)沒(méi)有 完成響應(yīng),將會(huì)引起系統(tǒng)錯(cuò)誤。 No 1 事件 某一秒計(jì)時(shí)結(jié)束 系統(tǒng)響應(yīng) a,更新內(nèi)部時(shí)鐘 b,檢查鬧鐘設(shè)置 c,更新時(shí)鐘顯示 d,更新任務(wù)條 方向 In A P 響應(yīng)時(shí)間 0.5 秒 2 3 一個(gè)采樣周期結(jié)束 用戶(hù)按下某個(gè)按鈕 a,回放或記錄下個(gè)采樣 A,顯示任務(wù)條。
B,開(kāi)始錄音或回放一條記錄 In In P E 1/2 周期 0.5 秒 4 用戶(hù)按‘停止’按鈕 A,停止當(dāng)前任務(wù)。 B,更新屏幕內(nèi)容 In E 0.5 秒 5 6 7 電量不足告警 進(jìn)入等待模式 A,警告用戶(hù)并終止當(dāng)前任務(wù) A,關(guān)閉顯示器 In In In E E E 1秒 1秒 1秒 當(dāng)系統(tǒng)處于等待模式時(shí), A,離開(kāi)等待模式, 打開(kāi)顯示器以 用戶(hù)按任意鍵喚醒系統(tǒng) 及其它外設(shè)。 2.2 用例/Use Cases 用例是從使用者的角度描述系統(tǒng)的功能。使用者可能是一個(gè)人或者某個(gè)設(shè)備。每個(gè)用 例表示一種使用系統(tǒng)的方法, 每個(gè)用例完成后產(chǎn)生不同的結(jié)果。 在我們的系統(tǒng)中共有 6 個(gè)用 例。如圖
總結(jié):以上內(nèi)容就是數(shù)字錄音機(jī)(數(shù)字錄音機(jī)設(shè)計(jì)具體專(zhuān)業(yè)技術(shù)方案)詳細(xì)介紹,如果您對(duì)創(chuàng)業(yè)項(xiàng)目感興趣,可以咨詢(xún)客服或者文章下面留言,我們會(huì)第一時(shí)間給您項(xiàng)目的反饋信息。
我對(duì)加盟感興趣,馬上免費(fèi)通話(huà)或留言!
(24小時(shí)內(nèi)獲得企業(yè)的快速回復(fù))
我們立即與您溝通
溫馨提示:
1.此次通話(huà)將不會(huì)產(chǎn)生任何費(fèi)用, 請(qǐng)放心使用
7x24小時(shí)電話(huà)咨詢(xún)
130*1234567