реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
Ivan Kuznetzov
сообщение May 20 2009, 09:58
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 307
Регистрация: 6-02-08
Из: Россия, Екатеринбург
Пользователь №: 34 798



Отправляю с помощью меги128 поток из AT45DB041 в VS1033 - последняя молчит...

P.S.
Раньше с VS1011 все работало... Где грабли?


--------------------
Разработчик
Go to the top of the page
 
+Quote Post
Ivan Kuznetzov
сообщение May 21 2009, 03:52
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 307
Регистрация: 6-02-08
Из: Россия, Екатеринбург
Пользователь №: 34 798



Чуть не забыл: датафлеш и VS1033 сидят на одной SPI, CS, естественно разные.

Косяк я все-таки решил вот как:
1) Читаю из датафлешки страницу в 264 байта и пишу ее в массив
2) Шлю массив в VS1033, через каждые 33 байта проверяю DREQ - пашет отлично!

Код
extern unsigned char Buff[264];


void Voiceout(unsigned int Startpage, unsigned int Endpage)
{
unsigned int Page_mem, temp;

vs_write(VS_MODE,0x0804);
vs_setvolume(15);

for (Page_mem = Startpage; Page_mem<Endpage;Page_mem++)
{
    ENABLE_DF();
    delay_us(1);

    SPI(MAIN_MEMORY_PAGE_READ2);                 //command Current_page_read
        
    SPI(Page_mem>>7);
    SPI(Page_mem<<1);
    SPI(0x00);

    SPI(0x00);                          // write don't care byte
    SPI(0x00);                          // write don't care byte
    SPI(0x00);                          // start at buffer address 0
    SPI(0x00);                          // write don't care byte

    for (temp=0;temp<264;temp++) Buff[temp]=SPI(0xFF);
  
    DISABLE_DF();
    
    for(temp=0;temp<sizeof(Buff);temp+=33) // пересчет байт по сектору
    {
    while (!(DREQ));                            
    vs_stream(&Buff[temp],33); // если не подошли к концу файла то выведем (отдадим) байт
    }
}
  
delay_ms(100);
vs_setvolume(vol_ee);
}


Вопрос к спецам - можно ли обойтись без буфера в 264 байта? - а то памяти жалко ((

Сообщение отредактировал Ivan Kuznetzov - May 21 2009, 03:55


--------------------
Разработчик
Go to the top of the page
 
+Quote Post
Григорий2000
сообщение May 21 2009, 07:39
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 77
Регистрация: 13-03-06
Пользователь №: 15 210



Уважаемый! Извини может не в тему... тут мало отвечающих по этой группе м/сх(может коммерческие тайны и т.п.)
Не подскажешь ты не регулировал громкость "на лету" во время воспроизведения? Со звуком все впорядке?
По твоему вопросу не отвечу, поскольку сам на vs1011 сижу(или она на мне...)
Go to the top of the page
 
+Quote Post
Ivan Kuznetzov
сообщение May 22 2009, 12:03
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 307
Регистрация: 6-02-08
Из: Россия, Екатеринбург
Пользователь №: 34 798



Цитата(Григорий2000 @ May 21 2009, 13:39) *
Уважаемый! Извини может не в тему... тут мало отвечающих по этой группе м/сх(может коммерческие тайны и т.п.)
Не подскажешь ты не регулировал громкость "на лету" во время воспроизведения? Со звуком все впорядке?
По твоему вопросу не отвечу, поскольку сам на vs1011 сижу(или она на мне...)

Громкостьу меня, конечно же, регулируется плавно, "на лету", без рывков в звуке (иначе что это за плеер был бы) - это было сделано еще во времена vs1001, с новыми м/c тоже хорошо работает.
Регулиорвать ее надо в перерывах между отправкой 512-и байт звукового потока в vs-ку

Сообщение отредактировал Ivan Kuznetzov - May 22 2009, 12:07


--------------------
Разработчик
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 7th July 2025 - 15:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.0136 секунд с 7
ELECTRONIX ©2004-2016