Музыкальный Звонок На Mmc/sd Карте
#1
Отправлено 25 Май 2010 - 22:23
1. как выставить для даннйо схемы фьюз биты , а то автор не указал.
2. При прошивании микры , нужно вешать кварц на 16 мгц и 2 кондера на 20 пф? или же от внутреннего генератора?
И есть у кого нить прошивка скомпиленная уже в .hex?
И кто нить вообще собирал данную конструкцию , какие отзывы? Заранее спасибо)
#2
Отправлено 28 Май 2010 - 20:00
2. При первой прошивке (если МК новый) то он прошёться. После прошивки фьюзов уже нужен будет кварц для новой перепрошивки.
3. Прошивка есть в архиве, смотри внимательней.
#3
Отправлено 02 Июнь 2010 - 00:29
Как изменить программу, чтобы их выбирать индивидуально, соответствующей кнопкой ( понятно, что через комбинации входных портов ).
Если не ошибаюсь, возможно до 128 комбинаций?
Очень надо!
#4
Отправлено 06 Июнь 2010 - 14:06
Если взять один целый порт для выбора мелодий то получишь 255 возможных вариантов. Для 40 вариантов достаточно взять 6 пинов одного порта (а не все 8).
#5
Отправлено 13 Июнь 2010 - 00:49
Admin (6.6.2010, 14:06) писал:
Если взять один целый порт для выбора мелодий то получишь 255 возможных вариантов. Для 40 вариантов достаточно взять 6 пинов одного порта (а не все 8).
Боюсь, сам не смогу. А очень надо.
Если можете, помогите.
И если не затруднит, можно в личку кинуть коментарии где, для чего и что нужно сделать. Это моя первая конструкция на контролелре.
Декодер 8 на 255 сам осилю, на 1561.
А с использованием внутреннего АЦП можно сделать, как здесь () ?
И есть ли преимущество с точки зрения помех и надёжности срабатывания? Всё таки 2 провода до клавиатуры будет идти. 1,5 метра в экране потянет?
#6
Отправлено 17 Июнь 2010 - 20:17
Сейчас со временем сильнейшие проблемы, если не к спеху потом покапаюсь в коде.
#7
Отправлено 18 Июнь 2010 - 09:58
Admin (17.6.2010, 20:17) писал:
Сейчас со временем сильнейшие проблемы, если не к спеху потом покапаюсь в коде.
Если осилит 128, думаю, должно хватить, ужмёмся. На первом этапе вообще необходимо около 60. Подожду.
Есть контроллер под поверхностный монтаж ATMEGA32A AU. Развел плату, пока под исходную схему.
добавил кондёры на кварц и на базу транзистора. А так же стабилизатор 3,3. програмирование предусмотрел через переходник вместо ММС. Собрал программатор Громова.
#8
Отправлено 18 Июнь 2010 - 13:20
В коде есть строчки :
__flash char FileNames [10][11] =
{
"muson01.wav","muson02.wav","muson03.wav","muson04.wav","muson05.wav",
"muson06.wav","muson07.wav","muson08.wav","muson09.wav","muson10.wav"
};
Это масив имён файлов. Т.к. нам нужно файлов больше то имена надо добавить. И ещё лучше сократить имя файла.
В итоге получим нечто в роде этого:
__flash char FileNames [99][7] =
{
"m01.wav","m02.wav","m03.wav","m04.wav","m05.wav","m06.wav","m07.wav","m08.wav","m09.wav",
...
"m91.wav","m92.wav","m93.wav","m94.wav","m95.wav","m96.wav","m97.wav","m98.wav","m99.wav"
};
Вместо троеточия нужно заполнить соответствующие имена файлов.
Заменив это в коде получите то, что и надо было.
Если переменная play авна 1 то воспроизводится мелодия с номером song. Он может равняться от 0 до 98
0 - мелодия m01.wav
98 - мелодия m99.wav
Если переменная gotoNextSong равна 1 то воспроизведение текущей мелодии останавливается и
начинает воспроизводится мелодия с номером song (если при этом play авен 1)
#9
Отправлено 21 Июнь 2010 - 03:05
Ну 128 тоже многовато, проблема в том что каждая кнопка должна изменять сигнал на 2.56 / 128 = 0,02В А резисторов с такой точность вы найти не сможете. Думаю 20-30 кнопок это предел.
Не совсем понятно. При наличии 1% резисторов, например, 10 ком, сколько кнопок можно получить?
#10
Отправлено 21 Июнь 2010 - 10:07
#11
Отправлено 22 Июнь 2010 - 17:45
Почему спросил сколько клавиш на 1% резисторах. 0.02 В при опорном 2,56В, это шаг 0.78%. при 64 клавишах шаг 1,5%
Предположим, наверняка можно получить 36 кнопок (это шаг 2,77%), хотя можно и 7х7 (2.04%).
Тогда предлагаю изменить схему. ЦАП для звука включить на порт PC, а матрицу клавиатуры 6х6 подключать на РA0. В дальнейшем, для расширения клавиатуры мультиплексировать до 8 линий.
Таким образом, количество кнопок может расширяться до 288. Этого точно хватит.
Прокомментируйте?
Кстати, в ATmega32 исполнения TQFP в составе есть входной ОУ с Ку =10 и 200.
Выход ЦАП можно подключить к нему, а как с ОУ вытянуть сигнал на эммитерник для нагрузки.
#12
Отправлено 23 Июнь 2010 - 19:09
Для того, что бы схема нормально работала шаг 0.02 наверное всё же мал. Надо ведь учитывать и помехи, и длину провода до клавиатуры.
В этой матрице шаг между кнопками 1 и 2 в шестой строке равен
2,56*(100/(100+43+1)-100/(100+43+1,5)) = 0,0061 Что очень мало.
Надо бы изменить номиналы резисторов.
такой вариант решения тоже достаточно не плох. Можно сделать и так. Надёжнее будет.
Эторт ОУ для АЦП работает, выход никак не вытянешь. Да и не нужен он тебе.
#13
Отправлено 23 Июнь 2010 - 22:54
Необходимо заложить номиналы так, чтобы шаг был примерно одинаков.
Остановимся на этом варианте, матрица 5х5? Рассматривать варианты на таймере не стоит.
Я делаю плату на корпус TQFP, переношу ЦАП на порт С, а клавиатура будет на порт А, матрица по 25х8=200, тоже не плохо. Всё помещеается.
Надеюсь на помощь в доработке кода.
Есть где нибудь русское описание 32? Скачал 347 стр на английском.
У меня ATMEGA32A AU.
#15
Отправлено 24 Июнь 2010 - 13:59
В последнем варианте номиналы резисторов непонятны.
Это не номиналы, это кодировка столбец-строка. Номиналы в ряду предлагаю по горизонтали 1к; 2к; 3к; 4,3к, по вертикали:5,6к; 12к; 18к; 24к. можно уменьшить на порядок или увеличить, как посоветуете?
#17
Отправлено 24 Июнь 2010 - 23:27
Итак
R 0,1=0; R 0,2=100; R 0,3=200; R 0,4=300; R 0,5=430;
R 1,0=0; R 2,0=560; R 3,0=1k2; R 4,0=1k8; R 5,0=2k4;
А какой номинал R и его влияние?
Если он будет 3 ком, то это будет 0.5 диапазона АЦП, если 1к, то 2/3 диапазона.
Тогда имеет смысл Ом 10.
Не перегрузит ли он ИОН при нажатии клавиш?
#18
Отправлено 26 Июнь 2010 - 22:06
Используй номиналы резисторов с вышеуказанной статьи.
#19
Отправлено 26 Июнь 2010 - 23:05
Или просто принять максимальную нагрузку 1 мА.
В схеме непонятны номиналы резисторов R22=R26= 0.2 Ома?
Плата готова, а как с программой?
Хотелось бы, чтобы сохранился и режим кнопок оригинала.
#20
Отправлено 27 Июнь 2010 - 23:08
Для питания матрицы можно использовать питание МК, т.е. всё те же 5В. А в качестве ИОН для АЦП использовать внутренний. Но тогда придётся подобрать резисторы так, что бы макс. напряжение на входе АЦП не было больше 2.56В
И загляни в тот даташит, что я дал, там про это много написано.
Вряд ли там 02 Ома. Я бы поставил 20 и 40 Ом.
Тут всё чётко написано.