第一篇:嵌入式系統(tǒng)設(shè)計實習報告 安卓音樂播放器設(shè)計報告[模版]
機械與電子工程學院
嵌入式系統(tǒng)設(shè)計實習報告
題目:簡易音頻播放器設(shè)計
目錄
第一章 引言·····················································3 1.1課題研究目的·····················································3 1.2課題研究意義·····················································3 1.3課題可行性分析···················································3 1.3.1課題調(diào)研····················································3 1.3.2可行性分析··················································3 第二章 開發(fā)環(huán)境安裝和配置··································4 2.1開發(fā)包及其工具介紹···············································4 2.2Android開發(fā)平臺搭建步驟··········································4 第三章 程序邏輯架構(gòu)··········································5 3.1程序工程結(jié)構(gòu)圖···················································5 3.2工程各文件簡介···················································5 3.2.1程序源文件夾src簡介·········································5 3.2.2程序外部資源文件夾res簡介···································6 3.2.3其他文件簡介················································7 第四章 程序設(shè)計················································8 4.1主界面musicActivity設(shè)計···········································8 4.1.1onCreat函數(shù)··················································8 4.1.2關(guān)鍵代碼講解················································8 4.2音樂播放服務(wù)LocalService設(shè)計·····································10 4.2.1onCreat函數(shù)·················································10 4.2.2關(guān)鍵代碼講解···············································10 4.3數(shù)據(jù)庫Helper類MusicListdbHelper設(shè)計······························11 4.3.1構(gòu)造函數(shù)MusicListdbHelper···································11 4.3.2關(guān)鍵代碼講解···············································11 第五章 程序測試···············································13 第六章 分工與總結(jié)············································14
第一章 引言
1.1 課題研究的目的
1.熟悉一下eclipse工具和安卓的環(huán)境配置及開發(fā)的過程;
2.熟練掌握java的組件如button,textview,listView,menu等組件的靈活應(yīng)用; 3.熟練掌握安卓的一個關(guān)于數(shù)據(jù)保存的方式SQLite3; 4.鍛煉一下自己遇到問題,然后解決問題的能力。
1.2 課題研究的意義
隨著3G技術(shù)的成熟和智能手機的不斷普及,移動應(yīng)用的需求與日俱增,移動應(yīng)用開發(fā)成為當下最熱門的技術(shù)之一。在google和android手機聯(lián)盟的共同推動下,android在眾多移動應(yīng)用開發(fā)平臺中脫穎而出。
Android操作系統(tǒng)是google最具殺傷力的武器之一。蘋果以其天才的創(chuàng)新,使得iphone在全球迅速擁有了數(shù)百萬忠實的“粉絲”,而android作為第一個完整、開放、免費的手機平臺,使開發(fā)者在為其開發(fā)程序時擁有更大的自由。與windows mobile,symbian等廠商不同的是,android操作系統(tǒng)是免費向開發(fā)人員提供,這樣可節(jié)省近三層得成本。
我們知道,無論是產(chǎn)品還是技術(shù),商業(yè)應(yīng)用都是它最大的發(fā)展動力。android如此受到廠商與開發(fā)者的青睞,它的前景一片光明。國內(nèi)對于安卓這方面的市場還沒有完全開發(fā)出來。
只要我們努力學習android,對理想、對生活都會有很大的補益。
因此,開發(fā)這樣一套很簡單的音樂播放器軟件對我們來講是一件很有必要的事情,在下面的各章中我們將以開發(fā)安卓音樂播放器軟件為例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方法。
本文中所做的主要工作如下:
? 開發(fā)環(huán)境及開發(fā)工具的安裝及配置;
? 闡述整個音樂播放器的系統(tǒng)結(jié)構(gòu)及工作原理; ? 設(shè)計實現(xiàn)“主界面activity設(shè)計”,“播放器Service設(shè)計”,“數(shù)據(jù)庫設(shè)計”這三個主要的功能模塊;
? 分析并解決實現(xiàn)中的若干技術(shù)問題,像組件的選擇以及保存方式的選擇; ? 進行測試并分析結(jié)果。
1.3 課題的可行性分析
1.3.1 課題調(diào)研
(1)與實踐活動和相關(guān)的文件和資料由作者本人網(wǎng)絡(luò)查找,以及老師幫助;(2)具有遇到問題,具有獨立思考,耐心鉆研,向老師虛心求教的良好態(tài)度;(3)關(guān)于技術(shù)方面的難題,跟指導老師面談。1.3.2 可行性分析
1)技術(shù)可行性-----本項目僅需要一臺裝有eclipse及配置好android開發(fā)環(huán)境的計算機即可,對計算機本身有一定的要求,它可以使用windows xp及其以上版本,mac os,linux等操作系統(tǒng);
2)經(jīng)濟可行性-----由于本軟件開發(fā)只需要一臺電腦就行,基本不需要太大的成本。在經(jīng)濟上完全可行;
3)操作可行性-----界面設(shè)計時充分考慮用戶的習慣以及手機方面的局限性,程序必須要很簡單;本程序只涉及到開發(fā)環(huán)境配置,安卓組件的熟悉,以及安卓平臺上的數(shù)據(jù)存儲,并沒有太大的難度,所以,該項目完全有可操作性。第二章 開發(fā)環(huán)境的安裝和配置
2.1 開發(fā)包及其工具的介紹
Android以java作為開發(fā)語言,jdk是進行java開發(fā)時必需的開發(fā)包.eclipse是一款非常優(yōu)秀的開源IDE,在大量插件的“配合”下,完全可以滿足從企業(yè)級java應(yīng)用到手機終端java游戲的開發(fā).Google官方也提供了基于Eclipse的android開發(fā)插件ADT,所以本軟件開發(fā)選擇Eclipse作為開發(fā)IDE.2.2 Android開發(fā)平臺搭建步驟
首先到http://www.tmdps.cn/downloads/下載Eclipse集成開發(fā)環(huán)境并且解壓,這里推薦下載Java EE 集成版本,可以為平臺的搭建省下不少工作。接著再去http://java.sun.com/javase/downloads/index.jsp 站點下載SDK后安裝,下載http://dl.google.com/android/android-sdk-windows-1.5_r1.zip,Android SDK1.5后解壓。第一步下載工序就結(jié)束了。
②雙擊Eclipse解壓后目錄中的eclipse.exe然后啟動,選擇Eclipse菜單中的Help-> Install New Software-> 選項卡上的Available Software,點擊右側(cè)的“Add”輸入http://dl-ssl.google.com/android/eclipse/后確定,然后在“Work with”下拉菜單中選擇剛才輸入的網(wǎng)址。過一會就會出現(xiàn)一個Developer Tools選項,勾上以后點擊Next以后Eclipse會自動網(wǎng)上查找Android 開發(fā)工具插件,然后找到Android DDMS和Android Development Tools,選中這兩個點擊Finish,Eclipse就會自動下載并安裝Android插件了,最后會提示重啟Eclipse。
③重啟后選擇Eclipse菜單中的Windows-> Preferences 在左側(cè)的Android項目中SDK Location中填入Android SDK解壓后的目錄,然后點擊Apply。
④在Windows的系統(tǒng)變量中的path變量中添加一個值,該值指向解壓后的Android SDK目錄下的tools文件夾。
第三章 程序邏輯架構(gòu)
3.1 程序工程結(jié)構(gòu)圖
下放兩圖即為程序的整個工程的結(jié)構(gòu)圖,左方為工程的整體結(jié)構(gòu)圖,右方為res文件中的各類用到的資源文件視圖。
3.2 工程各文件簡介
3.2.1 程序源文件夾src簡介
源文件夾src下包含兩個包com.terry與com.lyric,分別用于程序主要功能的實現(xiàn)和提供歌詞同步顯示的控件。
先分析歌詞包com.lyric。其中com.lyric.LyricView.java設(shè)計了一個歌詞顯示的View控件LyricView,提供給主程序并作為一個控件顯示出來;com.lyric.SongLyric.java設(shè)計了歌詞類用以從sd卡中尋找到響應(yīng)歌詞文件并進行初始化操作。
主程序類包com.terry中,musicActivity和SdCardList均為Activity,前者為播放器的主界面進行各種播放控制操作,后者用來從SD卡中選擇MP3文件添加到播放列表中;LocalService是音樂播放的Service,用于進行音樂播放并在通知欄中顯示消息;MusicListdbHelper為自定義的數(shù)據(jù)庫Helper類,將歌曲的名字和路徑存入數(shù)據(jù)庫,提供對歌 曲數(shù)據(jù)庫的增加和刪除的操作;另外兩個均為輔助類,一個用于從文件夾中選擇后綴名為mp3的文件(MusicFilter.java),另一個用于整合控件(viewHolder.java),代碼如下:
MusicFilter.java
viewHolder.java
3.2.2 程序外部資源文件夾res簡介
外部資源文件夾主要為程序提供各種外部資源,如圖片等,這里主要介紹一下我們用到的布局文件夾Layout中的各種xml文件。
layout_gridview.xml、layout_listview.xml、layout_lyricview.xml 這三個xml文件被主界面調(diào)用viewGroup整合在主界面中,即程序中出現(xiàn)的左右滑動效果,其中g(shù)ridview顯示了歌曲的專輯圖片,listview顯示了歌曲播放列表,lyricview顯示了同步歌詞。
main.xml、main1.xml 主程序的主界面資源文件,同上述三個xml一樣,整合在viewGroup中由musicActivity設(shè)定為當前界面。其中main決定了各view的布局,main1則是程序下方的進度條及簡單控制按鈕。
musicitme.xml、sdcard.xml 均被用于SdCardList這個Activity的布局,sdcard提供了SDCardList的主界面,musicitme提供了SDCardList中ListView的樣式。progressbar.xml 由LocalService調(diào)用,通知信息欄的布局文件。3.2.3 其他文件簡介
引入的外部JAR: android-support-v4.jar 為程序了viewGroup以實現(xiàn)左右滑動展示不同的View的效果。AndroidManifest.xml 應(yīng)用的配置文件,描述應(yīng)用程序的名稱、權(quán)限、能力和運行方式等。
gen文件夾
這是必需的,為應(yīng)用程序自動生成的資源文件夾,它所包含的應(yīng)用程序資源管理源文件R文件定義了該項目所有資源的索引,不能被編輯。
Android 2.1–update1 這是Android 2.1的系統(tǒng)類庫,在編譯該項目時用到的環(huán)境。我們可以通過相應(yīng)的配置來選擇所需的系統(tǒng)類庫。
assets文件夾
主要用于放置多媒體等數(shù)據(jù)文件。
default.properties 這是自動創(chuàng)建的工程文件,定義了應(yīng)用程序的target和其所需的選項。
第四章 程序設(shè)計
4.1 主界面musicActivity設(shè)計
4.1.1 養(yǎng)成良好習慣,先看看onCreat函數(shù)
如下圖所示即為作為程序入口的musicActivity的onCreat函數(shù)。大致的流程是調(diào)用父類onCreat函數(shù),隱藏標題欄,設(shè)置布局,尋找布局控件,初始化應(yīng)用,刷新歌詞文件,刷新播放列表,綁定監(jiān)聽器,開啟標志位檢測線程,設(shè)定空歌詞,啟動服務(wù)。
4.1.2 關(guān)鍵代碼講解
設(shè)置布局函數(shù)setView()中,先初始化ListView、GridView還有歌詞布局lyricview的內(nèi)容,完畢后再將其添加到viewPager中從而可以進行滑動切換顯示。
初始化程序initApp()如果程序是第一次啟動(沒有數(shù)據(jù)庫文件),那么就自動初始化一次歌曲播放列表,默認路徑為SD卡根目錄,將歌曲文件信息添加到數(shù)據(jù)庫并且添加到播放列表中。如果有數(shù)據(jù)庫文件則不進行操作。
初始化程序完成之后就需要開啟刷新歌詞的線程了,refreshLyric()開啟了刷新的線程使用已經(jīng)定義好的handler hand發(fā)送刷新信息并進行相應(yīng)的響應(yīng)。
下一步就是列表的刷新顯示,當前的播放列表中雖然存儲有歌曲信息卻沒有將它顯示 出來,所以我們需要刷新并顯示一次播放列表,refreshlist()即可做到這一點,并且在每次對播放列表進行操作后都需要調(diào)用一次它。
4.2 音樂播放服務(wù)LocalService設(shè)計
4.2.1 仍然先看一下onCreat函數(shù)
播放服務(wù)的流程就比較簡單,實例化MediaPlayer對象,從musicActivity中得到音樂列表,開啟刷新通知欄和musicActivity中progressbar的線程,設(shè)置并顯示通知欄信息。4.2.2 關(guān)鍵代碼講解
啟動流程中的函數(shù)幾乎沒有什么需要講解的,音樂播放器的Service中的關(guān)鍵代碼當然是播放音樂和對切換歌曲的處理。
進度條更新函數(shù)progressbar()這個函數(shù)啟動了一個更新進度條的線程,同時更新了musicActivity中和通知欄中的進度條。
播放音樂的函數(shù)playMusic(String path)函數(shù)中的參數(shù)為歌曲的路徑(包含歌曲的文件名和后綴),返回類型為空,它的作用就是播放該路徑的歌曲并且有一個播放完畢的監(jiān)聽器。所有的歌曲控制指令都寫在musicActivity中,Service本身并不負責對歌曲列表的操作,所以,如果播放完畢,則給musicActivity一個切換歌曲的指令。
切換歌曲后需要調(diào)用的函數(shù)changeSong()切換歌曲以后需要重新設(shè)定一下progressbar還有正在播放的文件名,專輯圖片,歌詞信息等。這個函數(shù)在musicActivity中被大量調(diào)用從而實現(xiàn)對音樂播放的安全控制。
4.3 數(shù)據(jù)庫Helper類MusicListdbHelper設(shè)計
4.3.1 構(gòu)造函數(shù)MusicListdbHelper(Context _context)MusicListdbHelper是一個類,類對象的實例化都需要構(gòu)造函數(shù),數(shù)據(jù)庫的Helper類的構(gòu)造很簡單,就是建立或者打開一個自己定義的數(shù)據(jù)庫
4.3.2 關(guān)鍵代碼講解
需要被應(yīng)用開始時調(diào)用的函數(shù)FirstStart()以判斷應(yīng)用是否需要初始化,返回類型為boolean FirstStart()中建立了一個游標查詢數(shù)據(jù)庫中的名為“colaconfig”的表,該表也僅作為初始化查詢而特別建立,如果該表不存在,則說明數(shù)據(jù)庫中不存在歌曲信息表,則創(chuàng)建該表和歌曲信息表“musicitem”,如果該表存在,則返回false并不進行任何操作。其他函數(shù)及其作用:
CreateTable_musicitem()創(chuàng)建歌曲信息表 CreateTable_colaconfig()創(chuàng)建配置表
Musicitem_insitem(String name,String path)添加歌曲到歌曲信息表,返回類型為boolean Musicitem_delitem(String name)從歌曲信息表中刪除名為name的條目
getMusicItem()得到歌曲信息表的游標用以查詢表中歌曲信息,返回值為Cursor
第五章 程序的測試
1.第一次運行程序的主界面
2.點擊“choice”后的歌曲選擇界面 3.選定的歌曲在主界面中顯示播放進度,也可拖動進度條播放
5.使用返回鍵退出程序后Service仍在后臺運行(歌曲仍在后臺播放)
第六章 分工與總結(jié)
6.1 人員分工
張潤浩:musicActivity、SdCardList的編寫以及數(shù)據(jù)庫的建立,同時負責軟件后期的調(diào)試和修改;
劉博:主要負責Service的編寫,包括通知欄和主Activity中控件的同步,同時負責報告的書寫;
6.2 課程總結(jié)
通信軟件設(shè)計設(shè)計是一門緊跟時代步伐的課程,順應(yīng)了當下移動互聯(lián)網(wǎng)的發(fā)展浪潮,通過這門課程使我們大學生將課堂所學的知識逐步轉(zhuǎn)化為社會所需要的才能,令我們獲益匪淺。這次的作品在短短兩周內(nèi),雖然并非一切順利,但也算磕磕絆絆地完成了。途中遇到過難以解決的問題,雖然厭煩但還是逼著自己搞定了。說幾個具體的吧,通過這次的課程設(shè)計,主要得到了這么幾個經(jīng)驗。首先,在開發(fā)之前,如果是比較生疏的領(lǐng)域最好將資料準備完備,否則在做擴展的時候?qū)蠡谀埃黄浯危视肋h是第一位的,如果想睡了的話就不要勉強自己繼續(xù)工作;最后,詢問別人并自己進行思考永遠是最快捷的成長途徑。總而言之,通過這次的軟件開發(fā),通過這門課程,我們培養(yǎng)了自己獨立思考和獨立作業(yè)的能力,更加能夠自信地面對即將踏入的社會。
第二篇:網(wǎng)頁首頁設(shè)計與安卓音樂播放器制作實習報告
軟件學院實習報告
2012學年第七學期
學
院: 軟件學院
實習單位: 北京傳習新天教育有限公司
專
業(yè): 計算機科學與技術(shù)
班
級: 10204102
姓
名:
實習單位指導老師:李老師、歐陽老師 實習時間:2013年7月5號--2013年7月27號
1.實習情況概況:
本次暑假生產(chǎn)實習是由北京傳習教育負責教授我們有關(guān)專業(yè)技能方面的知識。其中歐陽老師負責安卓編程的教學,李老師負責網(wǎng)頁前沿的教學。
在安卓編程中歐陽老師首先教我們復習和熟悉一些java的知識,如方法的重載,它表示在一個類中 方法名相同 參數(shù)類型/參數(shù)個數(shù)不同。抽象類,它包含抽象方法,抽象方法表示就是只有方法的聲明 沒有方法的實現(xiàn)。java中并不是所有的類都可以實例化。抽象類就不能實例化,因為里面可能含有抽象方法。所以抽象類必須依靠子類進行實例化,子類在繼承抽象類的時候,必須把抽象類中的抽象方法都必須重寫。因此,抽象類就好比是一個模板。接口,面向接口編程;接口是一個特殊的抽象類。接口里面全是抽象方法和全局常量,不能包含普通方法。接口不能實例化,必須依靠子類對其進行實例化,子類實現(xiàn)一個接口的時候 必須把接口中所有的方法都實現(xiàn)。在java中 是依靠接口來實現(xiàn)多繼承的繼承。異常與捕捉異常(try,catch),它能對程序出現(xiàn)的一些異常進行捕獲。String類的應(yīng)用及文件的讀取等等。這為我們在以后編寫音樂播放器起到了很大作用。在接下來中,歐陽老師為我們講了android開發(fā)環(huán)境的配置,android界面布局一些常用的控件及其屬性;將音樂文件讀取到列表中與音樂文件的播放;如何設(shè)置上一首、下一首及播放按鈕的變化;設(shè)置播放進度條以及當前播放時間與歌曲總時間;歌詞的顯示與界面的布局等等。
在網(wǎng)頁前沿中李老師首先教我們?nèi)绾问褂肍lash CS3 Pro制作flash小動畫。他主要講解了Flash CS3 Pro中工具欄中各種工具的使用及屬性,幀與幀之間的關(guān)系,如什么叫幀,關(guān)鍵幀是什么,插入幀與插入空白關(guān)鍵幀區(qū)別,插入關(guān)鍵幀的作用,幀之間的補間使用,什么時候該插入什么補間等;圖層的之間的關(guān)系及應(yīng)用,圖層的遮罩技術(shù),利用圖層遮罩做一些特殊的例子,引導層的應(yīng)用;元件的應(yīng)用,如何將材料轉(zhuǎn)化為元件,其中圖形元件,按鈕元件,影片剪輯元件的使用方法;Flash CS3 Pro中一些程序代碼的功能及其使用。接著老師講解了Dreamweaver CS3的應(yīng)用,首先老師為我們復習了html中各種標簽的使用;網(wǎng)頁板塊間的布局,如使用表格布局與div標簽布局的優(yōu)缺點;使用div進行一列布局幾多列布局等;縱向?qū)Ш讲藛渭岸墢棾霾藛蔚膶嵗籨iv的浮動技術(shù)與標簽的絕對定位,相對定位等;最后教了我們一些網(wǎng)站的設(shè)計思想。2.實習筆記摘錄:
(1):Android課程上課筆記摘取:歌詞的加載 第一步應(yīng)設(shè)置一個方法用來獲取歌曲的總時間:
public static int stringtime(String time){//獲取時間
int min=Integer.parseInt(time.substring(0, time.indexOf(“:”)));int sec=Integer.parseInt(time.substring(time.indexOf(“:”)+1, time.indexOf(“.”)));
} int misec=Integer.parseInt(time.substring(time.indexOf(“.”)+1));return min*60*1000+sec*1000+misec*10;第二步設(shè)置一個方法用來加載歌詞: //歌詞加載
public boolean loadlrc(String path){
BufferedReader in=null;try {
in=new BufferedReader(new FileReader(path));//讀取文件 String str=in.readLine();while(str!=null){
} return true;if((str.indexOf(']')>=0)&&Character.isDigit(str.charAt(1))){
} str=in.readLine();//System.out.println(str);String time =str.substring(1, str.indexOf(“]”));//System.out.println(time);int longtime=stringtime(time);//獲得時間 //System.out.println(longtime);String geci=str.substring(str.indexOf(“]”)+1);//截取歌詞 //System.out.println(geci);lrctimelist.add(longtime);lrclist.add(geci);
} } catch(FileNotFoundException e){ e.printStackTrace();} catch(IOException e){ } return false;e.printStackTrace();第三步在main中設(shè)置一個TextView控件用來顯示歌詞,先判斷是否有歌詞,如果有并在Runnable r=new Runnable()方法中實現(xiàn)歌詞在對應(yīng)的時間顯示。(2):網(wǎng)頁設(shè)計課程上課筆記摘取:橫向圖文列表技術(shù) 首先設(shè)置全局樣式:
body { margin:0 auto;font-size:12px;font-family:Verdana;} ul,dl,dt,dd,h1,h2,h3,h4,h5,h6,form { padding:0;margin:0;} ul { list-style:none;} img { border:0px;} a { text-decoration: none;color: #000000;} 在body中插入一個div標簽級ul標簽與其他標簽:
第三篇:嵌入式系統(tǒng)設(shè)計報告
嵌入式系統(tǒng)設(shè)計實驗報告
班 級:學 號:姓 名:成 績:指導教師:
20090612 2009112107 侯金鐘 武俊鵬、劉書勇 1.實驗一
1.1 實驗名稱
嵌入式系統(tǒng)硬件開發(fā)環(huán)境
1.2 實驗?zāi)康?/p>
1.熟悉UP-net3000實驗平臺。
2.超級終端設(shè)置及BIOS 功能使用。
1.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
1.4 實驗內(nèi)容及要求
熟悉UP-net3000實驗平臺的硬件電路和外設(shè),ARM JTAG的安裝和使用,利用超級終端檢驗外設(shè)的工作狀態(tài)。
1.5 實驗設(shè)計與實驗步驟
1.建立工程
(1)運行ARM SDT 2.5 集成開發(fā)環(huán)境(ARM Project Manager).(2)在新建的工程中,如圖1A-2 所示,選中工程樹的“根部”。
(3)因為開發(fā)板上的嵌入式處理器ARM7TDMI 沒有浮點處理器,所以,如圖1A-3 所
示,在彈出的對話框中設(shè)置Floating Point Processor 為none,并保持其他的設(shè)置不變。(4)選中工程樹的“根部”,通過菜單Project | Tool Configuration for work1.apj | asmlink | Set,對整個工程的連接方式進行設(shè)置。(5)在彈出的對話框中,選中Entry and Base 標簽,如圖1A-4 所示,設(shè)置連接的Read-Only(只讀)和Read-Write(讀寫)地址。
(6)選擇Linker Configuration 的ImageLayout 標簽,(7)選擇Project | Edit Project Tamplete 菜單,彈出Project Template Editor 對話框。
(8)選擇Project | Edit Variables for work1.apj,彈出Edit Variables for work1.apj 對話框。
2.進行程序的在線仿真、調(diào)試
1.6 實驗過程與分析
熟悉UP-net3000實驗平臺的硬件電路和外設(shè),安裝了ARM JTAG,利用超級終端檢驗了外設(shè)的工作狀態(tài)。
1.7 實驗結(jié)果總結(jié)
軟件安裝成功,結(jié)果顯示正常。
1.8 心得體會
通過此次試驗,我對ARM的環(huán)境的功能有一定的了解與完善。對試驗臺有了基本的認識與使用。
2.實驗二
2.1 實驗名稱
嵌入式系統(tǒng)軟件開發(fā)環(huán)境
2.2 實驗?zāi)康?/p>
1.熟悉ADS1.2 開發(fā)環(huán)境,學會ARM 仿真器的使用。
2.使用ADS 編譯、下載、調(diào)試并跟蹤一段已有的程序,了解嵌入式開發(fā)的基本思想和過程。
2.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
2.4 實驗內(nèi)容及要求
本次實驗使用ADS 集成開發(fā)環(huán)境。新建一個簡單的工程文件,并編譯這個工程文件。學習ARM 仿真器的使用和開發(fā)環(huán)境的設(shè)置。下載已經(jīng)編譯好的文件到嵌入式控制器中運行。學會在程序中設(shè)置斷點,觀察系統(tǒng)內(nèi)存和變量。
2.5 實驗設(shè)計與實驗步驟
(1)運行ADS1.2 集成開發(fā)環(huán)境(CodeWarrior for ARM Developer Suite)。
(2)在新建的工程中,選擇Debug 版本,使用Edit | Debug Settings菜單對Debug 版本進行參數(shù)設(shè)置。(3)在Debug Settings 對話框中選擇Target Settings 項。在Post-linker一欄中選擇ARM from ELF。
(4)在Debug Settings 對話框中選擇ARM Linker 項
(5)在第四步中如果選擇簡單的地址連接設(shè)置,在Debug Settings 對話框中選擇ARM Linker 項
(6)回到的工程窗口中,選擇Release 版本,使用Edit | Release Settings 菜單對Release 版本進行參數(shù)設(shè)置。(7)參照第(3)、(4)、(5)、(6)步在Release Settings 對話框中設(shè)置Release版本的Post-linker、連接地址范圍、入口模塊和輸出文件。(8)回到如圖1B-3 所示的工程窗口中,選擇Targets 選項卡,如圖1B-11 所示。選中DebugRel 版本,按Del 鍵將其刪除。DebugRel 子樹是一個折衷版本,通常用不到,所以在這里刪除。
2.6 實驗過程與分析
1)回到工程窗口選中Debug 版本,執(zhí)行菜單Project | Make 對工程進行編譯連接。(2)在ADS 中執(zhí)行菜單Project | Debug 啟動ADS1.2 的調(diào)試工具AXD。(3)在AXD 中執(zhí)行菜單Options | Configure Target 對AXD 進行設(shè)置。(4)點Select 按鈕選擇遠程連接為ARM ethernet driver,點Configure 按鈕輸入仿真器的IP 地址。
(5)等待程序裝載完畢以后,通過Execute | Go 菜單以及Execute | Stop(或者工具欄中的相應(yīng)按鈕)運行或暫停程序。程序暫停后在窗口中將顯示出程序暫停的位置。(6)通過Execute | Step 菜單(或者工具欄中的相應(yīng)按鈕)可以單步運行程序。
(7)程序停止后可以通過Processor Views | Sources 菜單查看源文件,并可在適當位置按F9 設(shè)置端點。
(8)使用在Processor View 菜單下的Registers、Variables 和Memory 命令可以查看工作寄存器或者內(nèi)存變量。讀者可以逐一地嘗試,為以后調(diào)試程序打下基礎(chǔ)。
2.7 實驗結(jié)果總結(jié)
超級終端輸出“Hello World!”。
2.8 心得體會
基本了解了ADS1.2的配置條件,學會了ARM仿真器的使用方法。
3.實驗三
3.1 實驗名稱
鍵盤及LED實驗
3.2 實驗?zāi)康?/p>
1.學習鍵盤及LED 驅(qū)動原理。
2.掌握ZLG7289芯片串行接口的使用方法,用ZLG7289芯片驅(qū)動17鍵的鍵盤和8個共陰極LED。
3.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
3.4 實驗內(nèi)容及要求
通過ZLG7289芯片驅(qū)動17鍵的鍵盤和8個共陰極LED,將按鍵值在LED上顯示出來。要求從右至左循環(huán)顯示至少四位數(shù)字。
基本功能實現(xiàn)之后可考慮實現(xiàn)從左至右顯示四位及四位以上數(shù)字(最大八位),并可設(shè)置清零鍵等擴展功能。
3.5 實驗設(shè)計與實驗步驟
利用所給的基礎(chǔ)代碼進行調(diào)試,觀察輸出結(jié)果,結(jié)合指導書和教材掌握基本原理和源代碼的編寫方式。根據(jù)實驗的要求設(shè)計函數(shù)流程,并反復調(diào)試,實現(xiàn)功能。1.新建工程,將“Exp3 鍵盤及LED 驅(qū)動實驗”中的文件添加到工程。2.定義ZLG7289 寄存器(ZLG7289.h)
#define ZLG7289_CS(0x20)//GPB5 #define ZLG7289_KEY(0x10)//GPG4 #define ZLG7289_ENABLE()do{ZLG7289SIOBand=rSBRDR;ZLG7289SIOCtrl=rSIOCON;rSIOCON=0x31;rSBRDR=0xff;rPDATB&=(~ZLG7289_CS);}while(0)#define ZLG7289_DISABLE()do{rPDATB|=ZLG7289_CS;rSBRDR=ZLG7289SIOBand;rSIOCON=ZLG7289SIOCtrl;}while(0)3.編寫ZLG7289 驅(qū)動函數(shù)(ZLG7289.c)4.定義鍵盤映射表:(Keyboard16.c)
unsigned char KeyBoard_Map[]= {4,8,11,0,0,0,0,0,5,9,12,15,1,0,0,0,6,10,13,16,2,3,0,0,7,0,14,0,0,0,0,0,0 ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//64 鍵值映射表,通過查找鍵盤映射表來確定鍵盤掃描碼對應(yīng)的按鍵值。
5.定義鍵值讀取函數(shù)。(Keyboard16.c)6.編寫主函數(shù),將按鍵值在數(shù)碼管上顯示。
3.6 實驗過程與分析
利用鍵盤驅(qū)動函數(shù)實現(xiàn)基本數(shù)字輸入,然后利用循環(huán)左移函數(shù)實現(xiàn)輸入數(shù)字做一樣功能,并通過改變函數(shù)中相應(yīng)delay的值來消除鍵盤按鍵帶來的抖動。
3.7 實驗結(jié)果總結(jié)
按鍵值可以在LED上顯示出來。要求從右至左循環(huán)顯示八位數(shù)字,同時可以復位清零。達到實驗的效果。
3.8 心得體會
通過本次實驗,我了解了LED的顯示屏幕的數(shù)字的移位功能,這個功能不止可以用一個方法實現(xiàn),而循環(huán)左移是其中比較巧妙且省力的一種,在遇到類似情況的時候,可以優(yōu)先考慮能不能利用到文件中已經(jīng)存在的函數(shù),這樣可以不必自己編寫函數(shù),省時省力。是一種可靠的方法。4.實驗四
4.1 實驗名稱
電機轉(zhuǎn)動控制及中斷實驗
4.2 實驗?zāi)康?/p>
1.熟悉ARM本身自帶的六路即三對PWM,掌握相應(yīng)寄存器的配置。
2.編程實現(xiàn)ARM系統(tǒng)的PWM輸出和I/O輸出,前者用于控制直流電機,后者用于控制步進電機。
3.了解直流電機和步進電機的工作原理,學會用軟件的方法實現(xiàn)步進電機的脈沖分配,即用軟件的方法代替硬件的脈沖分配器。
4.了解44B0處理器上中斷的應(yīng)用。5.學習在44B0處理器上中斷的應(yīng)用。
6.進一步熟悉平臺外圍硬件及其驅(qū)動程序的編寫。
4.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
4.4 實驗內(nèi)容及要求
1.學習步進電機和直流電機的工作原理,了解實現(xiàn)兩個電機轉(zhuǎn)動對于系統(tǒng)的軟件和硬件要求。學習ARM 知識,掌握 PWM 的生成方法,同時也要掌握 I/O的控制方法。
2.編程實現(xiàn)ARM芯片的一對PWM輸出用于控制直流電機的轉(zhuǎn)動,通過A/D旋鈕控制其轉(zhuǎn)動方式。
3.編程實現(xiàn)ARM的四路I/O通道,實現(xiàn)環(huán)形脈沖分配用于控制步進電機的轉(zhuǎn)動,通過A/D旋鈕控制步進電機的轉(zhuǎn)角。
4.通過鍵盤控制直流電機與步進電機的切換。5.設(shè)置并啟動定時器。
6.設(shè)置中斷,編寫定時器中斷服務(wù)程序,對中斷次數(shù)進行計數(shù)并在LED上顯示結(jié)果。
4.5 實驗設(shè)計與實驗步驟
1.添加并打開工程。
2.進行直流電機初始化設(shè)置和代碼編寫。3.進行步進電機初始化設(shè)置和代碼編寫。
4.對Timer3編程,編寫定時器中斷服務(wù)程序,完成對中斷次數(shù)的計數(shù)。5.編寫LED計數(shù)顯示函數(shù),使LED能正確計數(shù)并顯示0-9999。6.編寫中斷初始化函數(shù)和中斷響應(yīng)函數(shù)。7.終端下載測試。
4.6 實驗過程與分析 1.對直流電機進行編程和測試,掌握轉(zhuǎn)速和旋轉(zhuǎn)方向的設(shè)定方法。
2.對步進電機進行編程和測試,掌握ARM的四路I/O通道,實現(xiàn)環(huán)形脈沖分配用于控制步進電機的轉(zhuǎn)動,通過A/D旋鈕控制步進電機的轉(zhuǎn)角。
3.對主函數(shù)進行編程,用鍵盤響應(yīng)直流電機與步進電機的切換控制。
4.掌握中斷相關(guān)語句的應(yīng)用,弄清定義的中斷向量、中斷向量號,編寫中斷響應(yīng)函數(shù),并完成中斷響應(yīng)控制。
4.7 實驗結(jié)果總結(jié)
實現(xiàn)了直流電機與步進電機的基本設(shè)置和控制,可以通過鍵盤控制電機之間的切換。完成了中斷的響應(yīng)和定時中斷。當對其中一個旋鈕轉(zhuǎn)動時,就可以由直流電機轉(zhuǎn)換成步進電機的轉(zhuǎn)換,達到實驗的效果。
4.8 心得體會
通過本次實驗,我了解了直流電機和步進電機的工作原理,同時也知曉了電機間的轉(zhuǎn)換過程,了解其中的道理內(nèi)涵,熟悉了ARM自帶的A/D轉(zhuǎn)換器的工作原理及編程方法,了解了中斷的意義和實現(xiàn)方法,實現(xiàn)了簡單了中斷處理程序。同時我也收獲了很多關(guān)于ARM處理機的相關(guān)知識。
5.實驗五
5.1 實驗名稱
觸摸屏驅(qū)動實驗
5.2 實驗?zāi)康?/p>
1.了解觸摸屏的基本概念與原理。
2.理解觸摸屏與LCD的關(guān)系。3.編程實現(xiàn)對觸摸屏的控制。
4.熟悉用 ARM 內(nèi)置的 LCD控制器驅(qū)動 LCD。
5.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
5.4 實驗內(nèi)容及要求
1.了解觸摸屏基本原理,理解對觸摸屏進行輸出標定、與LCD顯示器配合的過程。2.通過編程實現(xiàn)觸摸兩點自動在兩點間劃直線。3.通過編程實現(xiàn)在觸摸屏上動態(tài)畫出曲線。5.5 實驗設(shè)計與實驗步驟
1.添加并打開工程。
2.在頭文件中定義宏和常量及驅(qū)動函數(shù)。
#define ADS7843_CTRL_START 0x80 #define ADS7843_GET_X 0x50 #define ADS7843_GET_Y 0x10 #define ADS7843_CTRL_12MODE 0x0 #define ADS7843_CTRL_8MODE 0x8 #define ADS7843_CTRL_SER 0x4 #define ADS7843_CTRL_DFR 0x0 #define ADS7843_CTRL_DISPWD 0x3 // Disable power down #define ADS7843_CTRL_ENPWD 0x0 // enable power down #define ADS7843_PIN_CS(1<<6)//GPF6 #define ADS7843_PIN_PEN(1<<5)//GPG5 /////////觸摸屏動作//////// #define TCHSCR_ACTION_NULL 0 #define TCHSCR_ACTION_CLICK 1 //觸摸屏單擊 #define TCHSCR_ACTION_DBCLICK 2 //觸摸屏雙擊 #define TCHSCR_ACTION_DOWN 3 //觸摸屏按下 #define TCHSCR_ACTION_UP 4 //觸摸屏抬起 #define TCHSCR_ACTION_MOVE 5 //觸摸屏移動
#define TCHSCR_IsPenNotDown()(rPDATG&ADS7843_PIN_PEN)(ADS7843_CTRL_START|ADS7843_GET_X|ADS7843_CTRL_12MODE |ADS7843_CTRL_DFR|ADS7843_CTRL_ENPWD)//采樣x 軸電壓值,數(shù)據(jù)為12 位,參考電壓輸入模式為差分模式,允許省電模式
#defineADS7843_CMD_Y(ADS7843_CTRL_START|ADS7843_GET_Y|ADS7843_CTRL_12MODE |ADS7843_CTRL_DFR|ADS7843_CTRL_ENPWD)int TchScr_Xmax=1840,TchScr_Xmin=176, TchScr_Ymax=195,TchScr_Ymin=1910;//觸摸屏返回電壓值范圍 #defineADS7843_CMD_X 3.校準觸摸屏坐標,進行坐標轉(zhuǎn)換。
4.實現(xiàn)觸屏取點并顯示功能。
將觸摸動作及觸摸點坐標在超級終端上顯示出來。5.實現(xiàn)兩點間自動劃線功能。6.實現(xiàn)觸摸屏動態(tài)劃線功能。
可以使用TchScr_GetScrXY()函數(shù)(第三個參數(shù)為0)來獲得液晶屏的x、y 方向的電壓
范圍,分別點觸摸屏有效面積的左上角和右下角,得到下列參數(shù):
TchScr_Xmax=1840;TchScr_Xmin=176;TchScr_Ymax=195;TchScr_Ymin=1910;//此數(shù)值僅供參考,請以實際校對為準
5.6 實驗過程與分析 1.在定義觸屏響應(yīng)功能的函數(shù)中對點擊觸屏進行響應(yīng)函數(shù)的修改,在其中添加修改點顏色的函數(shù),修改得到的觸摸點的顏色,并顯示在LCD上。
2.獲取第一個點坐標并儲存,獲取第二個點坐標并儲存,由編寫的劃線函數(shù)取得儲存的兩點間直線上所有點的坐標,并對其改變顏色,顯示在LCD上,即完成劃直線功能。
3.將劃線函數(shù)應(yīng)用到響應(yīng)觸屏移動消息的函數(shù)下,即可對連續(xù)獲得的觸摸坐標進行連續(xù)的畫短直線,連接成曲線,完成動態(tài)劃線功能。
5.7 實驗結(jié)果總結(jié)
了解了觸摸屏響應(yīng)動作消息的函數(shù)的工作原理,通過修改實現(xiàn)了觸摸屏響應(yīng)不同動作進行畫點、劃線、動態(tài)劃線的功能。驗證觸摸屏的靈敏度的實驗。
5.8 心得體會
通過這次實驗,我基本掌握了通過編程驅(qū)動觸摸屏以及觸摸屏響應(yīng)時間,實現(xiàn)了觸摸屏對不同動作消息的響應(yīng)。同時也知曉了在觸摸屏上的描點畫線的實現(xiàn),但是由于不知名的原因,描點畫線的誤差較大,位置偏差較大,同時觸摸屏有時會不靈敏,出現(xiàn)時好時壞的現(xiàn)象,但是由于我們的辛勤鉆研,最終克服了這個困難,實現(xiàn)了最后的觸摸屏的實現(xiàn)。
6.實驗六
6.1 實驗名稱
UCOS-Ⅱ在ARM微處理器上的裁剪
6.2 實驗?zāi)康?/p>
1.了解UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu)。
2.掌握UCOS-Ⅱ裁剪的基本原理與嵌入式編程實現(xiàn)方法。3.學習如何根據(jù)具體情況對UCOS-Ⅱ操作系統(tǒng)進行裁剪。
4.通過對UCOS-Ⅱ配置文件(OS_CFG.H)中相關(guān)的配置常量進行設(shè)置,實現(xiàn)對UCOS-Ⅱ的裁剪。
6.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
6.4 實驗內(nèi)容及要求
對UCOS-Ⅱ內(nèi)核進行裁剪并移植到ARM7微處理器上。
6.5 實驗設(shè)計與實驗步驟 1.按照要求,載入STARTUP目錄下文件,完成系統(tǒng)初始化、環(huán)境配置。2.載入UCOS-Ⅱ的全部源碼,與處理器架構(gòu)相關(guān)的文件位于arch目錄下。3.在os_cpu.h中編寫與處理器和編譯器相關(guān)的代碼。
4.編寫os_cpu_c.c等6個與操作系統(tǒng)相關(guān)的函數(shù)。5.編寫os_cpu.asm等4個與處理器相關(guān)的函數(shù)。
6.6 實驗過程與分析
按照實驗步驟進行,得到了需要的系統(tǒng)。
6.7 實驗結(jié)果總結(jié)
按照要求進行了裁剪,得到了滿足需要又緊湊的應(yīng)用軟件系統(tǒng)。
6.8 心得體會
通過本次實驗,我了解了UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu),掌握UCOS-Ⅱ裁剪的基本原理與嵌入式編程實現(xiàn)方法,學會了如何根據(jù)具體情況對UCOS-Ⅱ操作系統(tǒng)進行裁剪。
7.實驗七
7.1 實驗名稱
UCOS-Ⅱ在ARM微處理器上的移植和編譯
7.2 實驗?zāi)康?/p>
1.了解UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu)。
2.掌握將UCOS-Ⅱ內(nèi)核移植到ARM7處理器上的基本方法。
7.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
7.4 實驗內(nèi)容及要求
1.將UCOS-Ⅱ內(nèi)核進行移植到ARM7微處理器上。
2.編寫兩個簡單任務(wù),在超級終端上觀察兩個任務(wù)的切換。
7.5 實驗設(shè)計與實驗步驟
1.該實驗的文件分為兩類,其一是 STARTUP 目錄下的系統(tǒng)初始化、配置等文件,其二是 UCOS-Ⅱ的全部源碼,arch 目錄下的 3 個文件是和處理器架構(gòu)相關(guān)的。
2.設(shè)置 os_cpu.h 中與處理器和編譯器相關(guān)的代碼。
3.用 C 語言編寫 6 個操作系統(tǒng)相關(guān)的函數(shù)(OS_CPU_C.C)。4.用匯編語言編寫 4 個與處理器相關(guān)的函數(shù)(OS_CPU.ASM)。5.編寫一個簡單的多任務(wù)程序來測試一下移植是否成功。6.編譯并下載移植后的 UCOS-Ⅱ。
7.6 實驗過程與分析
1.按照實驗步驟進行,將μC/OS-II 內(nèi)核移植到了ARM7 微處理器上。2編寫了兩個簡單任務(wù),在超級終端上觀察兩個任務(wù)的切換。
7.7 實驗結(jié)果總結(jié)
將μC/OS-II 內(nèi)核順利移植到了ARM7 微處理器上。
7.8 心得體會
通過本次實驗,使我更加了解了μC/OS-II 內(nèi)核的主要結(jié)構(gòu),掌握了ARM的C語言和匯編語言的編程方法,了解了ARM7處理器結(jié)構(gòu),掌握了將μC/OS-II 內(nèi)核移植到ARM 7 處理器上的基本原理與嵌入式編程實現(xiàn)方法。
8.實驗八
8.1 實驗名稱
綜合實驗
8.2 實驗?zāi)康?/p>
對前七次實驗進行總結(jié),應(yīng)用之前所學的知識,將前幾次實驗內(nèi)容結(jié)合起來,完成鍵盤,LED,觸摸屏,直流電機,步進電機各種功能的組合。實現(xiàn)一個較為全面的功能結(jié)構(gòu)。
8.3 實驗環(huán)境
硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機Pentium100 以 上、串口線。
軟件:PC 機操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。
8.4 實驗內(nèi)容及要求
對前七次實驗進行總結(jié),應(yīng)用之前所學的知識,完成自擬的嵌入式系統(tǒng),要求綜合前期基礎(chǔ)實驗的各種功能。
8.5 實驗設(shè)計與實驗步驟
1.添加并打開工程。2.進行LCD設(shè)計,在LCD顯示屏輸出文本。
3.進行LED及鍵盤設(shè)計,完成LED輸出顯示功能和鍵盤輸入功能。4.進行電機控制設(shè)計,完成鍵盤控制電機轉(zhuǎn)動功能。5.進行中斷設(shè)計,完成定時中斷功能。
6.進行觸摸屏設(shè)計,完成觸摸屏感應(yīng)和劃線功能。7.進行裁剪和移植功能設(shè)計和完成。
8.6 實驗過程與分析
1.完成LCD顯示功能,在LCD顯示屏上輸出文本:“Hello World!”。2.進入界面觸屏控制選擇功能,實現(xiàn)觸屏選擇功能。
3.自定義四種種功能,第一為電機控制,從鍵盤讀取命令,并將功能編號顯示在LED上,LED顯示的是計數(shù)的數(shù)據(jù),同時旋轉(zhuǎn)按鈕完成電機轉(zhuǎn)速的控制選擇。
4.第三種功能為劃線,功能編號顯示在LED高四位上,同時LCD屏幕清屏,為劃線功能做準備,可以實現(xiàn)劃線功能。
5.第四種功能為定時中斷,當由鍵盤控制時,LED顯示數(shù)值清零,實現(xiàn)了中斷。6.實現(xiàn)裁剪與移植功能。
8.7 實驗結(jié)果總結(jié)
完成了各種基本功能,并通過自擬的系統(tǒng)將各種功能整合起來,完成了一個小的嵌入式系統(tǒng),對前七次的功能有了更深入的了解。通過LED的計數(shù),當在計數(shù)值在前30秒之內(nèi),由鍵盤控制LED的數(shù)值及顯示,按鍵盤上的某一個按鍵,實現(xiàn)對LED上的數(shù)值清零,后30秒由觸摸屏控制清零,并且在前30秒之內(nèi),旋轉(zhuǎn)按鈕,實現(xiàn)對直流電機的運轉(zhuǎn),并且到步進電機的轉(zhuǎn)換。
8.8 心得體會
通過這次實驗,我更加深刻地掌握了前幾次實驗中的基本功能的實現(xiàn)方法,并且把幾種功能聯(lián)合在一起,實現(xiàn)一些功能,把LED 顯示屏,LCD觸摸屏,鍵盤,直流電機,步進電機等等設(shè)備聯(lián)合在一起,對該實驗有一定的幫助與提高,而我和我的隊友也對嵌入式系統(tǒng)有了更深入的了解,在此期間,也學習了關(guān)于ARM處理器的開發(fā)與實踐,了解了關(guān)于手機的嵌入式設(shè)備的產(chǎn)生過程,我也深深的對此充滿了興趣,對未來的嵌入式課程設(shè)計奠定了深厚的基礎(chǔ),可是令我遺憾的是,我和隊員的水平所限,沒有完成中斷優(yōu)先級的控制。本來想完成更多的功能,可是最后由于時間緊迫,也有一些其他的事情來分神分心,所以就只能完成這些,但是在未來的幾周內(nèi),嵌入式課程設(shè)計也給了我們很大的空間去做未完成的事情。我相信我們會做的更加完美,功能更強大,用于未來的生活中去實踐。
第四篇:安卓音樂播放器個人總結(jié)格式 (sya)
軟件工程數(shù)據(jù)庫課程設(shè)計——總結(jié)
目錄
1項目總結(jié)...........................................................................................................................................1 2成員1(姓名)總結(jié)........................................................................................................................2 2.1個人評價................................................................................................................................2 2.2個人總結(jié)................................................................................................................................2
I
軟件工程數(shù)據(jù)庫課程設(shè)計——總結(jié)
1項目總結(jié)
1)通過對Android手機平臺的音樂播放器軟件的開發(fā),使我對Android音樂播放器系統(tǒng)的整體設(shè)計有一個深入的了解,對整個流程也會有一個清晰的認識。開發(fā)Android音樂播放器,要抓住開發(fā)的核心部分,音樂播放器大體由播放主界面、播放列表、菜單、播放設(shè)置、文件瀏覽、歌曲搜索六大核心組成,只要掌握了這六部分的開發(fā),音樂播放器就能初具規(guī)模。而其它的功能都是在這六個功能的基礎(chǔ)上去補充添加的,但是這是功能的確是必不可少的功能,否則就不能算是音樂播放器了。
(2)音樂播放器系統(tǒng)實現(xiàn)了播放器的基本功能:播放,暫停、停止、上/下一首、音量調(diào)節(jié)、歌詞顯示、播放模式、歌曲搜索、文件瀏覽器、播放列表查詢等功能。運用的系統(tǒng)平臺是現(xiàn)今最熱門的Android系統(tǒng),是一個開源的基于Linux系統(tǒng)的手機平臺。是以Java語言編寫+SQLite數(shù)據(jù)庫支持+SharePreference配置文件的組合方式進行數(shù)據(jù)管理。實現(xiàn)了音樂播放器的系統(tǒng)編程。
(3)本次程序設(shè)計,對播放器的系統(tǒng)結(jié)構(gòu)框架做了精心的構(gòu)思與設(shè)計,采用主要開發(fā)工具是Eclipse3.5+Java語言的支持,Android Development Tool的插件,和Android SDK2.1版本的全面結(jié)合,才使整個音樂播放器系統(tǒng)得以實現(xiàn)。
(4)總之,經(jīng)過幾個月的Android系統(tǒng)技術(shù)知識的學習和對音樂播放器的構(gòu)思與設(shè)計,使我對Android系統(tǒng)有了一定的了解,讓我對Android系統(tǒng)上的開發(fā)流程和開發(fā)模式有了深入的了解,這對我以后的Android項目開發(fā)有很大的幫助。
第1頁
軟件工程數(shù)據(jù)庫課程設(shè)計——總結(jié)
2成員杜曉陽總結(jié)
2.1個人評價
這次程序設(shè)計我在整個項目中負責整體設(shè)計,詳細設(shè)計,具體測試。整個項目有我個人負責,不論多困難,我也要自己完成。不斷學習,不斷前進。
2.2個人總結(jié)
本文主要是對Android平臺音樂播放器的分析設(shè)計,主要實現(xiàn)了音樂的播放、暫停、上一曲、下一曲、音樂列表、聲音控制、退出菜單、播放模式等功能。在本文中第一章簡要的介紹了選題依據(jù)背景、研究現(xiàn)狀等;第二章中講述了Android的開發(fā)基礎(chǔ);第三章進行了詳盡的系統(tǒng)需求分析;第四章進行詳細設(shè)計以及編碼實現(xiàn)工作;最后的第五章進行了軟件的測試工作,完善軟件。本設(shè)計的音樂播放器軟件能夠穩(wěn)定運行,體積小且反映靈敏,但還是有幾點不足的地方,例如最近播放列表無法排序、代碼編寫冗余重復率高、圖片素材布局不太美觀等等。在以后我會改進軟件的不足,以更優(yōu)的編碼水平,更高超的布局思維模型,并且學習更多新的知識重構(gòu)這款軟件。這款播放器軟件還是比較好的,適用于低端智能手機市場,有良好的用戶體驗和反應(yīng)速度。相信隨著智能手機在發(fā)展中國家的普及,它們市場上會擁有龐大的用戶群。
第2頁
第五篇:安卓音樂播放器個人總結(jié)格式 (sya)
軟件工程數(shù)據(jù)庫課程設(shè)計——總結(jié)
目錄
1項目總結(jié)...........................1
2成員1(姓名)總結(jié)......................2
2.1個人評價..............................2
2.2個人總結(jié)..............................2I
1項目總結(jié)
1)通過對Android手機平臺的音樂播放器軟件的開發(fā),使我對Android音樂播放器系統(tǒng)的整體設(shè)計有一個深入的了解,對整個流程也會有一個清晰的認識。開發(fā)Android音樂播放器,要抓住開發(fā)的核心部分,音樂播放器大體由播放主界面、播放列表、菜單、播放設(shè)置、文件瀏覽、歌曲搜索六大核心組成,只要掌握了這六部分的開發(fā),音樂播放器就能初具規(guī)模。而其它的功能都是在這六個功能的基礎(chǔ)上去補充添加的,但是這是功能的確是必不可少的功能,否則就不能算是音樂播放器了。
(2)音樂播放器系統(tǒng)實現(xiàn)了播放器的基本功能:播放,暫停、停止、上/下一首、音量調(diào)節(jié)、歌詞顯示、播放模式、歌曲搜索、文件瀏覽器、播放列表查詢等功能。運用的系統(tǒng)平臺是現(xiàn)今最熱門的Android系統(tǒng),是一個開源的基于Linux系統(tǒng)的手機平臺。是以Java語言編寫+SQLite數(shù)據(jù)庫支持+SharePreference配置文件的組合方式進行數(shù)據(jù)管理。實現(xiàn)了音樂播放器的系統(tǒng)編程。
(3)本次程序設(shè)計,對播放器的系統(tǒng)結(jié)構(gòu)框架做了精心的構(gòu)思與設(shè)計,采用主要開發(fā)工具是Eclipse3.5+Java語言的支持,Android Development Tool的插件,和Android SDK2.1版本的全面結(jié)合,才使整個音樂播放器系統(tǒng)得以實現(xiàn)。
(4)總之,經(jīng)過幾個月的Android系統(tǒng)技術(shù)知識的學習和對音樂播放器的構(gòu)思與設(shè)計,使我對Android系統(tǒng)有了一定的了解,讓我對Android系統(tǒng)上的開發(fā)流程和開發(fā)模式有了深入的了解,這對我以后的Android項目開發(fā)有很大的幫助。
2成員杜曉陽總結(jié)
2.1個人評價
這次程序設(shè)計我在整個項目中負責整體設(shè)計,詳細設(shè)計,具體測試。整個項目有我個人負責,不論多困難,我也要自己完成。不斷學習,不斷前進。
2.2個人總結(jié)
本文主要是對Android平臺音樂播放器的分析設(shè)計,主要實現(xiàn)了音樂的播放、暫停、上一曲、下一曲、音樂列表、聲音控制、退出菜單、播放模式等功能。在本文中第一章簡要的介紹了選題依據(jù)背景、研究現(xiàn)狀等;第二章中講述了Android的開發(fā)基礎(chǔ);第三章進行了詳盡的系統(tǒng)需求分析;第四章進行詳細設(shè)計以及編碼實現(xiàn)工作;最后的第五章進行了軟件的測試工作,完善軟件。本設(shè)計的音樂播放器軟件能夠穩(wěn)定運行,體積小且反映靈敏,但還是有幾點不足的地方,例如最近播放列表無法排序、代碼編寫冗余重復率高、圖片素材布局不太美觀等等。在以后我會改進軟件的不足,以更優(yōu)的編碼水平,更高超的布局思維模型,并且學習更多新的知識重構(gòu)這款軟件。這款播放器軟件還是比較好的,適用于低端智能手機市場,有良好的用戶體驗和反應(yīng)速度。相信隨著智能手機在發(fā)展中國家的普及,它們市場上會擁有龐大的用戶群。
![下載嵌入式系統(tǒng)設(shè)計實習報告 安卓音樂播放器設(shè)計報告[模版]word格式文檔](http://static.xiexiebang.com/skin/default/images/icon_word.png)

文檔為doc格式
聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔相關(guān)法律責任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。
安卓實習報告
通信與電子信息專業(yè)實訓報告項目名稱:基于android的游戲開發(fā)班 級 10通信1班姓 名學 號指導教師 成 績實訓時間:年月日—目錄 一、實訓目的及其意義 .............................
嵌入式系統(tǒng)實習報告
一、嵌入式系統(tǒng)開發(fā)與應(yīng)用概述在今日,嵌入式ARM 技術(shù)已經(jīng)成為了一門比較熱門的學科,無論是在電子類的什么領(lǐng)域,你都可以看到嵌入式ARM 的影子。如果你還停留在單片機級別的學習......
安卓記事本實習報告
Android記事本的設(shè)計與實現(xiàn) Android記事本的設(shè)計與實現(xiàn) ——SQLite數(shù)據(jù)庫的設(shè)計和操作 學生姓名:指導老師: 摘 要: 隨著智能手機的快速普及,智能手機操作系統(tǒng)市場風生水起。A......
音樂播放器項目報告
華東交通大學課程項目 學 院:軟件學院 ______ 課程名稱: Android應(yīng)用開發(fā)___________ 項目名稱: ___ _音樂播放器________ 學生名字: ____ ________ 學生班級: ____ ______ 授課......
音樂播放器報告(大全5篇)
一、綜述本課題國內(nèi)外研究動態(tài),說明選題的依據(jù)和意義 1.1課題的背景和意義 隨著科技的進步,手機的功能也不斷的得到豐富,從最早的“大哥大”到現(xiàn)在的商務(wù)PDA手機,智能手機,音樂......
《嵌入式系統(tǒng)設(shè)計》教學大綱
《嵌入式系統(tǒng)設(shè)計》課程教學大綱 嵌入式系統(tǒng)設(shè)計 (Design of Embedded Systems ) 一、課程教學目的和基本要求 教學目的: 嵌入式系統(tǒng)技術(shù)已被廣泛地應(yīng)用于工業(yè)控制系統(tǒng)、信息......
《嵌入式系統(tǒng)設(shè)計》教案
嵌入式系統(tǒng)設(shè)計教案 課程總學時: 32 講課學時: 24 實驗學時: 8 授 課 人: 楊詞慧 南昌航空大學信息工程學院 目錄 1 嵌入式系統(tǒng)概述 ...............................................
安卓課程設(shè)計報告
安 卓 課 程 設(shè) 計 班 級 09級計算機二班 學 號 20097923 姓 名 郭丹 目錄 第1章安卓應(yīng)用程序開發(fā)背景 .......................................................... 3 §1......