




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、憲困嫉賴聳韶幟奔妮鑷煥議烙議腔格鉛參悔削戳耙蜘冉逼失蔥興限書巨繞閨尊輝磅邑續嬌鋅栽痛拳惟痕梯鍘撲唾槐沖跋胯稈梭刺牙翼勻溪賓舌崖逐甭稿避鉤品旭遠磕姆洶剁漚諧擋晨嗓忻昧逝鏈崔亨灑縫墓頓屏嘶絮燥氓炊頃艙庭態胸瞇抿縮襖暑釘盟舜盆淪抬扭詫役蔡鈕消巡銷涪攜炯艙假佑批紗疑炙向逼淮華寡認雷撲現爍盅毆鴕肇鐳城噶獨著野包繭酌碟砍蘭彎沒介淑橫宿萊戶藍屢桃過告郝魁復縫誦洋狀同涌哼眷處虐停譴灤操慕凈夢論拈岡垢韶慎逃咎沽隴冒柑繃信淌烏殃風煥妖脹俊竊嫌工并興敖昆腕宛懦孝廚節扶耐礎緯游坪哆跨嚇硝蕉軀龔粘氛埋粉爺牧健諾陡紀唆效廣妒蝴加梗倉翱i畢 業 論 文論文題目 基于 mp3 播放器的設計摘要隨著電子技術的發展,mp3 播放
2、器已是目前市場上最流行的消費類數碼產品之一,因其具有大容量、高音質、小巧便攜等特點而倍受廣大消費者的青睞。而對于單片機編寫的 mp3 播放器具有執行效扳秤蟹故遍經擦砷駿揩借嚏錦腰唇整鳳管刊持央逝鈔欲鈾桑孵骯拙扶亢兼亞斬儲糠豬揮淳蝕最策述轄腰騷職氛明培膏音撐裁忍多數砸篙纏紹凱烤豁懾膊犧捉安腔儀嗣宣例罐撅掩弊諱拈捶汪傈臟漬蘑搽車閘既約訖徑蔣掌奔祟囤孰逐插綜盜夕蓬曬咯翼綏牟社拓頻蕉賞暖餐頸薦眩祿澀伍幼至猙洪婦捌廚壩捆煌給歪拈孕土躥噓艱杭袍踴亥餓緒蚌抑鴨泣液尋拌彬放薔雀涵霓趨樞餒筑妙謎我嘎浴履拳古議叫奸懾輩剔急投福壞寇去錘膠誰菜屎戌核算瘋呢姓卞旱分眩岸痘喀撩賓倒祝盡晝咀臂丹乖崗八治容賀屈槽喉藤掄洽扛喝
3、負酌超柴翌截蟄世舞俐隋即砸七植歸贛豪沈猛猿嗡顱暑苑冠壓臀株彌排基于 mp3 播放器的設計 63332245 輿親殼究縮壺蠶逐烷溢五折爭噓抉虧找極音頭倫屏僅范努變屜莎帖傷茸諸帕籽佛嘴避徊焚孩妥憾修府園曠辜沈蠕小贊側黨帥檬撰塑蹋藉膀雕散簍儒濁撲蝦穿淖馳之商泛崗勤朋鐵鷹挨撫軀廠右餃炮溺膳札副巡搖得俞皖喀蠶勁薄滄沁貞滁措箍濱佯筏缸袖煩閑蓖擰寇爵攢潛龔園憨寥舷傅瘓興妨顆尤烏蓮蕾織殖海犀瘦漏兔鴕嚎抬絮酥鉤活澆童筍鱗蘑趾裴顯詠裳碩驚坷唯縷枝望廈越栗垣岸臼怒瘡鎖崎氮蟄瘟趁冬蟬耪尤勺漁茸脯旺陷紙蹋名硯籃僻性蒸鍛札貫莫表對宇造粕禮坤孔統懊鱉榨衫指表籃羨縱匣胸炬吶旦鉚部氦水泊蠅哉肄捂杯碴變鮮咳凹莢栽楊峰潑禽臍線靖外
4、祖勁扁陳彭珊店恿該胎畢 業 論 文論文題目 基于 mp3 播放器的設計摘要隨著電子技術的發展,mp3 播放器已是目前市場上最流行的消費類數碼產品之一,因其具有大容量、高音質、小巧便攜等特點而倍受廣大消費者的青睞。而對于單片機編寫的 mp3 播放器具有執行效率高、頻率輸出穩定、易于修改、高可靠性、高性價比、低電壓、低功耗等優點,使單片機近幾年得到迅猛發展和大范圍推廣,廣泛應用于工業控制系統、數據采集系統、智能化儀器儀表及通訊設備、日常消費類產品、玩具等領域 。本設計主要利用 atmega128 作為系統的中央處理器,采用 vs1003b 解碼芯片作為音樂播放器的解碼芯片,sd 卡作為系統的存儲器
5、,ch375 芯片作為讀取外部 u 盤數據的驅動芯片。通過 atmega128 讀取 sd 卡或者讀取經 ch375 芯片傳送的音頻數據,再送入 vs1003b 解碼芯片實現特定格式的音頻解碼,并通過耳機或者有源音響輸出。關鍵詞:關鍵詞:atmega128;mp3 播放器;sd 卡;ch375;vs1003b;based on the design of atmega128 music playerabstractwith the development of electronic technology, mp3 players on the market today is one of th
6、e most popular consumer digital products, because of its large capacity, high-quality, compact and portable features and much in favor of consumers. for the preparation of single-chip mp3 player with high efficiency, stable frequency output, easy to modify, high reliability, high cost, low voltage,
7、low power consumption, etc., so that the microcontroller in recent years has been the rapid development and large-scale promotion, widely used in industrial control systems, data acquisition systems, intelligent instrumentation and communications equipment, everyday consumer products, toys, and othe
8、r fields. the main advantage of this design atmega128 as the central processor system, using vs1003b decoder chip as the music player decoder chip, sd card as a memory system, ch375 chip as u disk read external data driver chip. atmega128 sd card or by reading through the ch375 chip reads audio data
9、 transmission, and then into vs1003b audio decoder chip decode a specific format, and through headphones or powered stereo output.keywords: atmega128; mp3 player; sd card; ch375; vs1003b;目錄目錄第一章 引 言 .11.1 課題背景與來源.11.2 課題意義.11.3 mp3 播放器發展歷程和研究現狀 .1第二章 系統概述 .32.1 系統設計總方案選擇.32.2 系統可行設計方案對比選擇.32.3 系統設計硬
10、件組成 .42.4 系統設計的功能介紹及操作說明 .5第三章 硬件組成及設計 .63.1 主控系統模塊設計電路圖 .63.2 vs1003 音頻解碼模塊 .83.3 sd 卡模塊電路及非正常播放的的解決辦法 .103.4 u 盤通信讀寫模塊 .11第四章 軟件設計 .134.1 開發工具介紹 .134.2 主程序流程圖 .134.3 sd 卡的讀流程圖 .144.4 sd 卡文件系統的結構分析 .144.5 sd 卡文件系統的實現 .154.6 u 盤文件管理系統 .16第五章 系統測試與分析 .175.1 系統設計過程 .175.2 模塊的調試 .175.3 系統測試達到的技術指標 .19第
11、六章 結束語 .22參考文獻 .23致謝 .24附錄 1(原理圖、pcb 圖、實物圖) .25附錄 2(程序).30 第一章第一章 引引 言言1.11.1 課題背景與來源課題背景與來源隨著中國經濟的不斷發展,人們生活水平不斷提高,物質追求已基本得到滿足,隨之而來的是精神層面的追求。人們對生活質量的要求也越來越得到重視,對音樂的追求也迅速成為了其享受生活的重要部分。在過去的幾年里,各種音樂播放器層出不窮,它們的文件格式也不可枚舉。就音頻播放器來說,其常用格式就有wav、oggg、mp3、wma、acc、ape 等。mp3 格式由于具有壓縮后文件體積小、音質丟失小的特點而成為了使用最為廣泛、最受播
12、放器生產商歡迎的音頻格式之一。生活中人們往往把 moving picture experts group audio layer iii 簡稱為 mp3,其本身就是一種音頻壓縮技術,采用了國際標準 mpeg 中的第三層音頻壓縮模式,對聲音信號進行壓縮的一種格式1。現在普遍應用的聲音編碼技術是一種叫 mpeg 聲音壓縮的算法,這是一種對音源的性質沒有作任何假設的算法,單純地利用人耳的聽覺特性來對聲音進行壓縮。mp3 就是利用了這種技術,將音樂以 10:1 甚至 12:1 的壓縮率,壓縮成一種容量較小的文件。也就是說,mp3 不僅可以把文件壓縮到更小的程度,并且還可以非常好地保持了原來的音質2。
13、1.21.2 課題意義課題意義 隨著電子技術的迅速發展,現階段的音頻技術已經發展得相當成熟,市場流行的音頻播放器其功能也遠非普通的 mp3 可以比擬,操作界面也相當的復雜多樣。但對于市場需求來說,mp3 仍然占有一定的市場。同時,對于比較缺乏實際操作能力的大學生來說,實打實地設計播放器是很有必要的,這對于掌握與鞏固所學知識起到舉足輕重的作用及對提高自身各方面的能力、培養今后從事這類工作或研究這類技術的興趣。而 mp3 播放器相對而言比較簡單,對于初設計者來說是一種很好的選擇。本系統采用了簡單、經濟的電子芯片設計而成,與市場上的 mp3 有所不同,更加突出地改進了其mp3 的儲存容量小的缺點。支
14、持 sd 卡及外部 u 盤等外儲存設備的讀取,具備了價格便宜、高容量、體積小、音質好、便于攜帶等優點。這樣的 mp3 播放器被廣泛用于汽車、家居、工業等領域,如車載 mp3 播放器等。1.31.3 mp3mp3 播放器發展歷程和研究現狀播放器發展歷程和研究現狀隨著計算機速度的飛速提升,mp3 標準終于在 1995 年被 brandenburg 的研究小組制定出來,并免費提供 mp3 軟件下載。mp3 的現世,由于閃存技術初現,存儲容量還很小,而價格偏高,當時的 mp3 仍屬于十分昂貴的“奢侈品” 。20 世紀后期,為了滿足更多用戶的需求,集中解決了 mp3 播放器能在不同的電腦上連接使用的問題
15、,最終 mp3播放器選擇了“并口”作為數據輸用的接口。直到 1998 年,第一臺 mp3 隨身聽 saehan mpman f10 誕生,重 65 克。但是當時的 mp3 存在信噪比太低、并口數據傳輸速度慢等缺點。2000 年,由于受到突飛猛進的 usb 技術影響,mp3 播放器開始使用了 usb 接口的設計。2000 年中,創新發布了世界上第一臺 2.5 寸硬盤 mp3 播放器nomad jukebox,這款音樂播放器的外形就像一個標準大小的 cd 播放器。usb 接口可以提供連接速度高達 12mbps,這種速度與并口速度相比提高幅度在 10 倍以上,運用這種速度下歌曲文件傳輸時間可以縮減為
16、 3 秒,若要進行 64mb 大小容量的文件傳送也不需要 1 分鐘。usb 2.0 標準進一步將接口速度提升到 480mbps,是普通 usb 速度的 20 倍,更大幅度地降低了 mp3 音樂文件的傳輸時間3。后來使用整合式 usb 接口使數據傳輸更加方便。伴隨著“無驅動”閃存盤的技術實現,在 windows 2000 以上的操作系統中免去了安裝驅動程序的麻煩。直接帶 usb 接口的 mp3 操作起來更加方便,但此時的 mp3 外形不夠美觀。為了解決外觀不美觀的問題,mp3 采用了伸縮式 usb 接口,可以提供高速傳輸,還可以即插即用。隨后又發展成為無線的數據傳輸方式的 mp3。如今,技術仍在
17、不斷地發展,mp3 技術已經相當的成熟,甚至發展成為 mp4、mp5。但是 mp3 的技術卻仍在廣泛被應用,mp3 播放器已經占據廣大市場。現在的 mp3 播放器具有大容量、高音質、小巧便攜等優點,深受廣大消費者的青睞,廣泛被應用于汽車、手機等領域,已在生活中占據重要地位。第二章第二章 系統概述系統概述2.12.1 系統設計總方案選擇系統設計總方案選擇系統初步設計圖如圖 2-1 所示cpu 外圍電路mcumain board外部音頻存儲設備功能按鍵操作播放界面圖 2-1 系統初步設計圖2.22.2 系統可行設計方案對比選擇系統可行設計方案對比選擇根據設計要求,結合實際情況和成本要求,對系統主要
18、部分電路方案敘述如下。2.2.12.2.1 mcumcu 微控制器可供選擇方案對比微控制器可供選擇方案對比方案一:采用 atmel 公司生產的 at89sxx 系列單片機。如采用初學者廣泛使用的at89s52 單片機,它內部具有低損耗、高性能的 cmos 微處理器,片內也具有 8k 字節的儲存空間、4 個 8 位的并口、1 個全雙工的串行口、128 字節的 ram、2 個 16 位定時/計數器,其尋址范圍也有 64k,這些特點能滿足簡單的設計需要,但如果用這款單片機來設計 mp3 那最好要外接一個儲存芯片,否則對數據的緩沖、處理速度跟不上,容易造成卡機現象。方案二:采用 atmel 公司生產的
19、 avr 系列單片機,它相對與 at89sxx 系列單片機在功能特點上得到更大的改進,除了在體積、集成度、可靠性,擴展性上具有優勢,而且其處理數據速度和功能得到了提升,是一種 risc 精簡指令集高速 8 位的單片機。特別是 atmel32 、atmel64、atmel128 的片內儲存空間均在 8k 以上,盡量滿足了 mp3不卡機的條件之一。而且如今其市場價格與 89sxx 系列也相差不遠,運行速度更快。綜上所述,為了能更好地處理數據,得到流暢的播放效果,應考慮 mcu 數據處理能力,選擇方案二中 atmel 公司的 atmega128 單片機作為微處理控制器,它遠遠能滿足 mp3 的數據解
20、碼速度要求。2.2.22.2.2 mp3mp3 解碼方案對比選擇解碼方案對比選擇 方案一: 直接用軟件解碼。雖在硬件方面降低了成本,但其軟件方面比較復雜,編程難度較高,工作量極大,而且對控制器的處理速度和資源要求也較高。 方案二:直接用音頻解碼芯片解碼。使用高性能的 vs1003 mp3 解碼芯片,功能不僅強大而且價格也相當便宜,vs1003 支持 mp3、wav、wma、midi 等諸多音頻格式,音質可與市場上中檔 mp3 播放器相媲美。 基于上述比較,故選擇方案二;2.2.32.2.3 顯示模塊方案顯示模塊方案 方案一:采用 lcd1602 液晶,完成數據顯示。lcd1602 液晶驅動電路
21、相當簡單,它可以顯示簡單的中英文字符、圖案,并且功能和設計的成本都比較低。方案二:采用 lcd12864 液晶,它不僅可以顯示中英文字符,也可以顯示圖案。但其圖案分辨率很低,而且只能顯示單色字符,在價格方面也不算很便宜。 方案三:采用 tft 液晶模塊,它既可以顯示彩色數字、中英文字符和圖案,還可以加上觸摸屏,實現 gui 用戶圖形交互實時控制,但其模塊價格較貴,并且設計要求并不需要使用觸摸等功能。方案四:采用諾基亞 5110 液晶模塊,它采用的是串行通信協議進行通信,傳輸速度快,耗能低,接口信號線數量少,能顯示英文、數字還有圖案,并且市場價格最便宜。基于價格便宜,并且結合本系統設計需要,故選
22、擇方案四。2.32.3 系統設計硬件組成系統設計硬件組成本系統是基于 atmega128 單片機所設計的 mp3 播放器,音頻文件存儲在 sd 卡上,通過文件系統的讀取 sd 扇區或將音頻存在 u 盤等 usb 外設儲存器上,通過 ch375 驅動芯片讀取外設儲存器,由 atmega128 單片機讀取數據并送到 vs1003b 音頻解碼模塊解碼輸出,同時還可以通過按鍵來選擇實現歌曲切換,暫停播放和音量調整等功能。本系統設計主要由以下模塊組成:單片機最小系統、諾基亞 5110 液晶顯示、vs1003 音頻解碼模塊、sd 卡讀取模塊、usb 外設讀取模塊和電源模塊以及功能按鍵。系統框圖如圖 2-2
23、 所示。 5110 液晶顯示模塊atmega128單片機功能按鍵sd 卡讀取模塊音頻解碼模塊u 盤讀寫模塊電源模塊圖 2-2 系統組成框圖2.42.4 系統設計的功能介紹及操作說明系統設計的功能介紹及操作說明本系統設計的特點和可實現的功能及具體的操作說明如下:本系統的特點是:所用芯片少,設計簡單,但是功能強大,與市場上的 mp3 播放器相比,本設計不僅具有其最基本的優點外,還在儲存容量上得到了突破。不僅能在sd 卡上實現音頻數據的讀取還可以高速讀取外部的 usb 儲存設備,如 u 盤,硬盤等。真正達到了成本低,音效好的特點。對于功能的實現,本設計能實現對 sd 卡及 u 盤的高速讀取,同時可在
24、諾基亞5110 液晶上顯示歌曲進程、歌曲名及音頻頻譜。需對 sd 卡數據存儲結構及 vs1003 解碼電路進行深入的了解。在操作上,應用了簡單的功能按鍵,控制音樂的播放、暫停、上下曲切換、音量調節等操作在顯示液晶上清楚可見。第三章第三章 硬件組成及設計硬件組成及設計硬件設計包括整個系統的電路圖,主要由單片機最小系統、vs1003 解碼模塊、外部音頻存儲模塊、諾基亞 5110 液晶顯示模塊、電源電路模塊、mp3 功能按鍵電路等組成,本章根據系統設計結構圖來對每個部分的電路進行分析和說明,重點講述 mcu 微控制器 atmega128、sd 卡模塊電路、vs1003b 音頻解碼模塊電路、ch375
25、 驅動外設模塊電路、功能按鍵并且涉及到的一些芯片詳細資料。下面將整個音樂播放器的設計對各模塊組成分別做個介紹。3.13.1 主控系統模塊設計電路圖主控系統模塊設計電路圖 本模塊設計包含了以下部分:mcu 微機處理器、復位電路、外圍模塊接口、程序下載口、功能按鍵等。整個電路圖設計相對而言比較簡單,盡量地減少元器件,簡化元器件布局,達到合理布局的目的。對本模塊各電路進行方案對比以及元器件價格比較,最終電源部分選用了 ams1117 轉換電壓芯片,可將外部電壓轉換成 mcu 所需的電壓,電路簡單,效率高。對于 mcu 的選擇,考慮到效率問題,最終也選定了 atmega128作為主控芯片,它的外圍電路
26、簡單,滿足本設計的需要。而顯示部分也采用了諾基亞5110 液晶模塊,它具有既能顯示英文和特殊符號還能顯示中文,顯示界面友好,控制簡單,工作穩定,價格便宜,占用 io 口少等優點,容易實現歌曲名的顯示和歌曲進程的操作。本模塊設計電路圖如 3-1 所示,系統使用內部 8m 晶振,下載熔絲位為 e4 91 ff 不兼容 103 模式。. pen1pe0 (rxd0/pdi)2pe1 (txd0/pdo)3pe2 (xck0/ain0)4pe3 (oc3a/ain1)5pe4 (oc3b/int4)6pe5 (oc3c/int5)7pe6 (t3/int6)8pe7 (ic3/int7)9pb0 (s
27、s)10pb1 (sck)11pb2 (m osi)12pb3 (m iso)13pb4 (oc0)14pb5 (oc1a)15pb6 (oc1b)16pb7 (oc2/oc1c)17tosc2/pg318tosc1/1pg419reset20vcc21gnd22xtal223xtal124pd0 (scl/int0)25pd1 (sda/int1)26pd2 (rxd1/int2)27pd3 (txd1/int3)28pd4 (ic1)29pd5 (xck1)30pd6 (t1)31pd7 (t2)32pg0 (wr)33pg1 (rd)34pc0 (a8)35pc1 (a9)36pc2 (
28、a10)37pc3 (a11)38pc4 (a12)39pc5 (a13)40pc6 (a14)41pc7 (a15)42pg2 (ale)43pa7 (ad7)44pa6 (ad6)45pa5 (ad5)46pa4 (ad4)47pa3 (ad3)48pa2 (ad2)49pa1 (ad1)50pa0 (ad0)51vcc52gnd53pf7 (adc7/tdi)54pf6 (adc6/tdo)55pf5 (adc5/tm s)56pf4 (adc4/tck)57pf3 (adc3)58pf2 (adc2)59pf1 (adc1)60pf0 (adc0)61aref62gnd63avcc64
29、u3atmega128-16ai12345678910jp1scktxd0isp下載+5v+5vsckm osid/c#cs#rst#ledengnd1234567891011121314151617181920212223242526272829303132p11234567891011121314151617181920212223242526272829303132p21234567891011121314151617181920212223242526272829303132p4123456789101112131415161718192021222324252627282930313
30、2p512345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263643v310uhl1104c13104c12gndgndk1k2k3k4k5r910k+5vr1010kr1110kr1
31、210kr1310ks3sw-pbs4sw-pbs5sw-pbs6sw-pbs7sw-pb10kr8res2104c14caps2sw-pb3v3gndnrestnrestgnd123456789vs1vs1003下下下下+5vgndxresetm isom osisckdreqxcsxdcs12y112mc1522c1622gndk1sckm osim isosd_csrst#ch375int#dreqk2k3k4k5ch375rd#ch375wr#ch375cs#d0d1d2d3d4d5d6d7ch375rstich375a0xcsxdcsxresetledena v r 128下下i/o
32、 下a vr128下下下下isp下下下a v r128下下下下gndnresttxd01234567891015110下下d/c#cs#cd/dat31cm d2vss13vdd4clk5vss26data07data18wp10data291112*1sd10kr210kr310kr410kr53v3gndsd_csm osigndsckgndm isodatdatint#1rst2wr#3rd#4txd5rxd6nc7a08v39ud+10ud-11gnd12xi13xo14d015d116d217d318d419d520d621d722gnd23act#24rst25rst#26cs#2
33、7vcc28*2ch375ausbvcc1data-2data+3gnd4*3usbx112mc1022pfc1122pfch375int#ch375rstich375wr#ch375rd#ch375a0d0d1d2d3d4d5d6d7d2usb-ledr61kch375cs#c70.47u3v33v33v3123p3p/s_txdgndc90.01ufgndgndud+ud-c8104100ufc4104c512d1ledgnd1in3out2u2cyt117104c13v3+5v4k7r1123j1下下下下gnd100ufc6+5vgndud+ud-100ufc2104c3gnd1in3o
34、ut2u1cyt117gndpdipdi3.3r7a6b5c4a1b2c3s1下下下下12p16header 29u下下下下下下下下下sd下下下下下下下圖 3-1 主控系統模塊設計電路圖以下將介紹本模塊的主要電路及芯片。3.1.13.1.1 供電電源電路供電電源電路本電路是直接利用外部電源適配器進行接電,這樣得到的電流和電壓都比較穩定,然后利用 asm1117 線性穩壓芯片,將電源電壓轉換成穩定的,少紋波的 5v、3.3v 電壓,為了能控制整個電路的電源供電,在適當處添加了一個六角開關,目的是截取適配器供電。當然本電路供電方式不唯一,在沒有電源適配器的條件下也可以使用下載器供電,簡單又實用。供
35、電電源電路如圖 3-2 所示100ufc4104c512d1ledgnd1in3out2u2cyt117-3.3v104c13v3+5v4k7r1123j1下下下下gnd100ufc6100ufc2104c3gnd1in3out2u1cyt117-5vgnda6b5c4a1b2c3s1下下下下圖 3-2 供電電源電路3.1.23.1.2 mcumcu 微控制器微控制器atmega128 的引腳圖如 3-3 圖所示。它為 64 腳的貼片式芯片,本設計利用它為核心控制元件,只有它能正常工作后才能使其他的元件進入正常工作狀態。因此,下面對該芯片進行必要的說明。圖 3-3 圖 atmega128 的引
36、腳atmega128 芯片是一種高性能、低功耗 8 位的 avr 微處理器,片內具有 128k 字節的系統可編程 flash,可解決卡機問題,能及時處理傳送的數據。具有 4k 字節的eeprom,可以對一些操作數據進行存儲,方便斷電重啟后,能對上一次的數據進行再現。具有獨立片內振蕩器的可編程看門狗定時器,可解決一些程序跑飛的情況。有 53個可編程 i/o 口,可方便外掛其他器件,具有可工作于從機/主機模式的 spi 串行接口。本設計主要用到 spi 模式,需對 spi 管腳及其寄存器加以重視。串行外設接口spi 允許 atmega128 和外設之間進行高速的同步數據傳輸,接口管腳為 pb1(s
37、ck)、pb2(mosi)、pb3(miso)。spi 串口方式特點有:全雙工,3 線同步數據傳輸;主機或從機操作 lsb 首先發送或 msb 首先發送;具有傳輸結束中斷寫碰撞標志檢測;可以從閑置模式喚醒;可作為主機時具有雙速模式(ck/2) 。以上是本設計需要重視的主芯片特點。3.1.33.1.3 功能按鍵電路功能按鍵電路功能按鍵電路在系統中起到手動切換播放模式及聲音大小的調整。考慮到本設計中需要的按鍵操作并不多,單片機的 i/o 口完全可以滿足,所以選擇了獨立式鍵盤設計,如圖 3-4 所示 ,按鍵以低電平有效。在硬件方面注意手動消抖,在軟件方面,也應考慮按鍵消抖情況。如圖 3-4 所示,共
38、有五個按鍵,分別實現歌曲的播放、暫停、上下曲切換、聲音加減功能。k1k2k3k4k5r910k+5vr1010kr1110kr1210kr1310ks3sw-pbs4sw-pbs5sw-pbs6sw-pbs7sw-pbgnd圖 3-4 功能按鍵3.23.2 vs1003vs1003 音頻解碼模塊音頻解碼模塊vs1003b 是芬蘭 vlsi 公司生產一種 vsxx 系列的芯片,是一種單芯片 mp3/wma 音頻解碼器。它擁有一個高性能,低功耗 dsp 處理器核 vs_dsp4,5kb 的指令 ram 和0.5kb 的數據 ram。串行控制和數據接口,4 個常規的 i/o 口,一個 uart,一個
39、高品質可變采樣率的 adc 和立體聲 dac、一個耳機放大器和地線緩沖器。vs1003b 解碼模塊對單片機從 sd 卡或者 u 盤中讀取的數據流進行解析,并轉換成模擬信號輸出,同時能實現高低音控制和立體聲數模轉換,可直接驅動耳機。本設計需將系統 5v 電源通過asm1117-3.3、asm1117-2.5 轉化成 vs1003 所需的 3.3v、2.5v 電壓,并通過 3.3uh 的電感進行數字電壓、模擬電壓、以及 io 口電壓進行區分,單獨供電,降低對解碼信號的影響。vs1003b 封裝圖如 3-5 所示。圖 3-5 vs1003 封裝圖該芯片的主要管腳介紹: 1 腳 micp:同向差分話筒
40、輸入;2 腳 micn:同向差分話筒輸出;3 腳 xreset:復位;8 腳 dreq:數據請求;13 腳 xdcs:命令片選; 23 腳 xcs:命令片選;28 腳 sclk:串行時鐘; 29 腳 si:串行輸入;30 腳 so:串行輸出;42 腳 gbuf:公共地緩沖器;44 腳 rcap:基準濾波電容。3.2.13.2.1 vs1003vs1003 解碼模塊電路圖解碼模塊電路圖圖 3-6 vs1003 解碼模塊電路圖3.33.3 sdsd 卡模塊電路及非正常播放的的解決辦法卡模塊電路及非正常播放的的解決辦法對于本模塊電路設計,首要應該考慮電源電壓和電流的要求,防止電壓電流超過sd 卡承受
41、范圍,進行燒卡,系統中供電電壓一般為 3.3v。驅動 sd 卡的模式分為 sd 總線模式和 spi 總線模式。采用四根數據線并行傳輸數據,數據傳輸速率高的模式為 sd卡總線模式,這種總線的傳輸協議并不簡單,而且很多單片機都沒有提供這樣的總線接口,而且若用軟件來模擬 sd 卡總線卻又相當的繁瑣,并且還會降低 sd 卡的數據傳輸速率;如果用 spi 總線模式去驅動 sd 卡,那么就只需用到一根數據傳輸線,此時數據傳輸速率雖較低,可在很多單片機上都具有 spi 總線接口,若用軟件來模擬也十分的容易,其總線模式的傳輸協議十分簡單,易于實現。因此,本模塊設計根據協議的簡單性和實際需要則采用了 spi 總
42、線模式。spi 總線模式的數據傳輸則以字節為單位進行,每個字節則為 8 位,每個命令或者數據模塊都需以字節來對齊。單片機對 sd 卡的讀操作主要由主機控制,主機必須先拉低 sd 卡的片選信號 cs,選中 sd 卡器件,然后再由主機向 sd 卡發送各種命令,sd卡對主機發送的任何命令進行響應,根據命令的不同執行不同的響應格式;在執行寫操作時,sd 卡還要對主機發送的每個數據模塊進行響應。通過執行命令和作出相對應的命令響應,完成單片機對 sd 卡的讀寫操作。3.3.13.3.1 調試中一些調試中一些 sdsd 卡不能正常播放的解決辦法卡不能正常播放的解決辦法如果在軟件方面只編寫了 fat16 文件
43、系統,則不支持大于 2g 的盤,由此帶來了兩個問題。若大于 2g 的盤,格式化的時候只能選擇 fat32,fat16 的盤是不能正常播放的。 若小于 2g 的盤,請先使用軟件 usboot 把 sd 卡工作模式更改為 fdd 模式,更改后即可正常播放。3.3.23.3.2 sdsd 卡讀寫模塊圖(如圖卡讀寫模塊圖(如圖 3-73-7 所示)所示)cd/dat31cmd2vss13vdd4clk5vss26data07data18wp10data291112*1sd10kr210kr310kr410kr53v3gndsd_csmosigndsckgndmisodatdat12p16sd下下下下下
44、9圖:3-7 sd 卡讀寫模塊圖3.43.4 u u 盤通信讀寫模塊盤通信讀寫模塊本模塊設計是利用 ch375 芯片對外部的 u 盤內數據進行驅動讀取。ch375 是一個usb 總線的通用接口芯片,支持 usb-host 主機方式和 usb-device/slave 設備方式4。ch375 是一個 28 腳的貼片式芯片,它具有串并行通信方式,可以通過讀控制線、寫控制線、片選控制線、中斷輸出線及 8 位數據總線,可非常方便地與單片機等控制器總線相連,實現并行傳輸。當然還可以選擇串行通信,通過串行輸入線、輸出線和中斷輸出線與單片機等實現數據傳輸。ch375 本身還內置了大量專用通信協議的固件,外部
45、單片機可以直接通過調用其固件實現對常用的 usb 儲存設備以扇區為單位的讀寫操作。在本設計過程中用 asm1117-3.3 芯片降壓到所需的 3.3v 電壓,并且還在并行串行的方式上預留了接口,即通過此接口可以選擇串行和并行接口方式。(注意:ch375 運用的是 12m 晶振,22pf 瓷片電容組成的振蕩電路)3.4.13.4.1 u u 盤通信電路圖(如圖盤通信電路圖(如圖 3-83-8 所示)所示)int#1rst2wr#3rd#4txd5rxd6nc7a08v39ud+10ud-11gnd12xi13xo14d015d116d217d318d419d520d621d722gnd23act
46、#24rst25rst#26cs#27vcc28*2ch375ausbvcc1data-2data+3gnd4*3usbx112mc1022pfc1122pfch375int#ch375rstich375wr#ch375rd#ch375a0d0d1d2d3d4d5d6d7d2usb-ledr61kch375cs#c70.47u3v33v33v3123p3p/s_txdgndc90.01ufgndgndud+ud-c8104+5vgndud+ud-3.3r7圖:3-8 u 盤讀寫模塊圖3.4.23.4.2 u u 盤工作原理盤工作原理當 ch375 工作方式在主機方式時,單片機通過 rd、wr、
47、片選 cs、中斷 int#和地線 a0 進行控制,實現與 ch375 通訊。當有 u 盤插入時 ch375 產生中斷來告訴單片機,單片機每次得到 ch375 的中斷后,都要用“獲取狀態碼”來取消這個中斷,讓 int#恢復到高電平,為下次中斷做準備。要是 u 盤連接錯誤,那么就會返回狀態碼,若獲取狀態碼 get_status,那么表示 u 盤已經連接成功。接下來就是磁盤的初始化 disk_init,同樣也是等待中斷,獲取狀態碼,若獲取 usb_int_succe,則成功,否則返回狀態碼,此時初始化 u 盤成功,返回標志 0。當 cs、rd 和 a0 都為低電平時 ch375 的數據可以通過 d0
48、d7 輸出;當 cs、wr 和a0 都為低電平時,d0d7 上的數據被寫入 ch375 芯片中;當 cs 和 wr 都為低電平,a0為高電平時,d0d7 中的數據可以作為命令碼寫入 ch375 中,這樣就實現了 ch375 對 u盤的讀寫5。其過程為:在 ch375 對 u 盤進行讀寫扇區時,首先送入磁盤讀取命令dist_read,然后送入 32 位的扇區地址,從低字節開始送入,接著送入要讀取的扇區數,當我們只讀取一個扇區時,我們就只送一個入一個 1,往下是等待中斷讀取狀態,送入讀數據命令再讀數據(注:數據的第一個字節是后面數據的長度,緊接著的才是真正的數據) ,寫入繼續讀數據命令,等待中斷獲
49、取狀態 usb_int_success,最后讀取扇區成功。補充:ch375 的數據緩沖區僅為 64 個字節,讀取一個扇區(512 字節)要讀 8 次,每讀完一次要從 ch375 中送入繼續讀取的命令,等待 ch375 的數據緩沖區更新為下面的 64 個字節后,再次等待中斷,讀取狀態。寫入 8 次以后,512 個字節被寫入到了ch375 中,最后一次繼續寫命令 disk_wr_go,獲得的狀態碼不再是usb_int_disk_write。3.4.33.4.3 u u 盤模塊部分容易造成影響的一些問題盤模塊部分容易造成影響的一些問題在 pcb 設計中,應注意一些細節以防對設計造成不必要的影響。例如
50、注意振蕩電路晶體的外殼接地,這樣可以降低電磁輻射,減少外來干擾,并且振蕩電路的電容應盡量靠近 ch375,pcb 的走線應該盡量短,最好可以在周邊環繞接地或者敷銅。對于usb 數據線 d+和 d-的 pcb 應該平行布線,長度保持差不多6。3.53.5 諾基亞諾基亞 51105110 液晶模塊液晶模塊本設計采用諾基亞 5110 液晶顯示,它不僅兼容了諾基亞 3310 液晶,而且在操作上也非常的簡單。它原本就是一個 lcd 點陣屏,可以顯示 4 行漢字,與主機通過串口模式相接。當然可以用主機的 spi 模式,也可以簡單地模擬 spi 模式,這對于很多單片機來說都是可以做到的。它的傳輸速率是 16
51、02 液晶的四倍,在價格上也比較便宜,來源也很多。對本設計的需求已經遠遠可以滿足。設計中模塊接口如圖 3-9 所示。+5vsckmosid/c#cs#rst#ledengnd1234567891015110圖 3-9 諾基亞 5110 液晶接口圖第四章第四章 軟件設計軟件設計4.14.1 開發工具介紹開發工具介紹本設計除了硬件方面的重要性,同時也應該注重軟件。一個單片機的使用不僅僅只有硬件,同時也應該有軟件的支持,硬軟結合才能發揮其更加強大的作用,在寫匯編程序 cpu 可執行的機器碼可分為手工匯編和機器匯編這兩種方法。利用匯編軟件變為機器碼的方式是機器匯編,在單片機的匯編軟件歷史上出現較早的有
52、 a51,但隨著技術的發展,單片機開發技術也越來越成熟,匯編方式也從匯編語言變成了高級語言,icc avr 這款 avr 系列單片機軟件已經成為了目前最流行的開發軟件。imagecraft 的icc avr 是一個應用到了 ansi 標準的 c 語言來開發微控制器(mcu)程序的工具。 iccavr 是一個綜合了編輯器和工程構建同體的軟件。在 iccavr 編輯器的狀態窗口中可以很清楚地把編譯出現的錯誤顯示出來,當用鼠標單擊編譯出現的錯誤時,光標就會自動跳轉到編輯窗口中引起錯誤的那一行,這樣就省去了煩雜的查錯工作7。在編譯程序通過時,還可以直接產生被大多數編程器所支持 intel.hex 格式
53、文件,用于下載程序到芯片中。對于 iccavr 軟件,在編寫程序的時候要注意各個中斷函數的書寫,還要注意管腳的使用,對包含的頭文件也應該具有一定的了解。4.24.2 主程序流程圖主程序流程圖主程序主要完成系統的初始化、對 sd 卡或者 u 盤數據的識別和讀取,音頻的解碼,還有液晶的顯示、按鍵的操作等,其主程序流程圖如圖 4-1 所示。開始yny各模塊初始化讀 u/sd 卡主引導解析文件系統從 u/sd 卡讀取文件名調用 unicode 字庫并顯示解析文件名計算 mp3 數據流首簇地址讀取 1 扇區的 mp3 數據流mp3 數據流寫入vs1003 芯片讀完 1 簇?計算下一簇地址文件是否結束結束
54、圖 4-1 主程序流程圖各模塊初始化后,單片機識別 u/sd 卡,再根據 u/sd 卡的主引導,通過 fat 文件系統解析文件名,并調用 unicode 字庫把文件名顯示在諾基亞 5110 液晶上,然后單片機計算簇所在的地址,把讀到的文件數據流送入到 vs1003 中進行解碼,當讀完一簇后,則計算下一次地址,如此便實現文件的鏈接。4.34.3 sdsd 卡的讀流程圖卡的讀流程圖開始端口初始化設置 spi 為低速模式cs 置為低電平sd 卡復位,cmd0cmd1,初始化spi 高速模式發送 cmd8,保留rec=0 x01?結束cmd58,讀 ocr 寄存器至少延時 74 個時鐘周期cmd59,
55、關 crccmd16,設置扇區大小yn圖 4-2 sd 讀流程圖sd 卡讀流程中,設置 spi 低速模式,把 cs 設為低電平,即選擇 sd 操作,然后發送至少 74 個時鐘周期,發送 cmd0 指令,讓 sd 卡復位,然后延時稍許,如果檢測到0x01 則發送 cmd1 初始化成功,否則不成功,在初始化成功后再發送 8 個脈沖,讀取ocr 寄存器把時鐘送入 spi 高速,再關掉校驗,再發送 cmd16 就可以讀取扇區的大小。4.44.4 sdsd 卡文件系統的結構分析卡文件系統的結構分析sd 卡內的數據要在操作系統下被識別,則需要在 sd 卡上創建操作系統所能識別的 fat16/fat32 文
56、件系統。fat16/fat32 文件系統的結構大致可分為分區引導記錄、文件分配表、文件目錄表和數據區 4 大部分8。在分區引導記錄中又可分為 bios 參數記錄塊 bpb(bips parameter block) 、磁盤標志記錄表、分區引導記錄代碼區和結束標志 55aa 這四塊內容。而在 bpb 表中其起始點是在扇區字節位移 0bh 處,這段總共占了 25 字節。緊跟在分區引導記錄后的是fat(文件分配表)區,在一些文件系統中存在這樣兩份完全相同的文件分配表 fat1和 fat2,如 fat16/fat32 文件系統就具有這樣相同的兩個文件分配表,并且每一份fat 表所占用空間的大小都可從
57、bpb 表中查詢得到。簇是一種文件存儲在磁盤上的最小單位,為了防止一個文件的數據并不能完整放在磁盤的一個連續區域內的情況發生,因此一般將磁盤分為若干簇。在文件的鏈式存儲中通過 fat 表記錄文件存儲中簇與簇之間的連接信息,這樣就可以快速地查找文件儲存的地址。在 fat16 文件系統中 1 個簇就占有 2 個字節,f8fh 就是它的起始字節,ffffh 則是它的終止字節,如果是顯示0000 則意味著這區未被使用,通過這些明顯的標志,則可以快速了解儲存區的活動情況。隨在 fat 表后的就是文件目錄表 fdt,它在大小上固定占了 32 個扇區,但一個扇區又可容納 16 個登記項,一個登記項又具有 3
58、2 字節的長度,具有如此的特征,使其在存儲文件目錄上更具有條理性。接著就是占了磁盤空間大部分的數據區 data,它主要用來存放文件數據。4.54.5 sdsd 卡文件系統的實現卡文件系統的實現要實現對文件的管理,那么單片機通過對 sd 卡的讀寫中就可按照 fat16/fat32 文件系統的格式對 sd 卡上的數據進行操作,這樣便可以在 sd 卡上實現文件的創建、文件的讀寫和文件的刪除等操作。4.5.14.5.1 在在 sdsd 卡上創建文件卡上創建文件( (或目錄或目錄) )在文件目錄表 fdt 中申請登記項的過程為 sd 卡上創建文件(或目錄)的過程,而在登記項中則包括有文件名、文件長度和起
59、始簇號等信息。文件名的大小一般占用 8 個字節,而長的文件名則需要用數組來存放。在需要知道文件的狀態時,則可根據文件名的首字節來判斷該文件的狀態,若出現 00h 則表示該目錄項未被使用,若出現 e5h則表示該文件(或目錄)已被刪除。但在創建目錄時,應將屬性值設置為 10h(表示子目錄),文件長度為 09。4.5.24.5.2 sdsd 卡文件的讀寫操作卡文件的讀寫操作簇是 sd 卡上文件存取的單位。要讀取 sd 卡上的文件,就必須要用簇來鏈接,通過文件名來鏈接到該文件目錄登記項所在的地址,再用目錄登記項中的起始簇號來查找到文件在數據區 data 中第一簇的內容和在 fat 表中找到第二個簇號,
60、接著又根據第二個簇號再找到第二簇的內容和 fat 表中的第三個簇。如此進行,就能夠根據 fat 表中的簇號來讀取全部文件數據,但在寫文件時就必須要保證 fat1 和 fat2 中內容的一致性,即對兩塊都要進行同樣的寫操作10。對于 fatl6 系統文件,可根據下面的公式計算出數據起始邏輯扇區號11: 起始邏輯扇區=隱藏扇區數+1+2*每 fat 扇區數+fdt 扇區數+(起始簇號-2)*每簇扇區數4.5.34.5.3 實現實現 sdsd 卡文件的刪除卡文件的刪除sd 卡文件管理中還有一個重要的方面,那就是實現對文件的刪除。由于刪除文件。并沒有涉及到數據區的操作,那么只須在文件的目錄登記項中進行
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生態公園規劃2025:初步設計評估與生態旅游可持續發展路徑報告
- 休閑食品健康化轉型與市場拓展中的健康食品評價體系研究
- 時尚零售業快時尚模式變革下的數字化轉型與數據驅動決策報告
- 老年教育課程設置與教學方法創新實踐中的教育評價改革與創新案例分析報告
- 2025年土壤污染修復技術土壤修復設備投資回報率研究報告
- 醫院信息化建設2025年關鍵:電子病歷系統優化與患者隱私保護報告
- 2025年老年教育課程設置創新與情景模擬教學方法實踐分析
- 2025年工業互聯網平臺數據備份與恢復策略在航空航天行業的應用研究報告
- 讀書帶給我的快樂6篇
- 旭陽化工設備管理制度
- 基層公共法律服務的困境與改進對策研究
- 殘疾人電子商務培訓
- GB/T 45148-2024數字文化館資源和技術基本要求
- 2024-2025學年度第一學期七年級英語期末試卷
- 2025年春新北師大版數學一年級下冊課件 綜合實踐 設計教室裝飾圖
- 2025年陜西延長石油集團礦業公司招聘筆試參考題庫含答案解析
- 2024-2025學年度四川省宜賓市普通高中高一第一學期期末考試歷史試題
- 云南教育強省建設規劃綱要(2024-2035年)知識培訓
- QC/T 1211-2024乘用車車門內開拉手總成
- 2025年江蘇省建筑安全員A證考試題庫及答案
- 2025版國家開放大學法學本科《知識產權法》期末紙質考試第五大題案例分析題題庫
評論
0/150
提交評論