最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

基于ATMEGA8L的MP3播放器

作者:dadodo 欄目:單片機
看看
 

2樓: >>參與討論
dadodo
象那么回事,好!
全改成貼片元件就更小了

3樓: >>參與討論
hsb_yq
我也想玩
本來想用AT89C51SND1來的,但現(xiàn)在看見你的挺不錯的,能不能給點資料?

4樓: >>參與討論
hsb_yq
或者哪里有套件賣?
 
5樓: >>參與討論
abc2001

 
6樓: >>參與討論
haikang
能不能給點資料學(xué)習(xí)?
 
7樓: >>參與討論
masashinakayama
趕緊加褲子!。。。!
好東東
我頂


8樓: >>參與討論
tangzzbb
做成貼片的并扣上殼子不就可以賣了嗎??
 
9樓: >>參與討論
su_mj000
這是我剛做的一款MP3播放器(純粹是玩)
此前曾用STA013(不帶DAC)做過兩款,音色都挺好,令人滿意.

傳上電路圖,其實硬件蠻簡單的吧!?

相比之下,軟件就顯得難點.大容量貼片電容太貴,所以就不采用了.

http://www.21icsearch.com/buzi/upimage/upfile/20048131447270.pdf

忘了說明,我用的是WINAVR C編譯,沒使用匯編。

剛查了一下器件資料,發(fā)現(xiàn)ATMEGA48只有512BYTE的RAM,所以
無法使用(MMC/SD以及FAT的每一個基本塊是512字節(jié),緩沖至少
得消耗512字節(jié))。



* - 本貼最后修改時間:2004-8-14 2:06:30 修改者:su_mj000

10樓: >>參與討論
crc
正點,頂!
 
11樓: >>參與討論
crc
若加上USB,直接由電腦下載到SD重正!能否開放源碼?
 
12樓: >>參與討論
money9805
不錯不錯
 
13樓: >>參與討論
阿里晃晃
佩服
 
14樓: >>參與討論
cgsh7756
連接不到。
連接不到。

15樓: >>參與討論
avr
有時是比較難連,里面有讀SD/MMC卡的WINAVR的源代碼。
 
16樓: >>參與討論
Asnake
真正的DIYer,我頂。PFPF
PFPF可惜不好帶著跑。否則也想要個套件來試試:)

17樓: >>參與討論
yfang2
VS1001K
VS1001K芯片國外幾乎找不到。!

18樓: >>參與討論
aealeen
佩服,佩服。!是個好東西
 
19樓: >>參與討論
shaozh
漂亮
 
20樓: >>參與討論
qjy_dali
很不錯,支持一下
 
21樓: >>參與討論
jsan
su_mj000:能否介紹VS1001K的代理商
我也想玩MP3不過一直找不到VS1001K,也不知道什么價,能否告知?

22樓: >>參與討論
fleas
軟件
請教軟件方面是如何實現(xiàn)的呢?

23樓: >>參與討論
su_mj000
謝各位捧場
硬件電路大家都看到了,應(yīng)該說是很簡單的.

記得VS1001K解碼器是荷蘭的一家公司的產(chǎn)品(已不是最新品種).
SOIC28管腳,DIY起來較容易.里面集成了DAC和耳機驅(qū)動,比較
理想.并且有不少DSP的功能(如音量調(diào)節(jié),高低音提升等).我不
知道國內(nèi)是否有代理商,國外的零售價格是19~20美元/片,通過
網(wǎng)上定購.

總體上,軟件也不算復(fù)雜.除了FAT文件系統(tǒng)部分較難一點(對有
經(jīng)驗者其實也不難),其他一點都不算新奇和獨特(如按鍵讀取,
定時,軟件SPI).FAT文件系統(tǒng)部分大約為3.5KB,只有讀取功能.
是我以前為公司設(shè)計一個產(chǎn)品(用MMC)時寫的,現(xiàn)在把寫功能部
分省略了(我不便公開這部份源代碼).現(xiàn)將"main.c"文件附上.
由于是弄著玩,比較粗糙,有些功能還沒做進去(如FAT12支持),
而且還有一些廢碼,見笑了!

#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>
#include <avr/signal.h>
#include <avr/ina90.h>
#include <stdio.h>
#include <string.h>

#include "define.h"
#include "vs1001.h"
#include "lcd.h"
#include "timer.h"
#include "key.h"
#include "lib.h"
#include "spi.h"
#include "mmcspi.h"
#include "mmcfile.h"
#include "uart.h"
#include "patch.h"
#include "ctrl.h"

static u08  buf[9];

void InitVS1001K (void);
void DisplayFileInfo (FileDesc_t *fp, u16 index);
u16  MP3MusicCnt (void);
CHAR PlayMusic (FileDesc_t *fp);

#define    UPDATE    0x01
#define PLAY    0x02
#define NOW        0x04

#define SPI_BUF_SIZE    128
//static u08 spi_buf[TMP_BUF_SIZE];
u08 *spi_buf_ptr;
u08 spi_buf_len;

///////////////////////////////////////////////////////////////////////////
int main (void)
{
    FileDesc_t *fp = fp;
    u16 i, music_cnt, t = t;
    CHAR flags = 0;

//    sbi (WDTCR, WDCE);
//    cbi (WDTCR, WDE);

    WDTCR = 0;            // disable Watchdog.

    sbi (GICR, 1);        // IVSEL = 1;
    cbi (SFIOR, PUD);    // enable internal pull-up RESISTOR

    TMR0_Init ();        // init. of Timer0
    sei ();                // set I bit in Status Reg.
                        // to enable SYSTEM interrupt

    MCUCR |= 0x03;        // INT0: raiding edge interrupt

    KEY_Init ();        // init. of Keypad
    SPI_Init ();        // init. of SPI interface
    LCD_Init ();

    LCD_SlideStrROM (0, PSTR("Hello,  "));
    LCD_SlideStrROM (1, PSTR("MP3-Lite"));


    sbi (PORTB, 0);        // RESET pin = High
    sbi (DDRB,  0);


    for (;;)            // *** endless loop here ***
    {
_main_loop:
        TMR0_DelayMs (200);

        if ( MMC_Init () != MMC_OK )
        {
            LCD_DisplayStrROM (0, 0, PSTR("Mem card"));
            LCD_DisplayStrROM (1, 0, PSTR("missing!"));
            continue;
        }

        if ( FILE_InitEntry () != FILE_OK )
        {
            LCD_DisplayStrROM (0, 0, PSTR("Format  "));
            LCD_DisplayStrROM (1, 0, PSTR("error!  "));
            continue;
        }

        LCD_DisplayStrROM (0, 0, PSTR("Search  "));
        LCD_DisplayStrROM (1, 0, PSTR(".. music"));

        itoa_fill (buf, music_cnt = MP3MusicCnt (), 4, '0');

        LCD_Clear ();
        LCD_DisplayStr       (0, 0, buf);
        LCD_DisplayStrROM (1, 0, PSTR("music.  "));

        // wait for any key pressed ...
        KEY_Wait ();

        i = 1;
        flags = 0;    // clear all flags

        while ( music_cnt != 0 )
        {
            if ( !(flags & UPDATE) )    // need to update DISPLAY on LCD?
            {
                flags |= UPDATE;

                LCD_Clear ();
                fp = FILE_FindFile (i);

                if ( fp == NULL )
                {
                    LCD_DisplayStrROM (1, 0, PSTR("File err!"));

                    KEY_Wait ();
                    goto _main_loop;
                }

                DisplayFileInfo (fp, i);
                t = Timer0;
            }

            SWITCH ( KEY_GetKey () )
            {
 
24樓: >>參與討論
shnd
請問哪里能買到VS1001K芯片?謝謝!
 
25樓: >>參與討論
sain_gl
VS1001K是歐洲一家公司的ASIC,國內(nèi)沒有代理
 
26樓: >>參與討論
phz0008
樓主,能提供著東西的PCB嗎??
我向做一塊玩, 郵箱phz0008@163.com

27樓: >>參與討論
qwernet
樓主
能不能提供avr讀CF卡的代碼?我自己想做,但只有CF卡,沒有SD卡。
j820619@msn.com

28樓: >>參與討論
jsan
臺灣網(wǎng)站也有人用VS1001K
但在大陸市場怎么找也找不到,20美元,天價呀!

29樓: >>參與討論
layman

OOOOO!行啊!

30樓: >>參與討論
hjr_814
DIY感謝你!!!!
好東西!!!

31樓: >>參與討論
lufeijian
一個字“勁”!
不錯!太好了!

32樓: >>參與討論
y6053
能給我具體點的方案嗎?謝謝了哈
    我是新的電子愛好者,正著手作一個基于AVR單片機的MP3。感覺你的設(shè)計很棒。謝謝了哈,能交個朋友嗎?

33樓: >>參與討論
su_mj000
回復(fù)
收到數(shù)位愛好者的即時信息及EMAIL,曾試圖回復(fù),不知
各位收到否。并再次對各位的捧場致謝。

(1)再次強調(diào),此款MP3播放器的難點主要在MMC/SD驅(qū)動及
FAT文件部分(包括子目錄搜索等)。再具體點說,是MMC/
SD的最底層通訊部分。SANDISK公司有詳細的說明可下載。
對于欲使用CF和SMART-MEDIA存儲卡的朋友,其軟件應(yīng)
該容易得多(但ATMEGA8的I/O引腳太少,恐怕就沒法支持,
得使用ATMEGA16)。

(2)本款MP3播放器的制作旨在提高興趣,其實用性恐怕不
高(但可以放在汽車內(nèi)使用)。但當(dāng)你用如此簡單的電路做
出一款MP3播放器(音質(zhì)也甚佳)時,你可能會有一種成就感!

(3)本設(shè)計之所以采用ATMEGA8L而非它種MCU(如PIC),主要
是AVR的結(jié)構(gòu)能支持程序的遞歸。用它實現(xiàn)FAT子目錄的搜索
非常爽。其次是它的運行速度令人側(cè)目(這點也很要緊。使用
片內(nèi)RC振蕩,8MIPS)。另外WINAVR的免費C編譯也是我鐘愛
之一。還有就是AVR的下載操作及制作極其簡單且可靠(我自己
做了一個下載器)。網(wǎng)上DIY的MP3播放器有多種款式,大都采
AT90S8515,也有采用PIC16C877的。其大部分還使用了片
SRAM,結(jié)構(gòu)過於復(fù)雜。采用28腳MCU的方案還沒見過。

(4)本MP3播放器軟件的中心思想是力求MMC/SD至VS1001K的數(shù)據(jù)
通道的通暢、高效。這一點對支持高位流(>256Kbps)的MP3文件
播放尤其要緊。

(5)普遍反映VS1001K芯片難得、且價格高昂?峙逻@是阻礙各位
實踐的關(guān)鍵問題。(VS1001K是芬蘭的一家公司的產(chǎn)品)也許STA013
(+CS4334)可以成為各位的第二選擇。兩者的音質(zhì)都很好。但后者
的外圍器件明顯增多。

(6)21IC壇是個交流的好場所。愿意平心靜氣、相互尊重的發(fā)言者
都是我的朋友。



34樓: >>參與討論
fsclub
好!
什么地方有SD/MMC的規(guī)范?找了半天都是要米的.
你說的SANDISK上有下載,可是找不到啊!大哥,能不能發(fā)一份:
fsclub@yeah.net

35樓: >>參與討論
tiger_h
GOOD
very GOOD

36樓: >>參與討論
hao8850
高手阿,強烈關(guān)注
 
37樓: >>參與討論
zhao74
確實,關(guān)鍵是VS1001.html">VS1001,這個芯片的MP3我關(guān)注很長時間了
這個芯片太難找了,其實主要是他實現(xiàn)解碼和播放,
MEGA8的作用是 讀取SM卡 把內(nèi)容送到 VS1001 然后VS1001解碼播放

網(wǎng)上還有更多的成熟設(shè)計 如 USB,背光,CDROM,硬盤都提供源碼和版圖。
問題就是 VS1001.html">VS1001不好弄 

38樓: >>參與討論
bigbenben
可否發(fā)個pcb圖?
呵呵,已經(jīng)給您發(fā)了消息。冒昧的重復(fù)一下,能把pcb圖發(fā)一下嗎。想做板研究一下。
isoccer@tom.com

39樓: >>參與討論
fsclub
PF樓主!
偶費盡心機得到10片VS1001K,SOIC-28那種,目前還沒有拿到,9月10那天國外的朋友已經(jīng)用航空郵件寄出,估計本周就能收到了!
目前手里有一片MEGA128,還有一片F(xiàn)877,這兩種方案都有現(xiàn)成的程序和PCB.但沒見過樓主這么簡單的,現(xiàn)在正在啃MMC的規(guī)范,感覺很難,FAT更難了,FAT32就更是可望不可及.
樓主,交個朋友吧,能不能把你的全套資料發(fā)一份給我好嗎?
fsclub@yeah.net

謝謝!

另外,手里還有一套MAS3507DAC3550.這個太復(fù)雜了.

40樓: >>參與討論
weihua
MAS3507DAC3550
應(yīng)該比較好,音質(zhì)較好!

41樓: >>參與討論
missionhou
強。∧荛_放源代碼嗎?供學(xué)習(xí)學(xué)習(xí)。
強。∧荛_放源代碼嗎?供學(xué)習(xí)學(xué)習(xí)。

42樓: >>參與討論
su_mj000
再說幾句
收到數(shù)封關(guān)于本款MP3播放器郵件及詢問,在此一并作答。

(1)我設(shè)計、制做的這款MP3播放器原本旨在自娛自樂,沒打算
出售套件什么的(配置套件得相當(dāng)?shù)耐顿Y,得冒風(fēng)險);受某些兄臺
的啟示,不排除將來有此作為。

(2)PCB板的設(shè)計須得符合器件的尺寸、形狀。若購不到同樣的另件,
我的PCB就是垃圾了(關(guān)鍵的零件有MMC/SD卡座,LCD和耳機插座等)。

(3)我以為本壇的意義在于交流心得以及相互排難解疑。換句話說,是
為了提高技藝和啟示;而不在于復(fù)制、拷貝他人的具體設(shè)計。又由于部
份程序與我目前所效力的公司有關(guān)。綜上述理由,我只好對索求全套設(shè)
計資料的兄弟們說聲抱歉了。(我以為,本設(shè)計最有價值的是那張圖紙。
高手們以為如何?)

(4)MAS3507DAC3550我沒用過,無法評價其性能。但我一瞧見它們
的引腳如此之多就無興趣了(好像還得加DAC)。SV1001K的音質(zhì)比我原
先想象的要好,令我滿意。此外,它的緩沖RAM比STA013的大,這對支
持高位流(>256Kpbs)的MP3文件播放極有利。

(5)若用ATMEGA128做本款設(shè)計,就顯得太奢侈了!如果僅支持CF或
SM的話,我想ATMEGA16就夠了。ATMEGA128足夠支持IDE的硬盤或
光驅(qū)了(ATMEGA32或許就夠了)。PIC16F877大概只能支持128Kpbs
的MP3文件,因為它的速度比不上AVR。

(6)剛見到有人提出是否能用AVR進行MP3文件的解碼。我很欣賞這一大
膽的設(shè)想。但根據(jù)我的體會,AVR好像無法勝任此重負。

(7)有幾位兄弟提出交友,使在下受寵若驚,倍感榮幸!本人雖出道
已久。但平日里疏于習(xí)‘武’,缺乏上進心,功力進步甚慢!充其量
只具中等水準(zhǔn)吧。自忖難以給人有什么真正的幫助。還是網(wǎng)上以‘壇’
會友吧。

(8)受幾位啟發(fā)和鼓勵,下一步就是補充電源部分,將全部設(shè)計裝進
一小盒中 --- 真正的隨身聽。全部細節(jié)已基本在腦中成形,唯獨對
LCD是否能在3.3V下工作缺乏把握(誰有此經(jīng)驗?)。當(dāng)然了,什么
時候才能將想法變成事實又是另回事了。





* - 本貼最后修改時間:2004-9-15 7:56:49 修改者:su_mj000

43樓: >>參與討論
xcy8011
公開吧。。!
 
44樓: >>參與討論
123654789
給點資料學(xué)習(xí)吧!
su_mj000兄弟。∧懿荒芙o點資料學(xué)習(xí)?

45樓: >>參與討論
eyeviewtr
有辦法搞到
有個IC代理商可以搞到,但是有最小訂量要求,不如組織一下大家合買,反正每人也不會要很多

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
有沒有辦法把啟動文件重新定位
馮若依曼,哈佛結(jié)構(gòu),CISC,RISC
[求助] 在AVR Studio里如何看到 靜態(tài)變量 的值?
看門狗問題見程序
手冊居然有錯誤!
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 udpf.com.cn 浙ICP證030469號