Свежие обсуждения
Измерения

DDS-генератор на AVR - нужна помощь

1 21 189

Ребята, я готов прошивать МК, но боязно...

Спаял программатор по ссылке smg123 ( http://avr.nikolaew.org/progr.htm ), подключил.
Запустил программу "Uniprof" - МК опознался.

Прочитал содержимое - прочиталось, пусто.
Прочитал фузы, как говорят продвинутые FVR-щики - прочиталось и показало - некоторые галочки стоят, некоторые - нет.

Можно закачивать HEX и программить?
Ответьсте, пока не поздно, а то рука чешется нажать кнопку "запись"...

В проге можно прочитать какие-то "настроечные байты" и записать их либо в программную память или в EEPROM.
Что мне с ними делать?

 

GM: Fuse High Byte = 0xDF, разрешён SPIEN, остальные фьюзы оставлены непрошитыми, т.е.в единичках.

У меня программатор прочитал фузы чистого МК и выдал именно такое же.
Получается, что мне ни чего менять не нужно, а просто загрузить HEX и прошить?

 

vlad5: Если написано 20000 кГц, то точно не гармониковый. А если 20.000 МГц, то увы

То он не пойдёт?
А как у GM идёт, ведь у него на кварце написано "20.000"?

И ещё, раз у меня МК опознался программатором, то значит, кварцевый генератор работает. Но осциллографом я не смог вообще ни чего увидеть - тонкая линия. А ведь если бы он был гармониковым, то запустился бы на частоте 20МГц/3=6,7МГц, как кто-то здесь говорил.
А такую частоту мой осциллограф ещё берёт.

 

DWD: раз у меня МК опознался программатором, то значит, кварцевый генератор работает.
Не факт. По умолчанию обычно все мк с завода идут с фьюзами настроенными на работу от внутреннего генератора.
Пока фьюзы не меняли можно свободно пробовать шить, стирать и т. д.
Лучше будет, если Вы для начала выложите скан считанных фьюзов.
Просто в разных программах птичка соответствует разному сосотоянию бита.
Настроечные байты нужны для калибровки внутреннего RC генератора - в нашем случае не нужны.

PS вот онлайн калькулятор фьюзов.http://fusecalc.mirmk.net Справа описание каждого.

 

Брать то берет, но входная емкость щупа элементарно срывает генерацию. Потому и линия. Лучше, ИМХО, пойти дальше, дополнительно тронув FUSE-биты младшего байта, а именно CKDIV и CKOUT. Запишите в младший байт 0x3F и посмотрите на 6 лапе (PD2). Должно быть 2.5МГц

 

Уже в понедельник...

А сейчас - не выдержал, пршил МК.
Потом прочитал - читается с прошивкой. При сравнении - пишет, что идентично.

Осциллографом прошёлся по выводам:
на выводах кнопок есть 5В,
на выводах светодиодов - "горит" тот, что показывает генерацию пилы, остальные "потушены".
На всех выходах - есть импульсы. На самом старшем разряде - самые низкочастотные.

У меня схема не собрана, просто к МК подпаян кварц на 20МГц с конденсаторами по 33пФ, стоит резистор на 10КОм с +5В на 1-й вывод, да поданно питание. Всё...

Пинцетом коротнул пару раз вывод кнопки изменения частоты - частота импульсов изменилась.

То есть, вроде работает.
Но переключить режим, почему-то не получилось. Несколько раз замыкал вывод кнопки "FUNC", но всё равно горит только один и тот же светодиод режима пилы (LED4).

В общем, нужно подпаивать нормальные кнопки со светодиодами и матрицу резисторов ЦАП-а.

И нужно, что бы GM написал, как с генератором работать - что, когда и для чего нажимать, и что при этом должно произойти...

Но это уже не раньше понедельника.

 

Если фьюзы не трогали - скорей всего МК работает на тактовой в 20 раз меньше, т.е. 1МГц.
Выше дал ссылку на калькулятор фьюзов. Для начала измените состояние CKDIV8 - тактовая возрастет в 8 раз.
Только ради бога не трогайте RSTDISBL и SPIEN иначе потом придется искать параллельный программатор.

PS Ну это уже не раньше понедельника...

 

при работе с АВР принцип прост - считал фьюзы, поменял то, что нужно, остальное не трогай.
ориентироваться можно на SPIEN, он по умолчанию есегда есть.

если он не будет "есть" то SPI работать не будет (как и RSTDISBL )

 

GM: Таблицу синусов откуда будете извлекать? Да... ЭТО Я СГЛУПИЛ! На таблицу, ежели (и разумно) разрядность ЦАПА более 8-ми попадаем сразу на 2 байта на отсчет. Например, возьмем 12 разр. Тогда для минимальных частот хорошо примерно столько-же иметь и отсчетов на период. Только для таблицы надо 8 Килобайт. Но синус будет весьма приличный.
Что-то громоздко выходит... похоже, GM прав: 386-й тут не в теме!

 

Ну и шут с ним. Зато теперь у вас есть время сфокусироваться на ддс .