《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 嵌入式網(wǎng)絡(luò)收音機(jī)的ARM實(shí)現(xiàn)
嵌入式網(wǎng)絡(luò)收音機(jī)的ARM實(shí)現(xiàn)
摘要: 嵌入式網(wǎng)絡(luò)收音機(jī)的ARM實(shí)現(xiàn),收音機(jī)作為接收廣播的工具,經(jīng)過漫長的發(fā)展過程,由單波段發(fā)展到多波段,由電子管,晶體管發(fā)展到集成電路,由機(jī)械調(diào)諧發(fā)展到數(shù)字調(diào)諧功能等,其技術(shù)和品質(zhì)都有了長足的進(jìn)步。如今,在收音機(jī)這個(gè)家族中新的成員也
Abstract:
Key words :

         收音機(jī)作為接收廣播的工具,經(jīng)過漫長的發(fā)展過程,由單波段發(fā)展到多波段,由電子管,晶體管發(fā)展到集成電路,由機(jī)械調(diào)諧發(fā)展到數(shù)字調(diào)諧功能等,其技術(shù)和品質(zhì)都有了長足的進(jìn)步。

  如今,在收音機(jī)這個(gè)家族中新的成員也在不斷加入,如衛(wèi)星廣播接收機(jī)等。當(dāng)社會(huì)進(jìn)入網(wǎng)絡(luò)時(shí)代后,更是出現(xiàn)了網(wǎng)絡(luò)收音機(jī)這種跨越全球的信息接收設(shè)備。但是,目前這種網(wǎng)絡(luò)收音機(jī)大多是通過基于PC機(jī)上的軟件開發(fā)來實(shí)現(xiàn)的其功能的,也就是說這種網(wǎng)絡(luò)收音機(jī)不能脫離電腦這種相對(duì)比較大的和比較昂貴的設(shè)備。為了克服PC機(jī)形式的網(wǎng)絡(luò)收音機(jī)的缺點(diǎn),本文研究了一種基于ARM嵌入式技術(shù)的網(wǎng)絡(luò)收音機(jī)的設(shè)計(jì)方案。

       該方案以ARM處理器及其外圍模塊作為硬件平臺(tái),以嵌入式Linux作為操作系統(tǒng),以Mplayer作為網(wǎng)絡(luò)播放軟件,再配合設(shè)計(jì)的用戶應(yīng)用程序,共同實(shí)現(xiàn)了嵌入式網(wǎng)絡(luò)收音機(jī)的全部功能。這種設(shè)計(jì)方法在網(wǎng)絡(luò)收音機(jī)的設(shè)計(jì)史上是一個(gè)創(chuàng)新。同時(shí),隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展,該設(shè)計(jì)將具有極好的市場應(yīng)用前景。

        本文作者創(chuàng)新點(diǎn):

  1、首次提出了用嵌入式技術(shù)設(shè)計(jì)網(wǎng)絡(luò)收音機(jī)的系統(tǒng)設(shè)計(jì)方案,極具創(chuàng)新特點(diǎn)。

  2、實(shí)現(xiàn)了Mplayer軟件在Linux系統(tǒng)平臺(tái)下向ARM9的移置。

  1系統(tǒng)的結(jié)構(gòu)及工作原理

  系統(tǒng)的層次結(jié)構(gòu)如圖1所示。系統(tǒng)以S3C2410及其外圍電路為硬件平臺(tái),以嵌入式Linux和設(shè)備驅(qū)動(dòng)程序作為系統(tǒng)的軟件平臺(tái),為上層Mplayer播放器和用戶應(yīng)用程序提供用戶接口支持[1]。在這三層結(jié)構(gòu)的支持下,共同來實(shí)現(xiàn)嵌入式網(wǎng)絡(luò)收音機(jī)的全部功能。

   圖1 系統(tǒng)層次結(jié)構(gòu)圖

  系統(tǒng)的硬件結(jié)構(gòu)框圖如圖2所示。本系統(tǒng)選用的ARM處理器是Sumsing(三星)公司的一款A(yù)RM9系列的芯片,型號(hào)為S3C2410。網(wǎng)卡芯片采用的是Cirrus Logic公司的一顆網(wǎng)絡(luò)處理芯片CS8900。FLASH芯片采用的是 K9F5608,用來存儲(chǔ)啟動(dòng)引導(dǎo)程序U-boot、內(nèi)核及文件系統(tǒng),SDRAM芯片采用的是HY57V281620,作為該系統(tǒng)的內(nèi)存。16*4的字符型液晶顯示模塊用來顯示網(wǎng)絡(luò)電臺(tái)、音頻文件名等相關(guān)信息。音頻D/A轉(zhuǎn)換芯片選用的是飛利浦公司的UDA1341芯片,該芯片具有IIS接口,可以方便的與S3C2410連接。

   圖2 系統(tǒng)硬件結(jié)構(gòu)框圖

  系統(tǒng)在Linux提供的TCP/IP協(xié)議的支持下,通過應(yīng)用程序和Mplayer控制,經(jīng)過網(wǎng)卡連接到internet上指定的網(wǎng)絡(luò)電臺(tái)服務(wù)器,下載網(wǎng)絡(luò)電臺(tái)列表。系統(tǒng)支持在按鍵的控制下的網(wǎng)絡(luò)電臺(tái)選擇和LCD上顯示電臺(tái)信息等功能。Mplayer解析出選中的電臺(tái)的IP地址后,再連接到要收聽的電臺(tái)的網(wǎng)站,系統(tǒng)便可以接收并解析出該網(wǎng)站發(fā)出的流媒體數(shù)據(jù)。系統(tǒng)將接收到的流媒體數(shù)據(jù)保存到SDRAM中。之后,經(jīng)過Mplayer的解碼,送到音頻D/A轉(zhuǎn)換芯片,即可收聽到該網(wǎng)絡(luò)電臺(tái)播放的聲音等信息。

  2 系統(tǒng)的硬件設(shè)計(jì)

  2.1 S3C2410

  本系統(tǒng)的硬件核心平臺(tái)采用的是Samsung 公司的處理器S3C2410。該處理器內(nèi)部集成了ARM 公司ARM920T 處理器核的32 位微控制器,資源豐富,帶獨(dú)立的16KB 的指令Cache 和16KB 數(shù)據(jù)Cache、MMU虛擬內(nèi)存管理單、LCD 控制器、RAM控制器、NAND 閃存控制器、3 路UART、4路DMA、4 路帶PWM的Timer、并行I/O 口、8 路10 位ADC、Touch Screen 接口、I2C 接口、I2S 接口、2 個(gè)USB接口控制器、2 路SPI,主頻最高可達(dá)203MHz[2]。其內(nèi)部結(jié)構(gòu)如圖3所示。

   圖3 S3C2410內(nèi)部結(jié)構(gòu)圖

     2.2 網(wǎng)絡(luò)接口

  系統(tǒng)的網(wǎng)卡芯片采用Cirrus Logic公司的一種局域網(wǎng)處理芯片CS8900,該芯片內(nèi)部集成了RAM、10BASE-T收發(fā)濾波器,并且提供8位和16位兩種接口。其片選信號(hào)連接到S3C2410的nGCS1,因此網(wǎng)卡的地址空間映射到0X08000000~0X0FFFFFFF。在Linux內(nèi)核中,一般都含有CS8900的驅(qū)動(dòng)程序,使用時(shí)只需修改驅(qū)動(dòng)與處理器的地址映射關(guān)系,并在配置內(nèi)核的Device Driver選項(xiàng)中,選中CS8900項(xiàng)。

  2.3 SDRAM存儲(chǔ)器

  本設(shè)計(jì)的SDRAM采用的是HY57V281620芯片。該芯片是一個(gè)數(shù)據(jù)寬度為16BIT,容量為16M字節(jié)的SDRAM。HY57V281620與S3C2410的連接圖如圖4所示。

   圖4 HY57V281620電路圖

  HY57V281620的ncs引腳接到處理器的nGCS6。由于在處理器的存儲(chǔ)空間中,字節(jié)是存儲(chǔ)容量的唯一單位。而HY57V281620的數(shù)據(jù)寬度為16位,它的每一個(gè)存儲(chǔ)單元都包含2個(gè)字節(jié)。因此HY57V281620的A0引腳接到了S3C2410處理器的地址線ADDR01上面。 HY57V281620的容量為16MB,因此它需要ADDR00~ADDR23共24跟地址線來尋址,所以,BA0~BA1引腳應(yīng)該接到ADDR22~ADDR23地址線上。

   3 系統(tǒng)的的軟件設(shè)計(jì)

  3.1 嵌入式Linux的移植

  嵌入式Linux內(nèi)核的版本很多,一般情況下版本越高,系統(tǒng)越穩(wěn)定,驅(qū)動(dòng)更完善,本系統(tǒng)選擇了2.6.18的Linux內(nèi)核。其實(shí)對(duì)于2.6以后版本的Linux內(nèi)核,對(duì)S3C2410的支持都有了很好的支持,所以移植過程都比較簡單[3]。Linux2.6.18移植到S3C2410的基本步驟如下:

  (1)下載Linux2.6.18內(nèi)核,并解壓到相應(yīng)目錄。

  (2)修改內(nèi)核頂層目錄下的Makefile文件,指明交叉編譯器。進(jìn)入Linux-2.6.18內(nèi)核目錄,輸入命令vi Makefile,找到ARCH和CROSS_COMPILE兩項(xiàng),將其修改為ARCH = arm,CROSS_COMPILE = arm-linux-。

  (3)設(shè)置PATH環(huán)境變量,使其可以找到交叉編譯工具。輸入su root,進(jìn)入root,在輸入vi/etc/bashrc,在結(jié)尾處加入以下行:export PATH=/usr/local/arm/3.4.4/bin:$PATH,然后重啟終端或重新登陸即可。

  (4) 設(shè)置Flash分區(qū)。首先要在arch/arm/mach-s3c2410/devs.c文件中添加分區(qū)信息,其次在arch/arm/mach-s3c2410/mach-smdk2410.c文件的smdk2410_devices[]的成員中添加&s3c_device_nand。這樣Linux內(nèi)核啟動(dòng)時(shí),就會(huì)對(duì)Flash分區(qū)的設(shè)置初始化。

  (5)禁止Flash ECC校驗(yàn)。修改drivers/mtd/nand/s3c2410.c 文件,找到s3c2410_nand_init_chip()函數(shù),在該函數(shù)體最后加上一條語句:chip->eccmode = NAND_ECC_NONE。

  (6)配置內(nèi)核。通過make menuconfig命令配置內(nèi)核。

  (7)編譯內(nèi)核,make zImage命令,得到Linux內(nèi)核的映像文件zImage。

  (8)制作根文件系統(tǒng)。

  3.2 Mplayer移植

  Mplayer是Linux下的一個(gè)多媒體網(wǎng)絡(luò)播放器。它的主要功能是對(duì)接收到的各種格式的流媒體數(shù)據(jù)進(jìn)行解碼,同時(shí)也完成對(duì)接收的網(wǎng)絡(luò)電臺(tái)的IP地址進(jìn)行解析的任務(wù)。Mplayer支持mp3、ogg 和wma等多種格式的流媒體數(shù)據(jù)進(jìn)行解碼,是一個(gè)功能十分強(qiáng)大的開源應(yīng)用軟件。Mplayer的移植步驟如下:

  (1)下載源代碼MPlayer-current.tar.bz2,并解壓。

  (2)為了讓mplayer支持在線播放,從而能夠播放網(wǎng)絡(luò)電臺(tái),還必須下載安裝網(wǎng)絡(luò)協(xié)議包(主要指RTSP、MMS等協(xié)議)。可從www.live555.com上下載live555協(xié)議包,解壓后配置并編譯。

  (3)配置mplayer的命令格式如下:

  ./configure --cc=arm-linux-gcc --target=arm-armv4-linux --enable-static --disable-win32 --host-cc=gcc --disable-dvdread --enable-fbdev --disable-mencoder --disable-mp3lib --enable-mad --enable-libavcodec --enable-live --with-livedir=/live555的目錄/ --2>&1 | tee logfile。

  其中,--host-cc=gcc是用來編譯一些需要在host上執(zhí)行的中間文件的,如codec-cfg。--cc=arm-linux-gcc 是用來指定交叉編譯工具。關(guān)于 --target=arm-armv4l-linux這個(gè)參數(shù)要注意的是它被分為三部分,第一部分的arm是指arch,這里設(shè)定為arm;第二部分的armv4l是指具體的版本;第三部分是系統(tǒng)平臺(tái)。--enable-static是設(shè)定靜態(tài)連接。--2>&1 | tee logfile意思是將執(zhí)行的情況在輸出到屏幕的同時(shí)記錄到logfile文件中,在控制臺(tái)下編譯比較有用。

  (4)輸入make命令開始編譯,編譯完成后在頂層目錄生成mplayer可執(zhí)行文件。

  3.3軟件主流程圖

  系統(tǒng)主流程圖如圖5所示。系統(tǒng)上電后,bootloader(U-boot)啟動(dòng),完成硬件設(shè)備的初始化, 并引導(dǎo)系統(tǒng)內(nèi)核啟動(dòng)。系統(tǒng)啟動(dòng)執(zhí)行初始化任務(wù)后,首先配置網(wǎng)絡(luò)連接,通過運(yùn)行DHCP Clieant向DHCP Server申請(qǐng)獲取本系統(tǒng)IP地址。然后系統(tǒng)自動(dòng)訪問默認(rèn)的電臺(tái)服務(wù)器,該服務(wù)器上有最近更新的世界各地的網(wǎng)絡(luò)電臺(tái)的URL地址,系統(tǒng)下載該列表,并更新上次保存的列表。然后系統(tǒng)判斷有無按鍵按下,若有按鍵按下,系統(tǒng)根據(jù)按鍵選擇相應(yīng)網(wǎng)絡(luò)電臺(tái),若在一定時(shí)間段內(nèi)沒有按鍵按下,系統(tǒng)自動(dòng)連接電臺(tái)列表的第一個(gè)電臺(tái)地址,并開始播放該網(wǎng)絡(luò)電臺(tái)。同時(shí),LCD將顯示電臺(tái)的有關(guān)信息和系統(tǒng)信息。在播放過程中,同樣可以根據(jù)按鍵來中斷、選擇網(wǎng)絡(luò)電臺(tái)。

   圖5 系統(tǒng)主流程圖

  4 結(jié)束語

  本設(shè)計(jì)基于ARM的嵌入式技術(shù),通過軟硬件等三層結(jié)構(gòu),實(shí)現(xiàn)了一個(gè)嵌入式網(wǎng)絡(luò)收音機(jī)系統(tǒng)。該系統(tǒng)克服了PC機(jī)形式的網(wǎng)絡(luò)收音機(jī)的諸多缺點(diǎn),是一個(gè)極具創(chuàng)新思維的設(shè)計(jì)。隨著網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù)的高速發(fā)展,該設(shè)計(jì)具有很好的市場應(yīng)用前景和科研價(jià)值。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美一区激情| 国产精品毛片大码女人| 亚洲欧美日韩第一区| 日韩视频在线免费| 亚洲国产精品va在线观看黑人| 午夜亚洲视频| 性欧美超级视频| 欧美一区91| 亚洲欧美第一页| 亚洲在线一区| 亚洲欧美日韩精品一区二区| 亚洲欧美日韩中文视频| 亚洲中字在线| 亚洲自拍电影| 欧美一级播放| 欧美在线亚洲综合一区| 欧美中文字幕在线观看| 久久精品30| 亚洲国产一区在线观看| 亚洲人午夜精品免费| 亚洲另类自拍| 亚洲小说区图片区| 午夜精品亚洲| 欧美一区日本一区韩国一区| 欧美在线国产| 久久一区亚洲| 欧美激情网站在线观看| 欧美日韩一区三区| 国产精品女主播| 国产偷自视频区视频一区二区| 狠狠色丁香婷婷综合| 伊人激情综合| 亚洲免费观看在线视频| 在线天堂一区av电影| 性欧美超级视频| 亚洲日本中文字幕区| 一本色道久久综合一区 | 欧美成人小视频| 欧美日韩亚洲一区二区三区四区| 国产精品免费看久久久香蕉| 国产午夜亚洲精品理论片色戒| 尤物精品在线| 日韩一级片网址| 午夜日本精品| 亚洲欧洲精品一区二区三区| 亚洲一区黄色| 久久久噜噜噜久久中文字免| 欧美剧在线免费观看网站| 欧美午夜剧场| 国产在线视频欧美| 亚洲欧洲一区二区在线播放| 亚洲一区二区av电影| 久久激情五月激情| 亚洲视频电影图片偷拍一区| 欧美在线亚洲综合一区| 欧美freesex8一10精品| 国产精品天天摸av网| 在线观看日韩av| 亚洲影视九九影院在线观看| 最新日韩在线| 欧美一区二区福利在线| 欧美国产亚洲另类动漫| 国产亚洲成精品久久| 日韩视频―中文字幕| 久久成人久久爱| 亚洲一区二区三区免费视频| 狼人天天伊人久久| 国产精品视频免费在线观看| 亚洲国产精品va| 欧美一区二区三区日韩视频| 一区二区三区成人| 老司机午夜精品视频| 国产精品视频自拍| 最新日韩在线视频| 久久精品99国产精品酒店日本| 亚洲欧美激情在线视频| 欧美国产极速在线| 国产亚洲综合在线| 中日韩视频在线观看| 亚洲精品久久久久久久久| 久久久人成影片一区二区三区| 欧美吻胸吃奶大尺度电影| 在线观看日韩一区| 午夜一区二区三区不卡视频| 亚洲午夜国产一区99re久久 | 国产欧美69| 一本色道久久加勒比88综合| 亚洲国产成人精品久久| 午夜宅男久久久| 欧美日韩日本国产亚洲在线| 亚洲国产精品日韩| 久久精品国产亚洲一区二区三区 | 欧美一区二区福利在线| 亚洲网友自拍| 欧美精彩视频一区二区三区| 精品电影在线观看| 欧美在线视频导航| 欧美一区二区视频免费观看| 国产精品久久久久aaaa九色| 亚洲欧洲一区二区天堂久久| 亚洲国产天堂久久综合网| 欧美综合国产| 国产日韩一区在线| 性欧美video另类hd性玩具| 香蕉av777xxx色综合一区| 欧美性大战久久久久| 99这里只有久久精品视频| 亚洲精品一区中文| 欧美丰满高潮xxxx喷水动漫| 在线日韩av片| 久久精品一级爱片| 久久男人资源视频| 国产一二三精品| 欧美在线观看一区二区三区| 久久成人一区| 国产日韩精品久久| 午夜亚洲一区| 久久久噜噜噜久噜久久| 国产在线不卡精品| 久久国产一区| 久久永久免费| 韩国av一区二区三区四区| 欧美在线一区二区| 久久久夜夜夜| 影音先锋久久| 亚洲乱码国产乱码精品精天堂| 欧美激情小视频| 日韩亚洲欧美精品| 亚洲一区二区三区四区在线观看| 国产精品v欧美精品v日韩精品| 在线中文字幕日韩| 亚洲欧美成人| 国产日韩欧美一区| 久久精品99久久香蕉国产色戒| 久久最新视频| 最新亚洲电影| 亚洲一区精彩视频| 国产欧美日韩一区二区三区在线观看 | 可以免费看不卡的av网站| 亚洲第一色中文字幕| 99视频精品| 国产精品嫩草久久久久| 欧美一区二区三区精品| 美日韩精品视频免费看| 亚洲精品久久久久久久久久久久| 亚洲一区二区免费看| 国产亚洲精品久久久久婷婷瑜伽| 久久gogo国模裸体人体| 欧美成人高清| 亚洲天堂免费观看| 久久天天综合| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲在线1234| 红桃视频一区| 中文网丁香综合网| 国产一区91| 亚洲精品在线观看免费| 国产精品久久久久久av下载红粉| 午夜亚洲福利| 欧美黑人在线观看| 亚洲制服av| 欧美成人午夜视频| 亚洲综合999| 欧美成人a∨高清免费观看| 中日韩高清电影网| 久久尤物电影视频在线观看| 亚洲麻豆av| 久久免费黄色| 亚洲每日在线| 久久一区二区三区av| 9色精品在线| 久久免费视频在线| 99国产精品视频免费观看| 久久久久亚洲综合| 一二三区精品福利视频| 久久久蜜桃一区二区人| 一本大道久久精品懂色aⅴ| 久久久噜噜噜久久中文字免| 99成人精品| 免费观看不卡av| 亚洲欧美精品一区| 欧美乱妇高清无乱码| 欧美一激情一区二区三区| 欧美三区在线视频| 亚洲国产精品www| 国产精品久久久久久久久| 亚洲日本欧美| 国产一区二区三区四区五区美女 | 国产欧美日韩精品丝袜高跟鞋 | 亚洲一区二区三区在线看 | 欧美日韩国产成人在线| 性欧美长视频| 欧美亚洲不卡| 亚洲日本电影在线| 国产一区高清视频| 亚洲午夜久久久| 亚洲欧洲在线一区| 毛片精品免费在线观看| 亚洲欧美亚洲| 国产精品ⅴa在线观看h|