欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      嵌入式系統(tǒng)設(shè)計實習(xí)報告 安卓音樂播放器設(shè)計報告[模版]

      時間:2019-05-14 08:25:51下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《嵌入式系統(tǒng)設(shè)計實習(xí)報告 安卓音樂播放器設(shè)計報告[模版]》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《嵌入式系統(tǒng)設(shè)計實習(xí)報告 安卓音樂播放器設(shè)計報告[模版]》。

      第一篇:嵌入式系統(tǒng)設(shè)計實習(xí)報告 安卓音樂播放器設(shè)計報告[模版]

      機(jī)械與電子工程學(xué)院

      嵌入式系統(tǒng)設(shè)計實習(xí)報告

      題目:簡易音頻播放器設(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ù)的成熟和智能手機(jī)的不斷普及,移動應(yīng)用的需求與日俱增,移動應(yīng)用開發(fā)成為當(dāng)下最熱門的技術(shù)之一。在google和android手機(jī)聯(lián)盟的共同推動下,android在眾多移動應(yīng)用開發(fā)平臺中脫穎而出。

      Android操作系統(tǒng)是google最具殺傷力的武器之一。蘋果以其天才的創(chuàng)新,使得iphone在全球迅速擁有了數(shù)百萬忠實的“粉絲”,而android作為第一個完整、開放、免費(fèi)的手機(jī)平臺,使開發(fā)者在為其開發(fā)程序時擁有更大的自由。與windows mobile,symbian等廠商不同的是,android操作系統(tǒng)是免費(fèi)向開發(fā)人員提供,這樣可節(jié)省近三層得成本。

      我們知道,無論是產(chǎn)品還是技術(shù),商業(yè)應(yīng)用都是它最大的發(fā)展動力。android如此受到廠商與開發(fā)者的青睞,它的前景一片光明。國內(nèi)對于安卓這方面的市場還沒有完全開發(fā)出來。

      只要我們努力學(xué)習(xí)android,對理想、對生活都會有很大的補(bǔ)益。

      因此,開發(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ù)問題,像組件的選擇以及保存方式的選擇; ? 進(jìn)行測試并分析結(jié)果。

      1.3 課題的可行性分析

      1.3.1 課題調(diào)研

      (1)與實踐活動和相關(guān)的文件和資料由作者本人網(wǎng)絡(luò)查找,以及老師幫助;(2)具有遇到問題,具有獨立思考,耐心鉆研,向老師虛心求教的良好態(tài)度;(3)關(guān)于技術(shù)方面的難題,跟指導(dǎo)老師面談。1.3.2 可行性分析

      1)技術(shù)可行性-----本項目僅需要一臺裝有eclipse及配置好android開發(fā)環(huán)境的計算機(jī)即可,對計算機(jī)本身有一定的要求,它可以使用windows xp及其以上版本,mac os,linux等操作系統(tǒng);

      2)經(jīng)濟(jì)可行性-----由于本軟件開發(fā)只需要一臺電腦就行,基本不需要太大的成本。在經(jīng)濟(jì)上完全可行;

      3)操作可行性-----界面設(shè)計時充分考慮用戶的習(xí)慣以及手機(jī)方面的局限性,程序必須要很簡單;本程序只涉及到開發(fā)環(huán)境配置,安卓組件的熟悉,以及安卓平臺上的數(shù)據(jù)存儲,并沒有太大的難度,所以,該項目完全有可操作性。第二章 開發(fā)環(huán)境的安裝和配置

      2.1 開發(fā)包及其工具的介紹

      Android以java作為開發(fā)語言,jdk是進(jìn)行java開發(fā)時必需的開發(fā)包.eclipse是一款非常優(yōu)秀的開源IDE,在大量插件的“配合”下,完全可以滿足從企業(yè)級java應(yīng)用到手機(jī)終端java游戲的開發(fā).Google官方也提供了基于Eclipse的android開發(fā)插件ADT,所以本軟件開發(fā)選擇Eclipse作為開發(fā)IDE.2.2 Android開發(fā)平臺搭建步驟

      首先到http://004km.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)歌詞文件并進(jìn)行初始化操作。

      主程序類包com.terry中,musicActivity和SdCardList均為Activity,前者為播放器的主界面進(jìn)行各種播放控制操作,后者用來從SD卡中選擇MP3文件添加到播放列表中;LocalService是音樂播放的Service,用于進(jìn)行音樂播放并在通知欄中顯示消息;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è)定為當(dāng)前界面。其中main決定了各view的布局,main1則是程序下方的進(jìn)度條及簡單控制按鈕。

      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)限、能力和運(yù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)成良好習(xí)慣,先看看onCreat函數(shù)

      如下圖所示即為作為程序入口的musicActivity的onCreat函數(shù)。大致的流程是調(diào)用父類onCreat函數(shù),隱藏標(biāo)題欄,設(shè)置布局,尋找布局控件,初始化應(yīng)用,刷新歌詞文件,刷新播放列表,綁定監(jiān)聽器,開啟標(biāo)志位檢測線程,設(shè)定空歌詞,啟動服務(wù)。

      4.1.2 關(guān)鍵代碼講解

      設(shè)置布局函數(shù)setView()中,先初始化ListView、GridView還有歌詞布局lyricview的內(nèi)容,完畢后再將其添加到viewPager中從而可以進(jìn)行滑動切換顯示。

      初始化程序initApp()如果程序是第一次啟動(沒有數(shù)據(jù)庫文件),那么就自動初始化一次歌曲播放列表,默認(rèn)路徑為SD卡根目錄,將歌曲文件信息添加到數(shù)據(jù)庫并且添加到播放列表中。如果有數(shù)據(jù)庫文件則不進(jìn)行操作。

      初始化程序完成之后就需要開啟刷新歌詞的線程了,refreshLyric()開啟了刷新的線程使用已經(jīng)定義好的handler hand發(fā)送刷新信息并進(jìn)行相應(yīng)的響應(yīng)。

      下一步就是列表的刷新顯示,當(dāng)前的播放列表中雖然存儲有歌曲信息卻沒有將它顯示 出來,所以我們需要刷新并顯示一次播放列表,refreshlist()即可做到這一點,并且在每次對播放列表進(jìn)行操作后都需要調(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)鍵代碼當(dāng)然是播放音樂和對切換歌曲的處理。

      進(jìn)度條更新函數(shù)progressbar()這個函數(shù)啟動了一個更新進(jìn)度條的線程,同時更新了musicActivity中和通知欄中的進(jìn)度條。

      播放音樂的函數(shù)playMusic(String path)函數(shù)中的參數(shù)為歌曲的路徑(包含歌曲的文件名和后綴),返回類型為空,它的作用就是播放該路徑的歌曲并且有一個播放完畢的監(jiān)聽器。所有的歌曲控制指令都寫在musicActivity中,Service本身并不負(fù)責(zé)對歌曲列表的操作,所以,如果播放完畢,則給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()中建立了一個游標(biāo)查詢數(shù)據(jù)庫中的名為“colaconfig”的表,該表也僅作為初始化查詢而特別建立,如果該表不存在,則說明數(shù)據(jù)庫中不存在歌曲信息表,則創(chuàng)建該表和歌曲信息表“musicitem”,如果該表存在,則返回false并不進(jìn)行任何操作。其他函數(shù)及其作用:

      CreateTable_musicitem()創(chuàng)建歌曲信息表 CreateTable_colaconfig()創(chuàng)建配置表

      Musicitem_insitem(String name,String path)添加歌曲到歌曲信息表,返回類型為boolean Musicitem_delitem(String name)從歌曲信息表中刪除名為name的條目

      getMusicItem()得到歌曲信息表的游標(biāo)用以查詢表中歌曲信息,返回值為Cursor

      第五章 程序的測試

      1.第一次運(yùn)行程序的主界面

      2.點擊“choice”后的歌曲選擇界面 3.選定的歌曲在主界面中顯示播放進(jìn)度,也可拖動進(jìn)度條播放

      5.使用返回鍵退出程序后Service仍在后臺運(yùn)行(歌曲仍在后臺播放)

      第六章 分工與總結(jié)

      6.1 人員分工

      張潤浩:musicActivity、SdCardList的編寫以及數(shù)據(jù)庫的建立,同時負(fù)責(zé)軟件后期的調(diào)試和修改;

      劉博:主要負(fù)責(zé)Service的編寫,包括通知欄和主Activity中控件的同步,同時負(fù)責(zé)報告的書寫;

      6.2 課程總結(jié)

      通信軟件設(shè)計設(shè)計是一門緊跟時代步伐的課程,順應(yīng)了當(dāng)下移動互聯(lián)網(wǎng)的發(fā)展浪潮,通過這門課程使我們大學(xué)生將課堂所學(xué)的知識逐步轉(zhuǎn)化為社會所需要的才能,令我們獲益匪淺。這次的作品在短短兩周內(nèi),雖然并非一切順利,但也算磕磕絆絆地完成了。途中遇到過難以解決的問題,雖然厭煩但還是逼著自己搞定了。說幾個具體的吧,通過這次的課程設(shè)計,主要得到了這么幾個經(jīng)驗。首先,在開發(fā)之前,如果是比較生疏的領(lǐng)域最好將資料準(zhǔn)備完備,否則在做擴(kuò)展的時候?qū)蠡谀?;其次,效率永遠(yuǎn)是第一位的,如果想睡了的話就不要勉強(qiáng)自己繼續(xù)工作;最后,詢問別人并自己進(jìn)行思考永遠(yuǎn)是最快捷的成長途徑??偠灾?,通過這次的軟件開發(fā),通過這門課程,我們培養(yǎng)了自己獨立思考和獨立作業(yè)的能力,更加能夠自信地面對即將踏入的社會。

      第二篇:網(wǎng)頁首頁設(shè)計與安卓音樂播放器制作實習(xí)報告

      軟件學(xué)院實習(xí)報告

      2012學(xué)年第七學(xué)期

      學(xué)

      院: 軟件學(xué)院

      實習(xí)單位: 北京傳習(xí)新天教育有限公司

      業(yè): 計算機(jī)科學(xué)與技術(shù)

      級: 10204102

      名:

      實習(xí)單位指導(dǎo)老師:李老師、歐陽老師 實習(xí)時間:2013年7月5號--2013年7月27號

      1.實習(xí)情況概況:

      本次暑假生產(chǎn)實習(xí)是由北京傳習(xí)教育負(fù)責(zé)教授我們有關(guān)專業(yè)技能方面的知識。其中歐陽老師負(fù)責(zé)安卓編程的教學(xué),李老師負(fù)責(zé)網(wǎng)頁前沿的教學(xué)。

      在安卓編程中歐陽老師首先教我們復(fù)習(xí)和熟悉一些java的知識,如方法的重載,它表示在一個類中 方法名相同 參數(shù)類型/參數(shù)個數(shù)不同。抽象類,它包含抽象方法,抽象方法表示就是只有方法的聲明 沒有方法的實現(xiàn)。java中并不是所有的類都可以實例化。抽象類就不能實例化,因為里面可能含有抽象方法。所以抽象類必須依靠子類進(jìn)行實例化,子類在繼承抽象類的時候,必須把抽象類中的抽象方法都必須重寫。因此,抽象類就好比是一個模板。接口,面向接口編程;接口是一個特殊的抽象類。接口里面全是抽象方法和全局常量,不能包含普通方法。接口不能實例化,必須依靠子類對其進(jìn)行實例化,子類實現(xiàn)一個接口的時候 必須把接口中所有的方法都實現(xiàn)。在java中 是依靠接口來實現(xiàn)多繼承的繼承。異常與捕捉異常(try,catch),它能對程序出現(xiàn)的一些異常進(jìn)行捕獲。String類的應(yīng)用及文件的讀取等等。這為我們在以后編寫音樂播放器起到了很大作用。在接下來中,歐陽老師為我們講了android開發(fā)環(huán)境的配置,android界面布局一些常用的控件及其屬性;將音樂文件讀取到列表中與音樂文件的播放;如何設(shè)置上一首、下一首及播放按鈕的變化;設(shè)置播放進(jìn)度條以及當(dāng)前播放時間與歌曲總時間;歌詞的顯示與界面的布局等等。

      在網(wǎng)頁前沿中李老師首先教我們?nèi)绾问褂肍lash CS3 Pro制作flash小動畫。他主要講解了Flash CS3 Pro中工具欄中各種工具的使用及屬性,幀與幀之間的關(guān)系,如什么叫幀,關(guān)鍵幀是什么,插入幀與插入空白關(guān)鍵幀區(qū)別,插入關(guān)鍵幀的作用,幀之間的補(bǔ)間使用,什么時候該插入什么補(bǔ)間等;圖層的之間的關(guān)系及應(yīng)用,圖層的遮罩技術(shù),利用圖層遮罩做一些特殊的例子,引導(dǎo)層的應(yīng)用;元件的應(yīng)用,如何將材料轉(zhuǎn)化為元件,其中圖形元件,按鈕元件,影片剪輯元件的使用方法;Flash CS3 Pro中一些程序代碼的功能及其使用。接著老師講解了Dreamweaver CS3的應(yīng)用,首先老師為我們復(fù)習(xí)了html中各種標(biāo)簽的使用;網(wǎng)頁板塊間的布局,如使用表格布局與div標(biāo)簽布局的優(yōu)缺點;使用div進(jìn)行一列布局幾多列布局等;縱向?qū)Ш讲藛渭岸墢棾霾藛蔚膶嵗?;div的浮動技術(shù)與標(biāo)簽的絕對定位,相對定位等;最后教了我們一些網(wǎng)站的設(shè)計思想。2.實習(xí)筆記摘錄:

      (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標(biāo)簽級ul標(biāo)簽與其他標(biāo)簽:

      第三篇:嵌入式系統(tǒng)設(shè)計報告

      嵌入式系統(tǒng)設(shè)計實驗報告

      班 級:學(xué) 號:姓 名:成 績:指導(dǎo)教師:

      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 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(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)運(yùn)行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,對整個工程的連接方式進(jìn)行設(shè)置。(5)在彈出的對話框中,選中Entry and Base 標(biāo)簽,如圖1A-4 所示,設(shè)置連接的Read-Only(只讀)和Read-Write(讀寫)地址。

      (6)選擇Linker Configuration 的ImageLayout 標(biāo)簽,(7)選擇Project | Edit Project Tamplete 菜單,彈出Project Template Editor 對話框。

      (8)選擇Project | Edit Variables for work1.apj,彈出Edit Variables for work1.apj 對話框。

      2.進(jìn)行程序的在線仿真、調(diào)試

      1.6 實驗過程與分析

      熟悉UP-net3000實驗平臺的硬件電路和外設(shè),安裝了ARM JTAG,利用超級終端檢驗了外設(shè)的工作狀態(tài)。

      1.7 實驗結(jié)果總結(jié)

      軟件安裝成功,結(jié)果顯示正常。

      1.8 心得體會

      通過此次試驗,我對ARM的環(huán)境的功能有一定的了解與完善。對試驗臺有了基本的認(rèn)識與使用。

      2.實驗二

      2.1 實驗名稱

      嵌入式系統(tǒng)軟件開發(fā)環(huán)境

      2.2 實驗?zāi)康?/p>

      1.熟悉ADS1.2 開發(fā)環(huán)境,學(xué)會ARM 仿真器的使用。

      2.使用ADS 編譯、下載、調(diào)試并跟蹤一段已有的程序,了解嵌入式開發(fā)的基本思想和過程。

      2.3 實驗環(huán)境

      硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。

      2.4 實驗內(nèi)容及要求

      本次實驗使用ADS 集成開發(fā)環(huán)境。新建一個簡單的工程文件,并編譯這個工程文件。學(xué)習(xí)ARM 仿真器的使用和開發(fā)環(huán)境的設(shè)置。下載已經(jīng)編譯好的文件到嵌入式控制器中運(yùn)行。學(xué)會在程序中設(shè)置斷點,觀察系統(tǒng)內(nèi)存和變量。

      2.5 實驗設(shè)計與實驗步驟

      (1)運(yùn)行ADS1.2 集成開發(fā)環(huán)境(CodeWarrior for ARM Developer Suite)。

      (2)在新建的工程中,選擇Debug 版本,使用Edit | Debug Settings菜單對Debug 版本進(jìn)行參數(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 版本進(jìn)行參數(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 對工程進(jìn)行編譯連接。(2)在ADS 中執(zhí)行菜單Project | Debug 啟動ADS1.2 的調(diào)試工具AXD。(3)在AXD 中執(zhí)行菜單Options | Configure Target 對AXD 進(jìn)行設(shè)置。(4)點Select 按鈕選擇遠(yuǎn)程連接為ARM ethernet driver,點Configure 按鈕輸入仿真器的IP 地址。

      (5)等待程序裝載完畢以后,通過Execute | Go 菜單以及Execute | Stop(或者工具欄中的相應(yīng)按鈕)運(yùn)行或暫停程序。程序暫停后在窗口中將顯示出程序暫停的位置。(6)通過Execute | Step 菜單(或者工具欄中的相應(yīng)按鈕)可以單步運(yùn)行程序。

      (7)程序停止后可以通過Processor Views | Sources 菜單查看源文件,并可在適當(dāng)位置按F9 設(shè)置端點。

      (8)使用在Processor View 菜單下的Registers、Variables 和Memory 命令可以查看工作寄存器或者內(nèi)存變量。讀者可以逐一地嘗試,為以后調(diào)試程序打下基礎(chǔ)。

      2.7 實驗結(jié)果總結(jié)

      超級終端輸出“Hello World!”。

      2.8 心得體會

      基本了解了ADS1.2的配置條件,學(xué)會了ARM仿真器的使用方法。

      3.實驗三

      3.1 實驗名稱

      鍵盤及LED實驗

      3.2 實驗?zāi)康?/p>

      1.學(xué)習(xí)鍵盤及LED 驅(qū)動原理。

      2.掌握ZLG7289芯片串行接口的使用方法,用ZLG7289芯片驅(qū)動17鍵的鍵盤和8個共陰極LED。

      3.3 實驗環(huán)境

      硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(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è)置清零鍵等擴(kuò)展功能。

      3.5 實驗設(shè)計與實驗步驟

      利用所給的基礎(chǔ)代碼進(jìn)行調(diào)試,觀察輸出結(jié)果,結(jié)合指導(dǎo)書和教材掌握基本原理和源代碼的編寫方式。根據(jù)實驗的要求設(shè)計函數(shù)流程,并反復(fù)調(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ù)字,同時可以復(fù)位清零。達(dá)到實驗的效果。

      3.8 心得體會

      通過本次實驗,我了解了LED的顯示屏幕的數(shù)字的移位功能,這個功能不止可以用一個方法實現(xiàn),而循環(huán)左移是其中比較巧妙且省力的一種,在遇到類似情況的時候,可以優(yōu)先考慮能不能利用到文件中已經(jīng)存在的函數(shù),這樣可以不必自己編寫函數(shù),省時省力。是一種可靠的方法。4.實驗四

      4.1 實驗名稱

      電機(jī)轉(zhuǎn)動控制及中斷實驗

      4.2 實驗?zāi)康?/p>

      1.熟悉ARM本身自帶的六路即三對PWM,掌握相應(yīng)寄存器的配置。

      2.編程實現(xiàn)ARM系統(tǒng)的PWM輸出和I/O輸出,前者用于控制直流電機(jī),后者用于控制步進(jìn)電機(jī)。

      3.了解直流電機(jī)和步進(jìn)電機(jī)的工作原理,學(xué)會用軟件的方法實現(xiàn)步進(jìn)電機(jī)的脈沖分配,即用軟件的方法代替硬件的脈沖分配器。

      4.了解44B0處理器上中斷的應(yīng)用。5.學(xué)習(xí)在44B0處理器上中斷的應(yīng)用。

      6.進(jìn)一步熟悉平臺外圍硬件及其驅(qū)動程序的編寫。

      4.3 實驗環(huán)境

      硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。

      4.4 實驗內(nèi)容及要求

      1.學(xué)習(xí)步進(jìn)電機(jī)和直流電機(jī)的工作原理,了解實現(xiàn)兩個電機(jī)轉(zhuǎn)動對于系統(tǒng)的軟件和硬件要求。學(xué)習(xí)ARM 知識,掌握 PWM 的生成方法,同時也要掌握 I/O的控制方法。

      2.編程實現(xiàn)ARM芯片的一對PWM輸出用于控制直流電機(jī)的轉(zhuǎn)動,通過A/D旋鈕控制其轉(zhuǎn)動方式。

      3.編程實現(xiàn)ARM的四路I/O通道,實現(xiàn)環(huán)形脈沖分配用于控制步進(jìn)電機(jī)的轉(zhuǎn)動,通過A/D旋鈕控制步進(jìn)電機(jī)的轉(zhuǎn)角。

      4.通過鍵盤控制直流電機(jī)與步進(jìn)電機(jī)的切換。5.設(shè)置并啟動定時器。

      6.設(shè)置中斷,編寫定時器中斷服務(wù)程序,對中斷次數(shù)進(jìn)行計數(shù)并在LED上顯示結(jié)果。

      4.5 實驗設(shè)計與實驗步驟

      1.添加并打開工程。

      2.進(jìn)行直流電機(jī)初始化設(shè)置和代碼編寫。3.進(jìn)行步進(jìn)電機(jī)初始化設(shè)置和代碼編寫。

      4.對Timer3編程,編寫定時器中斷服務(wù)程序,完成對中斷次數(shù)的計數(shù)。5.編寫LED計數(shù)顯示函數(shù),使LED能正確計數(shù)并顯示0-9999。6.編寫中斷初始化函數(shù)和中斷響應(yīng)函數(shù)。7.終端下載測試。

      4.6 實驗過程與分析 1.對直流電機(jī)進(jìn)行編程和測試,掌握轉(zhuǎn)速和旋轉(zhuǎn)方向的設(shè)定方法。

      2.對步進(jìn)電機(jī)進(jìn)行編程和測試,掌握ARM的四路I/O通道,實現(xiàn)環(huán)形脈沖分配用于控制步進(jìn)電機(jī)的轉(zhuǎn)動,通過A/D旋鈕控制步進(jìn)電機(jī)的轉(zhuǎn)角。

      3.對主函數(shù)進(jìn)行編程,用鍵盤響應(yīng)直流電機(jī)與步進(jìn)電機(jī)的切換控制。

      4.掌握中斷相關(guān)語句的應(yīng)用,弄清定義的中斷向量、中斷向量號,編寫中斷響應(yīng)函數(shù),并完成中斷響應(yīng)控制。

      4.7 實驗結(jié)果總結(jié)

      實現(xiàn)了直流電機(jī)與步進(jìn)電機(jī)的基本設(shè)置和控制,可以通過鍵盤控制電機(jī)之間的切換。完成了中斷的響應(yīng)和定時中斷。當(dāng)對其中一個旋鈕轉(zhuǎn)動時,就可以由直流電機(jī)轉(zhuǎn)換成步進(jìn)電機(jī)的轉(zhuǎn)換,達(dá)到實驗的效果。

      4.8 心得體會

      通過本次實驗,我了解了直流電機(jī)和步進(jìn)電機(jī)的工作原理,同時也知曉了電機(jī)間的轉(zhuǎn)換過程,了解其中的道理內(nèi)涵,熟悉了ARM自帶的A/D轉(zhuǎn)換器的工作原理及編程方法,了解了中斷的意義和實現(xiàn)方法,實現(xiàn)了簡單了中斷處理程序。同時我也收獲了很多關(guān)于ARM處理機(jī)的相關(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 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。

      5.4 實驗內(nèi)容及要求

      1.了解觸摸屏基本原理,理解對觸摸屏進(jìn)行輸出標(biāo)定、與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.校準(zhǔn)觸摸屏坐標(biāo),進(jìn)行坐標(biāo)轉(zhuǎn)換。

      4.實現(xiàn)觸屏取點并顯示功能。

      將觸摸動作及觸摸點坐標(biāo)在超級終端上顯示出來。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ù)值僅供參考,請以實際校對為準(zhǔn)

      5.6 實驗過程與分析 1.在定義觸屏響應(yīng)功能的函數(shù)中對點擊觸屏進(jìn)行響應(yīng)函數(shù)的修改,在其中添加修改點顏色的函數(shù),修改得到的觸摸點的顏色,并顯示在LCD上。

      2.獲取第一個點坐標(biāo)并儲存,獲取第二個點坐標(biāo)并儲存,由編寫的劃線函數(shù)取得儲存的兩點間直線上所有點的坐標(biāo),并對其改變顏色,顯示在LCD上,即完成劃直線功能。

      3.將劃線函數(shù)應(yīng)用到響應(yīng)觸屏移動消息的函數(shù)下,即可對連續(xù)獲得的觸摸坐標(biāo)進(jìn)行連續(xù)的畫短直線,連接成曲線,完成動態(tài)劃線功能。

      5.7 實驗結(jié)果總結(jié)

      了解了觸摸屏響應(yīng)動作消息的函數(shù)的工作原理,通過修改實現(xiàn)了觸摸屏響應(yīng)不同動作進(jìn)行畫點、劃線、動態(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.學(xué)習(xí)如何根據(jù)具體情況對UCOS-Ⅱ操作系統(tǒng)進(jìn)行裁剪。

      4.通過對UCOS-Ⅱ配置文件(OS_CFG.H)中相關(guān)的配置常量進(jìn)行設(shè)置,實現(xiàn)對UCOS-Ⅱ的裁剪。

      6.3 實驗環(huán)境

      硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。

      6.4 實驗內(nèi)容及要求

      對UCOS-Ⅱ內(nèi)核進(jìn)行裁剪并移植到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 實驗過程與分析

      按照實驗步驟進(jìn)行,得到了需要的系統(tǒng)。

      6.7 實驗結(jié)果總結(jié)

      按照要求進(jìn)行了裁剪,得到了滿足需要又緊湊的應(yīng)用軟件系統(tǒng)。

      6.8 心得體會

      通過本次實驗,我了解了UCOS-Ⅱ內(nèi)核的主要結(jié)構(gòu),掌握UCOS-Ⅱ裁剪的基本原理與嵌入式編程實現(xiàn)方法,學(xué)會了如何根據(jù)具體情況對UCOS-Ⅱ操作系統(tǒng)進(jìn)行裁剪。

      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 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。

      7.4 實驗內(nèi)容及要求

      1.將UCOS-Ⅱ內(nèi)核進(jìn)行移植到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.按照實驗步驟進(jìn)行,將μ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>

      對前七次實驗進(jìn)行總結(jié),應(yīng)用之前所學(xué)的知識,將前幾次實驗內(nèi)容結(jié)合起來,完成鍵盤,LED,觸摸屏,直流電機(jī),步進(jìn)電機(jī)各種功能的組合。實現(xiàn)一個較為全面的功能結(jié)構(gòu)。

      8.3 實驗環(huán)境

      硬件:ARM 嵌入式開發(fā)平臺、用于ARM7TDMI 的JTAG 仿真器、PC 機(jī)Pentium100 以 上、串口線。

      軟件:PC 機(jī)操作系統(tǒng)win98、Win2000 或WinXP、ARM SDT 2.51 或ADS1.2 集成開發(fā) 環(huán)境、仿真器驅(qū)動程序、超級終端通訊程序。

      8.4 實驗內(nèi)容及要求

      對前七次實驗進(jìn)行總結(jié),應(yīng)用之前所學(xué)的知識,完成自擬的嵌入式系統(tǒng),要求綜合前期基礎(chǔ)實驗的各種功能。

      8.5 實驗設(shè)計與實驗步驟

      1.添加并打開工程。2.進(jìn)行LCD設(shè)計,在LCD顯示屏輸出文本。

      3.進(jìn)行LED及鍵盤設(shè)計,完成LED輸出顯示功能和鍵盤輸入功能。4.進(jìn)行電機(jī)控制設(shè)計,完成鍵盤控制電機(jī)轉(zhuǎn)動功能。5.進(jìn)行中斷設(shè)計,完成定時中斷功能。

      6.進(jìn)行觸摸屏設(shè)計,完成觸摸屏感應(yīng)和劃線功能。7.進(jìn)行裁剪和移植功能設(shè)計和完成。

      8.6 實驗過程與分析

      1.完成LCD顯示功能,在LCD顯示屏上輸出文本:“Hello World!”。2.進(jìn)入界面觸屏控制選擇功能,實現(xiàn)觸屏選擇功能。

      3.自定義四種種功能,第一為電機(jī)控制,從鍵盤讀取命令,并將功能編號顯示在LED上,LED顯示的是計數(shù)的數(shù)據(jù),同時旋轉(zhuǎn)按鈕完成電機(jī)轉(zhuǎn)速的控制選擇。

      4.第三種功能為劃線,功能編號顯示在LED高四位上,同時LCD屏幕清屏,為劃線功能做準(zhǔn)備,可以實現(xiàn)劃線功能。

      5.第四種功能為定時中斷,當(dāng)由鍵盤控制時,LED顯示數(shù)值清零,實現(xiàn)了中斷。6.實現(xiàn)裁剪與移植功能。

      8.7 實驗結(jié)果總結(jié)

      完成了各種基本功能,并通過自擬的系統(tǒng)將各種功能整合起來,完成了一個小的嵌入式系統(tǒng),對前七次的功能有了更深入的了解。通過LED的計數(shù),當(dāng)在計數(shù)值在前30秒之內(nèi),由鍵盤控制LED的數(shù)值及顯示,按鍵盤上的某一個按鍵,實現(xiàn)對LED上的數(shù)值清零,后30秒由觸摸屏控制清零,并且在前30秒之內(nèi),旋轉(zhuǎn)按鈕,實現(xiàn)對直流電機(jī)的運(yùn)轉(zhuǎn),并且到步進(jìn)電機(jī)的轉(zhuǎn)換。

      8.8 心得體會

      通過這次實驗,我更加深刻地掌握了前幾次實驗中的基本功能的實現(xiàn)方法,并且把幾種功能聯(lián)合在一起,實現(xiàn)一些功能,把LED 顯示屏,LCD觸摸屏,鍵盤,直流電機(jī),步進(jìn)電機(jī)等等設(shè)備聯(lián)合在一起,對該實驗有一定的幫助與提高,而我和我的隊友也對嵌入式系統(tǒng)有了更深入的了解,在此期間,也學(xué)習(xí)了關(guān)于ARM處理器的開發(fā)與實踐,了解了關(guān)于手機(jī)的嵌入式設(shè)備的產(chǎn)生過程,我也深深的對此充滿了興趣,對未來的嵌入式課程設(shè)計奠定了深厚的基礎(chǔ),可是令我遺憾的是,我和隊員的水平所限,沒有完成中斷優(yōu)先級的控制。本來想完成更多的功能,可是最后由于時間緊迫,也有一些其他的事情來分神分心,所以就只能完成這些,但是在未來的幾周內(nèi),嵌入式課程設(shè)計也給了我們很大的空間去做未完成的事情。我相信我們會做的更加完美,功能更強(qiáng)大,用于未來的生活中去實踐。

      第四篇:安卓音樂播放器個人總結(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手機(jī)平臺的音樂播放器軟件的開發(fā),使我對Android音樂播放器系統(tǒng)的整體設(shè)計有一個深入的了解,對整個流程也會有一個清晰的認(rèn)識。開發(fā)Android音樂播放器,要抓住開發(fā)的核心部分,音樂播放器大體由播放主界面、播放列表、菜單、播放設(shè)置、文件瀏覽、歌曲搜索六大核心組成,只要掌握了這六部分的開發(fā),音樂播放器就能初具規(guī)模。而其它的功能都是在這六個功能的基礎(chǔ)上去補(bǔ)充添加的,但是這是功能的確是必不可少的功能,否則就不能算是音樂播放器了。

      (2)音樂播放器系統(tǒng)實現(xiàn)了播放器的基本功能:播放,暫停、停止、上/下一首、音量調(diào)節(jié)、歌詞顯示、播放模式、歌曲搜索、文件瀏覽器、播放列表查詢等功能。運(yùn)用的系統(tǒng)平臺是現(xiàn)今最熱門的Android系統(tǒng),是一個開源的基于Linux系統(tǒng)的手機(jī)平臺。是以Java語言編寫+SQLite數(shù)據(jù)庫支持+SharePreference配置文件的組合方式進(jìn)行數(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ù)知識的學(xué)習(xí)和對音樂播放器的構(gòu)思與設(shè)計,使我對Android系統(tǒng)有了一定的了解,讓我對Android系統(tǒng)上的開發(fā)流程和開發(fā)模式有了深入的了解,這對我以后的Android項目開發(fā)有很大的幫助。

      第1頁

      軟件工程數(shù)據(jù)庫課程設(shè)計——總結(jié)

      2成員杜曉陽總結(jié)

      2.1個人評價

      這次程序設(shè)計我在整個項目中負(fù)責(zé)整體設(shè)計,詳細(xì)設(shè)計,具體測試。整個項目有我個人負(fù)責(zé),不論多困難,我也要自己完成。不斷學(xué)習(xí),不斷前進(jìn)。

      2.2個人總結(jié)

      本文主要是對Android平臺音樂播放器的分析設(shè)計,主要實現(xiàn)了音樂的播放、暫停、上一曲、下一曲、音樂列表、聲音控制、退出菜單、播放模式等功能。在本文中第一章簡要的介紹了選題依據(jù)背景、研究現(xiàn)狀等;第二章中講述了Android的開發(fā)基礎(chǔ);第三章進(jìn)行了詳盡的系統(tǒng)需求分析;第四章進(jìn)行詳細(xì)設(shè)計以及編碼實現(xiàn)工作;最后的第五章進(jìn)行了軟件的測試工作,完善軟件。本設(shè)計的音樂播放器軟件能夠穩(wěn)定運(yùn)行,體積小且反映靈敏,但還是有幾點不足的地方,例如最近播放列表無法排序、代碼編寫冗余重復(fù)率高、圖片素材布局不太美觀等等。在以后我會改進(jìn)軟件的不足,以更優(yōu)的編碼水平,更高超的布局思維模型,并且學(xué)習(xí)更多新的知識重構(gòu)這款軟件。這款播放器軟件還是比較好的,適用于低端智能手機(jī)市場,有良好的用戶體驗和反應(yīng)速度。相信隨著智能手機(jī)在發(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手機(jī)平臺的音樂播放器軟件的開發(fā),使我對Android音樂播放器系統(tǒng)的整體設(shè)計有一個深入的了解,對整個流程也會有一個清晰的認(rèn)識。開發(fā)Android音樂播放器,要抓住開發(fā)的核心部分,音樂播放器大體由播放主界面、播放列表、菜單、播放設(shè)置、文件瀏覽、歌曲搜索六大核心組成,只要掌握了這六部分的開發(fā),音樂播放器就能初具規(guī)模。而其它的功能都是在這六個功能的基礎(chǔ)上去補(bǔ)充添加的,但是這是功能的確是必不可少的功能,否則就不能算是音樂播放器了。

      (2)音樂播放器系統(tǒng)實現(xiàn)了播放器的基本功能:播放,暫停、停止、上/下一首、音量調(diào)節(jié)、歌詞顯示、播放模式、歌曲搜索、文件瀏覽器、播放列表查詢等功能。運(yùn)用的系統(tǒng)平臺是現(xiàn)今最熱門的Android系統(tǒng),是一個開源的基于Linux系統(tǒng)的手機(jī)平臺。是以Java語言編寫+SQLite數(shù)據(jù)庫支持+SharePreference配置文件的組合方式進(jìn)行數(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ù)知識的學(xué)習(xí)和對音樂播放器的構(gòu)思與設(shè)計,使我對Android系統(tǒng)有了一定的了解,讓我對Android系統(tǒng)上的開發(fā)流程和開發(fā)模式有了深入的了解,這對我以后的Android項目開發(fā)有很大的幫助。

      2成員杜曉陽總結(jié)

      2.1個人評價

      這次程序設(shè)計我在整個項目中負(fù)責(zé)整體設(shè)計,詳細(xì)設(shè)計,具體測試。整個項目有我個人負(fù)責(zé),不論多困難,我也要自己完成。不斷學(xué)習(xí),不斷前進(jìn)。

      2.2個人總結(jié)

      本文主要是對Android平臺音樂播放器的分析設(shè)計,主要實現(xiàn)了音樂的播放、暫停、上一曲、下一曲、音樂列表、聲音控制、退出菜單、播放模式等功能。在本文中第一章簡要的介紹了選題依據(jù)背景、研究現(xiàn)狀等;第二章中講述了Android的開發(fā)基礎(chǔ);第三章進(jìn)行了詳盡的系統(tǒng)需求分析;第四章進(jìn)行詳細(xì)設(shè)計以及編碼實現(xiàn)工作;最后的第五章進(jìn)行了軟件的測試工作,完善軟件。本設(shè)計的音樂播放器軟件能夠穩(wěn)定運(yùn)行,體積小且反映靈敏,但還是有幾點不足的地方,例如最近播放列表無法排序、代碼編寫冗余重復(fù)率高、圖片素材布局不太美觀等等。在以后我會改進(jìn)軟件的不足,以更優(yōu)的編碼水平,更高超的布局思維模型,并且學(xué)習(xí)更多新的知識重構(gòu)這款軟件。這款播放器軟件還是比較好的,適用于低端智能手機(jī)市場,有良好的用戶體驗和反應(yīng)速度。相信隨著智能手機(jī)在發(fā)展中國家的普及,它們市場上會擁有龐大的用戶群。

      下載嵌入式系統(tǒng)設(shè)計實習(xí)報告 安卓音樂播放器設(shè)計報告[模版]word格式文檔
      下載嵌入式系統(tǒng)設(shè)計實習(xí)報告 安卓音樂播放器設(shè)計報告[模版].doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報,并提供相關(guān)證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

      相關(guān)范文推薦

        安卓實習(xí)報告

        通信與電子信息專業(yè)實訓(xùn)報告項目名稱:基于android的游戲開發(fā)班 級 10通信1班姓 名學(xué) 號指導(dǎo)教師 成 績實訓(xùn)時間:年月日—目錄 一、實訓(xùn)目的及其意義 .............................

        嵌入式系統(tǒng)實習(xí)報告

        一、嵌入式系統(tǒng)開發(fā)與應(yīng)用概述在今日,嵌入式ARM 技術(shù)已經(jīng)成為了一門比較熱門的學(xué)科,無論是在電子類的什么領(lǐng)域,你都可以看到嵌入式ARM 的影子。如果你還停留在單片機(jī)級別的學(xué)習(xí)......

        安卓記事本實習(xí)報告

        Android記事本的設(shè)計與實現(xiàn) Android記事本的設(shè)計與實現(xiàn) ——SQLite數(shù)據(jù)庫的設(shè)計和操作 學(xué)生姓名:指導(dǎo)老師: 摘 要: 隨著智能手機(jī)的快速普及,智能手機(jī)操作系統(tǒng)市場風(fēng)生水起。A......

        音樂播放器項目報告

        華東交通大學(xué)課程項目 學(xué) 院:軟件學(xué)院 ______ 課程名稱: Android應(yīng)用開發(fā)___________ 項目名稱: ___ _音樂播放器________ 學(xué)生名字: ____ ________ 學(xué)生班級: ____ ______ 授課......

        音樂播放器報告(大全5篇)

        一、綜述本課題國內(nèi)外研究動態(tài),說明選題的依據(jù)和意義 1.1課題的背景和意義 隨著科技的進(jìn)步,手機(jī)的功能也不斷的得到豐富,從最早的“大哥大”到現(xiàn)在的商務(wù)PDA手機(jī),智能手機(jī),音樂......

        《嵌入式系統(tǒng)設(shè)計》教學(xué)大綱

        《嵌入式系統(tǒng)設(shè)計》課程教學(xué)大綱 嵌入式系統(tǒng)設(shè)計 (Design of Embedded Systems ) 一、課程教學(xué)目的和基本要求 教學(xué)目的: 嵌入式系統(tǒng)技術(shù)已被廣泛地應(yīng)用于工業(yè)控制系統(tǒng)、信息......

        《嵌入式系統(tǒng)設(shè)計》教案

        嵌入式系統(tǒng)設(shè)計教案 課程總學(xué)時: 32 講課學(xué)時: 24 實驗學(xué)時: 8 授 課 人: 楊詞慧 南昌航空大學(xué)信息工程學(xué)院 目錄 1 嵌入式系統(tǒng)概述 ...............................................

        安卓課程設(shè)計報告

        安 卓 課 程 設(shè) 計 班 級 09級計算機(jī)二班 學(xué) 號 20097923 姓 名 郭丹 目錄 第1章安卓應(yīng)用程序開發(fā)背景 .......................................................... 3 §1......