Хочу замутить "пищадку" вав файлов на АВРке. Собсна вавки будут лежать на флешке, а звук выводиться через ШИМ (качество не критично ). Никто не видел подобных проектов. Как .wav выводить через ШИМ ?
А в чем проблема? Как выдать на ШИМ нужную скважность или что?
Добавлено спустя 1 минуту 48 секунд: Допустим у вас дискретизация 8 бит, 44КГц, 44000 раз в секунду ставите прерывание и в нём берете очередной байт и выставляете в него скважность ШИМ. Готово.
Или как из ШИМа сделать аналоговый выход? RC-фильтр ставьте.
Ну я не знаю... Планирую пищать звуки R2D2... Просто хотелосьбы все на одном контроллере (ну дисплей там на тиньки... но это не то). Можно конечно Мегу8 вставить для этих целий, но чтото я не уверен, что у неё флеша хватит... с флехой ведь работать...
Флэша хватит, если постараться. У меня была проблема с ОЗУ - 1KiB было маловато для буферов. Но для воспроизведения с низким качеством (но все же лучше чем с ШИМ) думаю будет достаточно
Да, еще забыл - у меня программа написана в расчете на тактовую частоту 8 МГц. Если будет 16 МГц - читать с карты можно будет быстрее, соответственно и качество выше.
Будет 16. У меня от 5в питается все. http://eldigi.ru/site/house/18.php Поразбираюсь с этим. Написано проша занимает 5,2кб памяти Нужно прикрутить I2C и впуть!
Я тестировал на меге16, потом переписал на мегу32 - ЭдГулл запускал на ней. Но как я уже говорил, можно ужаться в мегу8. Исходники ищи в теме про звуковую карту для минибота. Возможности для оптимизации там есть - например использовать только моно, подключить ковокс к одному порту, а не раскидывать по нескольким, как у нас. И нужно будет удалить из библиотеки FAT неиспользуемые функции.
Можно уложиться и в мегу8, причем, для воспроизведение с флеш-карты, отформатированной под FAT16/FAT32 wav-фрагментов будет достаточно и половины flash-памяти меги8. Пример: http://trol.nm.ru/sch/zvonokmmc/