《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > Android手機麥克端的數據采集與顯示
Android手機麥克端的數據采集與顯示
來源:電子技術應用2012年第7期
蘇維嘉1,楊 靜2,唐 宇2
1.遼寧工程技術大學 機械工程學院,遼寧 阜新123000; 2.遼寧工程技術大學 機械電子工程系,遼寧 阜新123000
摘要: 以Android平臺為基礎,設計了一種通過Android手機的麥克端采集數據信號的方案,不僅擴展了數據采集的方法,同時也把Android平臺應用到工程領域中。
中圖分類號: TP216
文獻標識碼: B
文章編號: 0258-7998(2012)07-0030-03
Data acquisition and display of the mike in Android phone
Su Weijia1,Yang Jing2,Tang Yu2
1.School of Mechanical Engineering, Liaoning Technical University, Fuxin 123000,China; 2.Department of Mechanical and Electronic Engineering, Liaoning Technical University, Fuxin 123000,China
Abstract: Based on the Android platform,this article designed a method of data signal acquisition of mike in Android phone, it not only extends the method of data acqusition ,but also the Android platform applies to engineering fields.
Key words : Android;embedded;mike;data acquisition;data display

    Android是一個開放、自由的移動終端平臺,其開放性保證了該平臺不存在任何阻礙移動產業創新的專有權障礙,一經推出就深受業內人士的認可。隨著電子科技的發展,Android平臺不僅僅應用于移動互聯網上的開發,在工程上的開發前景也得到了廣泛的關注[1]。

    Android平臺使用Java語言進行開發,支持SQLite數據庫、2D/3D圖形加速、多媒體播放和攝像頭等硬件設備,并設置了豐富的應用程序,如電子郵件客戶端、鬧鐘、Web瀏覽器、計數器、通信錄和MP3播放器等。Android采用了軟件堆層(Software Stack)的架構,共分為4層:第一層是Linux內核,提供由操作系統內核管理的底層基礎功能;第二層是中間件層,由函數庫和Android運行時所需的虛擬機構成;第三層是應用程序框架層,提供了Android平臺基本的管理功能和組件重用機制;第四層是應用程序層,提供了一系列核心應用程序[2]。數據信號的采集一般是通過USB、藍牙、WiFi等方法,而本文是通過Android手機的麥克端來采集數字信號,從而實現了一種新型的數據采集的方法。
1 硬件系統設計
1.1 硬件結構

    Android手機的麥克端不能接收任意頻率的信號,只能接收頻率在20 Hz~20 kHz范圍內(即達到音頻信號的范圍)的信號,因為只有音頻信號才能被人耳聽到,才能被麥克采集到。本文采集的信號是一電壓信號,而電壓信號不能直接被Android手機的麥克端接收。因此在硬件系統設計中,需要把電壓信號轉換成頻率范圍在20 Hz~20 kHz之間的頻率信號,即達到音頻信號的標準。電壓信號轉換成頻率信號的方法有很多,本文采用V/F轉換器LM331實現把電壓信號轉換成頻率在20 Hz~20 kHz范圍內的音頻信號,其硬件框圖如圖1所示。

    經調整電路后的頻率信號就是標準的音頻信號了,但信號并不能直接連接到送話器讓Android手機的麥克端接收,因為不能保證周圍絕對安靜, 誤差會很大,而是要把音頻信號與耳機中的送話器線相連,再把耳機與Android手機相連,這樣就可以大大減少失真的程度。
1.2 V/F轉換器LM331模塊
    LM331是美國NS公司生產的性價比較高的集成芯片,它是當前最簡單的一種高精度V/F轉換器,將電壓信號轉換成脈沖頻率信號,輸出頻率嚴格正比于輸入電壓。LM331為雙列直插式8引腳芯片,線性度好,最大非線性失真小于0.01%,工作頻率為0.1 Hz時仍有較好的線性;變換精度高,分辨率可達16位;外接電路簡單,只需接入幾個外部元件就可方便地構成V/F轉換器,并且容易保持轉換精度。LM331在4.0 V的電壓供電的情況下,就可在整個工作溫度范圍內高精度地工作[3]。V/F轉換電路如圖2所示。

2 音頻格式
    音頻的格式有很多種,但在Android的API中與音頻有關的包是android.media,其中有兩個類是與音頻采集有關的,分別是MediaRecorder和AudioRecord。用Media-Recorder采集的音頻信號經過壓縮編碼后變成的聲音數據為AMR格式。但因為數據是被壓縮的,所以在讀取數據時,要面臨解壓縮的問題。而用AudioRecord采集音頻可以直接獲得無壓縮的PCM數據,即可以直接讀取音頻數據,數據不再需要解壓縮?;贏udioRecord的方便性與實用性,本文采用AudioRecord來采集音頻信號。
    脈沖編碼調制PCM(Pulse Code Modulation)是將音頻數字化的最好途徑,聲音經過麥克風,轉換成一系列電壓變化的信號。要將這樣的信號轉換成PCM格式,要使用聲道數、采樣位數和采樣頻率3個參數來表示聲音:(1)聲道數可分為單聲道和立體聲,單聲道即用一個傳聲器拾取聲音,用一個揚聲器來播放聲音;而立體聲則是由兩個傳聲器輪流拾取聲音,用兩個揚聲器來播放聲音。(2)采樣位數即采樣值,它是用來衡量聲音動態波動變化的一個參數,其值越大,分辨率就越高,在Android提供的API中,所提供的分辨率有8 bit和16 bit兩種。(3)采樣頻率(即取樣頻率)指的是每秒鐘采得聲音樣本的次數,采樣頻率越高,聲音的質量也就越好,聲音的還原越真實,同時它占用的資源也比較多。通常選用的采樣頻率一般有11 025 Hz、22 050 Hz和44 100 Hz。11 025 Hz、8 bit的聲音稱為電話音質;22 050 Hz、16 bit的聲音稱為廣播音質;44 100 Hz、16 bit已達到CD的音質了[4]。
3 Android平臺下的軟件系統設計
    首先是建立Android工程(即MediaPCM),其中包括主界面MainActivity,在主界面上有MediaFile和Recorder兩個圖標,分別代表音頻文件列表和音頻信號采集,如圖3所示。

    點擊右邊的Recorder,就會進入到音頻采集界面(即Record-Activity),實現采集和播放音頻的功能,同時要把采集到的音頻打包成文件存放到SD卡指定的目錄下;點擊左邊MediaFile,就會進入到音頻文件顯示列表界面(即ListActivity),點擊其中某一項文件,就會進入波形顯示界面(即WaveFormActivity),就會把音頻文件以二進制數據的形式顯示在Android手機的界面上。軟件系統的整體框架流程圖如圖4所示。

3.1 清單(AndroidManifest)文件
    在每一個Android項目中,都包含了一個清單(AndroidManifest)文件,即AndroidManifest.xml,它存儲在項目層次中的最底層,用于在程序運行之前向Android系統聲明程序的相關信息,這些信息包括應用程序需要的許可、程序運行的最低SDK版本、程序運行所需要的硬件支持和函數庫等。由于本文要用到SD卡的操作和采集音頻信號(即錄音)的操作,所以要在AndroidManifest.xml文件中加入以下兩個權限:"android.permission.WRITE_EXTERNAL_STORAGE"和"android.permission.RECORD_AUDIO",這樣就可以訪問SD卡和進行采集音頻信號了。
3.2 音頻的采集與播放
    因為音頻的采集需要使用AudioRecord類,與之對應的音頻的播放需要用到AudioTrack類;要把聲音轉化成PCM格式,需要使用采樣頻率、聲道數和采樣位數這三個參數。因此在編寫程序時,要對這三個參數進行初始化,即在本文中表示為frequence、channelConfig和audioEncoding。本文采用的是采樣頻率為44 100 Hz、單聲道16位進行采樣。點擊開始按鈕(startButton)時,就會開始錄音(即采集音頻信號)。其核心代碼如下:
int bufferSize = AudioRecord.getMinBufferSize(frequence,
channelConfig, audioEncoding);
int resource = MediaRecorder.AudioSource.MIC;
AudioRecord record = new AudioRecord(resource, frequence,
channelConfig, audioEncoding, bufferSize);  
record.startRecording();
    其中,bufferSize是根據采樣頻率、聲道和采樣位數三個參數得到一個最小的緩沖區,并且MediaRecorder.AudioSou-rce.MIC聲明了音頻信號的來源是Android手機的麥克端。這樣當調用record的startRecording()方法時就開始錄音(即音頻采集);當點擊停止按鈕(stopButton)時就會停止采集;點擊播放按鈕(playButton)時,就開始播放已經錄制的音頻;點擊結束按鈕(finishButton)就結束播放音頻。至于播放音頻這一項,對數據的采集并沒有太大的影響。為了完善界面,在沒有硬件電路的情況下,只用一個Android手機也能完成錄音播放的功能。錄音界面如圖5所示。
3.3 打包音頻文件
    只采集音頻信號是遠遠不夠的,還要把采集到的音頻信號打包成文件存放到SD卡指定的目錄中,并把采集到的音頻信號顯示在音頻文件顯示界面上,在SD卡中的位置如圖6所示。

 

 

    本文把采集到的文件放在SD卡的MediaFile/File中,并根據當天的日期所建立的文件夾下(如本文的2012/1/12),確保把當天采集到的音頻文件存放在一起,以便于查詢。
    在現實音頻文件列表時,是根據日歷的形式存儲的,有內容的當天日期會有標記,點擊標記日就會進入音頻文件顯示界面,如圖7所示。

3.4 讀取并顯示音頻文件
    把音頻數據文件保存到SD卡中,工作并沒有結束,最終還要把音頻文件以二進制數據的形式讀出來輸送到Android手機界面上。首先把音頻文件以列表的形式顯示出來(即顯示在ListActivity界面下),點擊采集到的文件MyFile66315.pcm,即以讀的形式打開文件,并把存在文件中的數據以二進制的形式輸送到波形顯示界面上(即本文的WaveFormActivity界面)。波形顯示界面如圖8所示。至此使用Android手機麥克端實現數據采集并顯示的工作已經完成。
    選擇用手機的麥克端來采集數據主要是為了不僅僅只能通過USB、藍牙等的數據采集方法,而開拓出一種新型的數據采集方法。使用手機的麥克端來采集數據,要通過硬件電路把所要采集的數據信號轉換成音頻信號,才能被麥克端采集到。使用Android手機平臺,可以在界面的設計上下一番功夫,設計出自己喜好的界面,與一般的顯示器相比,Android界面更加小巧美觀,在未來,Android平臺勢必會在各行各業中發揮其巨大的作用。
參考文獻
[1] 李楊,馮剛,李亮,等.基于Android的多媒體開發與研究[J].計算機與現代化,2011(4):149-152.
[2] 王向輝,張國印,沈潔.Android應用程序開發,第1版[M]. 北京:清華大學出版社,2010.
[3] 劉金華,皮大能,程彩云.LM331與PIC16F73單片機實現數據采集[J].自動化技術與應用,2009,28(11):116-119.
[4] 翟彥.基于LM331和單片機的壓力數據采集[J].電子設計工程,2009,19(3):95-97.

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          久久影院午夜论| 亚洲在线视频观看| 美女在线一区二区| 欧美激情第1页| 最新成人在线| 欧美一区二区在线看| 久久久久久噜噜噜久久久精品| 亚洲美女视频在线免费观看| 亚洲午夜久久久久久久久电影网| 亚洲国产欧美久久| 欧美日韩第一区日日骚| 亚洲一区二区三区免费观看| 国产精品99久久久久久www| 亚洲欧美欧美一区二区三区| 在线视频中文亚洲| 欧美激情视频一区二区三区在线播放| 亚洲精品色图| 免播放器亚洲| 欧美极品欧美精品欧美视频| 女同性一区二区三区人了人一| 欧美视频中文在线看| 欧美一区二区网站| 亚洲精品无人区| 美腿丝袜亚洲色图| 欧美激情一区二区三级高清视频| 伊人精品久久久久7777| 亚洲精品在线视频| 欧美一区日本一区韩国一区| 一区二区三区精品国产| 久久国产日韩| 欧美亚洲一区二区三区| 国产精品久久久爽爽爽麻豆色哟哟| 国产一区在线免费观看| 亚洲电影第1页| 好吊日精品视频| 国产一区二区在线观看免费播放| 国产偷久久久精品专区| 国产日产欧美精品| 久久欧美中文字幕| 久久久久久久久久久久久久一区| 亚洲国产精品久久久久婷婷884| 国产综合香蕉五月婷在线| 欧美一区二区精品在线| 国产精品ⅴa在线观看h| 午夜老司机精品| 蜜桃久久精品一区二区| 国产精品久久久一区二区三区| 欧美成人精品h版在线观看| 999亚洲国产精| 欧美日韩高清在线一区| 欧美一区二区视频97| 欧美成人四级电影| 亚洲高清资源| 韩日成人av| 欧美午夜不卡视频| 欧美日韩精品免费观看视频完整| 亚洲激情自拍| 久久久久天天天天| 玖玖综合伊人| 久久国产精品99久久久久久老狼| 国产综合欧美| 欧美日韩综合不卡| 一区二区三区你懂的| 亚洲日韩欧美视频| 欧美日韩亚洲国产一区| 欧美日韩一视频区二区| 亚洲永久精品大片| 久久久久久久一区二区| 国产精品高潮呻吟久久av无限| 黄色成人精品网站| 狠狠久久综合婷婷不卡| 国产一区二区视频在线观看| 性欧美videos另类喷潮| 国产精品性做久久久久久| 国产偷国产偷精品高清尤物| 麻豆九一精品爱看视频在线观看免费| 国产精品99久久久久久久久| 久久午夜电影网| 久久色在线播放| 欧美国产精品日韩| 久久精品1区| 夜夜狂射影院欧美极品| 99精品久久| 午夜精品久久久久久久久| 国产精品日韩专区| 国产精品一区二区久久久久| 狠狠综合久久| av不卡在线| 国产一区日韩一区| 国产欧美日韩视频在线观看| 国产精品日韩专区| 久久久久久亚洲精品中文字幕| 一区二区三区 在线观看视频| 国产精品一二三四| 一区二区欧美激情| 欧美成人中文| 亚洲综合色丁香婷婷六月图片| 欧美激情2020午夜免费观看| 1024成人| 久久在线91| 久久国产精品一区二区三区四区| 久久青草欧美一区二区三区| 亚洲欧美资源在线| 欧美xxxx在线观看| 久久成人久久爱| 国产欧美精品日韩精品| 久久精品国产免费看久久精品| 欧美一级夜夜爽| 黄色日韩在线| 欧美日韩麻豆| 国产一区二区| 亚洲视频国产视频| 亚洲国产美国国产综合一区二区| 国产日韩欧美综合一区| 国产欧美日韩精品一区| 国产精品一级| 亚洲一区区二区| 亚洲精选国产| 欧美日韩美女在线| 亚洲免费伊人电影在线观看av| 国产亚洲福利| 亚洲日本在线观看| 国产日韩一区二区| 蜜臀久久99精品久久久画质超高清| 亚洲精品乱码| 欧美大片免费看| 国产自产2019最新不卡| 极品尤物久久久av免费看| 国产精品影院在线观看| 亚洲在线中文字幕| 亚洲九九九在线观看| 欧美成人黑人xx视频免费观看| 新片速递亚洲合集欧美合集| 伊人成综合网伊人222| 亚洲国产精品嫩草影院| 永久91嫩草亚洲精品人人| 在线日韩中文| 亚洲卡通欧美制服中文| 欧美性生交xxxxx久久久| 亚洲激情成人| 亚洲麻豆一区| 女女同性精品视频| 国产精品卡一卡二| 久久精品一区二区三区四区| 牛人盗摄一区二区三区视频| 亚洲成人在线视频网站| 欧美精品日本| 久久亚洲视频| 亚洲综合久久久久| 欧美在线视频免费| 午夜久久福利| 久久国产日本精品| 久久精品国产精品亚洲| 一区精品在线播放| 国产欧美一区二区白浆黑人| 国产精品看片你懂得| 午夜精品久久久| 国产伦精品一区二区三区视频孕妇| 91久久精品国产91久久性色| 欧美极品影院| 午夜精品视频| 午夜在线视频观看日韩17c| 亚洲欧美在线看| 美女图片一区二区| 欧美国产日韩a欧美在线观看| 欧美xxx成人| 亚洲日本成人| 久久久久国内| 西西裸体人体做爰大胆久久久| 欧美日韩国产精品一卡| 久久久久久久999| 国产真实乱偷精品视频免| 亚洲一区免费网站| 国产精品a久久久久久| 亚洲精品久久久久久久久久久| 亚洲精品在线电影| 久久亚洲免费| 亚洲精品久久久久久下一站| 亚洲精品乱码久久久久久黑人| 国产亚洲毛片| 久久精品在线视频| 国产精品美女久久久免费| 欧美综合第一页| 国产亚洲精品福利| 国产一区二区三区不卡在线观看| 国产在线精品自拍| 亚洲第一精品久久忘忧草社区| 欧美中文在线观看| 欧美成熟视频| 亚洲视频免费在线观看| 欧美高清在线观看| 玖玖综合伊人| 亚洲日韩欧美视频| 亚洲一区网站| 欧美本精品男人aⅴ天堂| 午夜精品视频| 国产在线成人| 亚洲欧美国产一区二区三区| 国产精品色婷婷| 日韩亚洲国产欧美| 久久久久免费| 久久婷婷影院| 日韩视频在线永久播放| 欧美aⅴ一区二区三区视频| 激情五月综合色婷婷一区二区| 亚洲伊人观看| 99精品国产高清一区二区| 亚洲在线免费视频| 欧美精品国产精品| 国产区欧美区日韩区| 日韩一区二区福利| 欧美怡红院视频| 国产亚洲午夜高清国产拍精品| 性做久久久久久| 久久精品毛片| 欧美日韩视频| 欧美人成免费网站| 久久人人爽爽爽人久久久| 91久久香蕉国产日韩欧美9色| 另类尿喷潮videofree| 欧美亚洲一区在线| 亚洲美女视频| 欧美激情一区三区| 亚洲大片免费看| 久久综合网色—综合色88| 久久久久久久久一区二区| 亚洲在线观看视频网站| 欧美日本不卡高清| 亚洲国产成人精品久久久国产成人一区| 一本一本a久久| 国产主播在线一区| 亚洲最新视频在线播放| 欧美一区亚洲一区| 久久亚洲一区| 欧美午夜视频网站| 欧美中文字幕视频在线观看| 欧美日韩亚洲免费| 亚洲国产精品一区二区第四页av| 老司机aⅴ在线精品导航| 欧美激情在线观看| 国内精品**久久毛片app| 国产精品视频午夜| 国产精品欧美经典| 老司机午夜精品视频| 宅男在线国产精品| 国产精品欧美久久久久无广告| 国产美女精品免费电影| 亚洲第一页中文字幕| 欧美日韩中文另类| 国模 一区 二区 三区| 亚洲一区二区免费| 免费国产自线拍一欧美视频| 在线国产精品播放| 国产欧美69| 国产乱码精品一区二区三| 久久成人一区二区| 国产精品v欧美精品v日韩精品| 亚洲国产高清一区| 欧美日韩情趣电影| 久久久精品一区二区三区| 欧美精彩视频一区二区三区| 久久久久久久性| 精久久久久久久久久久| 欧美日韩国产经典色站一区二区三区| 国产日产精品一区二区三区四区的观看方式| 又紧又大又爽精品一区二区| 亚洲免费精品| 亚洲影视中文字幕| 99热在这里有精品免费| 国产精品免费福利| 亚洲视频在线一区| 国产日韩欧美精品| 一本久久综合亚洲鲁鲁| 国产综合色在线| 国产精品免费一区二区三区在线观看| 国产欧美视频一区二区| 久久久999国产| 国产视频欧美| 亚洲精品影院| 男女视频一区二区| 亚洲国产精品一区二区第四页av| 国产一区二区三区网站| 亚洲风情在线资源站| 亚洲高清免费在线| 激情欧美一区二区三区在线观看| 亚洲第一狼人社区| 久久亚洲午夜电影| 激情成人av在线| 欧美日韩免费观看中文| 亚洲国产成人精品久久久国产成人一区| 欧美美女bb生活片| 国产精品日韩| 欧美一区永久视频免费观看| 久久久精品日韩| 国产视频一区在线观看一区免费| 国产精品久久久91| 午夜精品www| 亚洲综合999| 黑人巨大精品欧美一区二区小视频| 国产精品亚洲综合久久| 国产在线播放一区二区三区| 欧美国产精品劲爆| 欧美日韩国产成人高清视频| 久久久久久综合网天天| 久久久久久久久久看片| 欧美日韩一区视频| 欧美高清视频一区二区三区在线观看| 亚洲视频精选| 一区二区三区免费观看| 久久综合九色综合久99| 欧美一二区视频| 久久久精品国产一区二区三区| 欧美日韩精品二区第二页| 亚洲欧美日韩国产中文在线| 99在线热播精品免费99热| 欧美一区二区三区男人的天堂| 亚洲黄页视频免费观看| 欧美亚洲一区二区三区| 欧美在线一区二区三区| 亚洲国产欧美一区| 亚洲视屏一区| 国产精品theporn88| 欧美一区二视频在线免费观看| 国产精品久久久久久久一区探花| 国产日本欧美一区二区三区在线| 欧美性大战xxxxx久久久| 国产欧美日本在线| 国产精品老女人精品视频|