Технический форум по робототехнике.
blindman » 20 июл 2008, 12:13
А ты для какой цели вообще это делаешь? В реальном устройстве будет 3.3В питание, и следовательно 8МГц тактовая
alegz » 20 июл 2008, 12:41
ааа )) ну я так для себя делаю вообщето

чето с восмью не выходит... надо както рассчитать таймер чтоль.... звук получается очень медленный
blindman » 20 июл 2008, 12:49
Вопрос не в том, как рассчитать таймер, а как запрограммить так, чтобы успевать читать файл и с нужной частотой выдавать данные на ЦАП
alegz » 20 июл 2008, 17:13
ну в общем запустил на 8 мгц, использовал буфер... играет... только качество малец не очень...
- Код: Выделить всё • Развернуть
UCHAR Buffer[512];
f_read(&fsrc,&tw,sizeof(TitleWave),&br);
printf("start playingrn");
while(i<tw.len_data) {
f_read(&fsrc,Buffer,sizeof(Buffer),&br);
i += sizeof(Buffer);
for(j=0;j<sizeof(Buffer);j++) {
music_data = Buffer[j];
music_send = 0;
while(!music_send);
}
}
Добавлено спустя 3 часа 44 минуты 21 секунду:кстати, может объяснит кто по схеме... как настроен был счетчик, и откуда вылезло число
0x89
blindman » 20 июл 2008, 22:52
Переделал под мегу32. Подключение - по той схеме что я приводил. Максимум что удалось выжать на 8МГц - 16Кбайт/с. Тоесть моно - 16000 сэмплов в секунду, стерео - 8000. Играет и на 32Кбайт/с, но появляются искажения - не успевает читать с карты. Проверялось с программным SPI, с аппаратным возможно будет нормально играть и 32Кбайт/с. Гарантий что будет работать никиких нет, потому что кроме меги128 есть в наличии только мега16, а у нее ОЗУ не хватает. В общем, проверяйте. На карточку в корневой каталог залить файл mono16.wav.
- Вложения
-
sound.zip
- (81.92 КиБ) Скачиваний: 68
EdGull » 20 июл 2008, 23:27
Подключение - по той схеме что я приводил.
т.е. порты те же?
nest » 21 июл 2008, 02:53
blindman » 21 июл 2008, 08:08
EdGull писал(а):Подключение - по той схеме что я приводил.
т.е. порты те же?
До, по 4 бита с каждого порта
EdGull » 21 июл 2008, 10:26
а исходник для меги32 для стерео варианта или моно?
blindman » 21 июл 2008, 13:16
Для стерео.
Ты запускал уже код? Я тут немного поправил алгоритм буферизации, выдает 32 КБайт/с.
alegz » 21 июл 2008, 15:44
кодес в студию мона?
blindman » 21 июл 2008, 15:54
alegz писал(а):кодес в студию мона?
Я же выложил код и скомпилированный hex. Кто-нибудь может проверить его на меге32? Ну нету у меня ее. Как буду уверен, что она работает, будем двигаться дальше. Чего-то не получается у меня сделать нормальный образ карты для протеуса. Вроде начинает читать файл, но после первого килобайта выдает read error. Ты вроде писал, что у тебя фат в протеусе работает. Какую библиотеку использовал? Какой компилятор? Как делал образ карты?
alegz » 21 июл 2008, 16:23
использовал ту же самую библеотеку что и ты судя по исходникам. только компилирую я в CAVR! поэтому я долго мучился чтобы заставить работать этот сорец под ним ... образ делается в WINHEX. Там есть утилита Disk Clone... выбираешь источник - диск флешки, а в качестве приемника - файл любой... его и скармливаешь в протеусе в свойствах кардридера этого...
blindman » 21 июл 2008, 16:30
Кинь сюда свои исходники посмотреть
EdGull » 21 июл 2008, 16:36
я уже допаиваю на меге32, потерпите немного...
