Jump to content

    
Sign in to follow this  
Petka

AvrUsb500 by Petka. продолжение

Recommended Posts

...

Для того, чтобы повесить 1Mhz на 23 ногу меги8 (РС0) нужно изменить Led.h вот так?

...

Нет.

нужно править main.c

// 1Mhz out
#define OUT_1MHZ_PORT        C
#define OUT_1MHZ_PIN        0 
#define OUT_1MHZ_ALEV        H

Share this post


Link to post
Share on other sites

:bb-offtopic: Лучше позже - чем никогда ;)

Это я давно написал про актуальность сего программатора от ув. Petka. Совесть замучила :crying: .

Напомню:

Mar 28 2010, 18:33

наверное сей программатор уже не актуален (это мое мнение)

http://radiokot.ru/forum/viewtopic.php?f=20&t=26417

http://kazus.ru/forums/showthread.php?t=17413 (последний пост)

 

Ой какой быстрый! А вы пробовали повторить, то на что ссылаетесь.

Как вы изготовите плату? Да еще много чего Как... Там ведь все крутиться вокруг зарубежной разработки.

А здесь вокруг нашей (да знаю за основу взята зарубежная) Но все существенно переработано.

Можно задать вопрос автору на понятном русском языке.

 

после праздников будут платы, заказал на производстве (утюгом было лень), микросхемки уже куплены (включая XMEGA) - обязательно отпишусь...

 

Будем с интересом ждать результатов.

Только желательно новую тему. И выложить все данные как Petka.

 

Плата сделана давно. но использовал её для управления шаговым двигателями, до использования как программатора только дошли руки (понадобился заказчику в сопровождение программатор). На плате только AT90USB162 разъемы, кварц, смд. Flipом по USB залил новую прошивку, кнопка Start Application - у меня новый девайс программатор AVRISP-MKII. Установились автоматом какие то драйвера в XP, AVR Studio распознала девайс. Попробовал шить mega48 - шьються с EEPROM без проблем и быстро. Других не пробовал - говорят в mega128 EEPROM не шьётся. XMEGу не попробовал - пока не актуально. Платка, не очень, надо подпаять перемычку, по ссылкам были лучше.

 

post-9463-1287067392_thumb.jpg

 

 

Share this post


Link to post
Share on other sites

Не удалось достать Mega8, есть только Mega64. WinAvr не хочет компилировать файл для Меги64 (мега8, мега48 без проблем). Буду очень благодарен за помощь, как что нужно прописать?

Share this post


Link to post
Share on other sites

Решил посмотреть, что за популярная такая штука от товарища Petka. Чтобы не порождать многостраничные расспросы на тему, как из г... слепить пульку, запустил сегодня поиск комплектующих точно по первоисточнику. Ну, на круг выходит чуть меньше $12, если не искать придирчиво. И это, не выходя за пределы Киева.

То есть, если все купить можно, почему бы не спаять? Много здесь написано хороших слов. Да и отладка, добавленная в последней версии, может сгодиться.

 

Есть пара вопросов к уважаемому автору.

 

1) Какая минимальная частота SPI поддерживается? Это не праздный вопрос. На двух МК (мега48/р48 и тинька25), которые я запускаю на низких частотах, например 1 МГц и 128 кГц и еще делю прескалером, наблюдаю явление "разовой программируемости". Проявляется в том, что после первой прошивки (и усатнвки фьюзов) МК не хочет прошиваться на рациональных частотах SPI.

Приходится прошивать какими-то глупо низкими частотами, 1-5 кГц. И тинька даже на частоте SPI 1,2 кГц не хочет нормально шиться. Приходится на стареньком десктопе по 5 проводкам (там я намерил частоту SPI как раз 1 кГц) прошивать.

Может кто-то знает лекарство не в супернизких частотах? Но вопрос № 1 я все же поставлю.

 

2) Предусмотрен ли режим "долбежки" таргета? Я имею в виду такую команду программатору, по которой он как-то достаточно долго (в идеале - до отмены) подает на программируемый МК последовательность, например, AC 53 00 00. Тогда можно спокойно просмотреть осциллом сигналы, а не звонить тестером, что не всегда обеспечивает уверенность. Я делал некое подобие программатора на Ардуино, так там из всего проекта это была самая полезная фича.

 

3) Иногда программатор подвисает. Может быть, не этот :) Но при обращении к спящему (например, к "разово запрограммированному") МК может быть ситуация, когда ничего не остается делать, как отключать программатор и включать его снова. Не удобно. Можно ли его передернуть без этого?

 

Ну, и обычный вопрос перед началом действий: так таки схема, опубликованная на первой странице той эпической ветки - актуальна? Лучше ее у автора нет?

 

Спасибо!

 

Share this post


Link to post
Share on other sites

Пожалуйста помогите советом. Собрал данный программатор на Atmega 48V, кварц 14,7456. Запутался в фузах на данный камень (выставил галочки в PonyProg в окошках SUT1,BODLEVEL2,BODLEVEL1). Прав ли я в этом выборе? Сам прошивается без проблем.При подключении мигает 6 раз, подключаю к программируемому чипу, диод загорается, но программы его не видят. Как его можно еще проверить ведь функции поддержки терминала 48 mega не имеет.

P.S. Извеняюсь за возможно детские вопросы, но только начал осваивать программирование (познания в электронике хорошие). ПОМОГИТЕ с ФУЗАМИ!!!

Share this post


Link to post
Share on other sites
Не удалось достать Mega8, есть только Mega64. WinAvr не хочет компилировать файл для Меги64 (мега8, мега48 без проблем). Буду очень благодарен за помощь, как что нужно прописать?

Извиняюсь за задержку с ответом.

В качестве Хака попробуйте в файл "uart.c" после всех include добавить строчку:

#define VAR_88CHIP

 

 

1) Какая минимальная частота SPI поддерживается?

Официально 10 kHz

Если надо меньше - сделаем меньше.

2) Предусмотрен ли режим "долбежки" таргета?

Не предусмотрен. Если очень надо, сделайте батник (три строчки всего), который в цикле будет считывать флэшку или сигнатуру чипа и смотрите спокойно сигналы.

3) Иногда программатор подвисает. Может быть, не этот :) Но при обращении к спящему (например, к "разово запрограммированному") МК может быть ситуация, когда ничего не остается делать, как отключать программатор и включать его снова. Не удобно. Можно ли его передернуть без этого?

Вопрос не до конца понятен. Если всё дело в том что вы привыкли к зависающим программаторам - этот не из таких.

Если вопрос в том можно ли заресетить микроконтроллер в программаторе? На плате выведен ресет контроллера на точку для пайки - припаяйте туда кнопку и перезагружайте контроллер когда понадобится.

Ну, и обычный вопрос перед началом действий: так таки схема, опубликованная на первой странице той эпической ветки - актуальна? Лучше ее у автора нет?

Схема и печатные платы не менялись всё что я выкладывал - актуально. (только надо выбрать какая разпиновка вам больше подойдёт)

Спасибо!

На здоровье.

 

...(выставил галочки в PonyProg в окошках SUT1,BODLEVEL2,BODLEVEL1). Прав ли я в этом выборе?

Фузы вроде правильно.

Сам прошивается без проблем.При подключении мигает 6 раз, подключаю к программируемому чипу, диод загорается.

отлично.

но программы его не видят.

Какие программы?

С какими параметрами?

Пробовали avrdude?

Как его можно еще проверить ведь функции поддержки терминала 48 mega не имеет.

Программой программатором или осциллографом.

Share this post


Link to post
Share on other sites
Извиняюсь за задержку с ответом.

Должен отметить, что Ваши ответы очень обстоятельны. Лучше такие с задержкой, чем быстрые без внимательного прочтения вопроса.

Правда, есть еще и такие, что вообще не отвечают. Но это уже, ИМХО, такие мы иногда вопросы ставим :)

 

Официально 10 kHz

Если надо меньше - сделаем меньше.

Вы будете смеяться, но ведь реальный случай: 5 проводков (программа uniprof) с частотой 1 кГц мои тиньки будят и шьют, а программатор с прошивкой от уважаемого Prottoss'а с установленной "официальной" частотой 1,2 кГц - не может достучаться (сбоит, показывает сигнатуру типа 102 и т.д., т.е. что-то уже близко, но...)

Конечно, могут быть и какие-то иные отличия в работе uniprof от Prottoss'а, но я этого не могу отследить. Автор мои вопросы счел не интересными. Вот и маюсь...

Поэтому, если у Вас нет "в рукаве" готового рецептика, как будить уснувшие МК, то подумайте, пожалуйста, над возможностью буквально ниже 1 кГц опуститься. Ведь для спасения МК любой радиоаматор согласится подождать пару минут :)

 

Если очень надо, сделайте батник (три строчки всего), который в цикле будет считывать флэшку или сигнатуру чипа и смотрите спокойно сигналы.

Спасибо за идею. А то я уже расспрашивал людей, есть ли в битбанговых программаторах такой режим. Там ведь можно и без автора просто написать программу и дергать SPI-ноги. Но я не силен в программировании компов, поэтому попробую Ваш метод. Но вот интересно, как быстро комп сможет запускать ДУДКУ. Там пауза может быть ой-ой-ой. Или Вы предлагали что-то иное? Покажите тот батник, что Вы бы использовали, пожалуйста.

 

Ну и... Не хотите рассмотреть возможность реализации такого режима прямо в программаторе?

 

Если всё дело в том что вы привыкли к зависающим программаторам - этот не из таких.

Да, я именно такое имел в виду. К ним и привык :(

Но Вы не ответили на мой пример: предположим, что выход MISO где-то подвис, не контачит или еще что. В ответ на команду НАЧАЛО ПРОГРАММИРОВАНИЯ (как там, AC 53 00 00?) программатор не получает ничего. Что происходит дальше? Как это закончится? ДУДКА-то напишет мне свое мнение, это ясно. А вот программатор нужно будет выдергивать или нет?

Edited by drvlas

Share this post


Link to post
Share on other sites

Спасибо за ответ про фузы. Попыталься прошить им Atmega 8 в проге AVRStudio8. Выставил номер порта на котором висит программатор, но при попытке чтения и записи программа выдает что порт занят или не обнаружен. Заканчиваю сборку Вашего программатора на Atmega 8 в DIP корпусе,печатку начертил и протравил. Какие нужно вносить настройки при использовании данного программатора в программу AVRStudio? работает ли он с программой SinaProg? Какой в ней выбирать программатор, STK500 или другой? Куда именно в файле CONFIG программы Avrdudegui вносить записи о программаторе? СПАСИБО за ответы. Буду искать данные для изучения работы в программе CodeVisionAVR.

Share this post


Link to post
Share on other sites

Заменил Atmega48 на 8. Все заработало. Подскажите пожалуйста начинающему в осваивании программы AVRStudio4, как ей поправить неправильно выставленные фузы. Если это возможно, объясните поподробнее что где выставить. СПАСИБО за помощь и хороший программатор.

Share this post


Link to post
Share on other sites
Какие нужно вносить настройки при использовании данного программатора в программу AVRStudio?

stk500v2

работает ли он с программой SinaProg? Какой в ней выбирать программатор, STK500 или другой?

SinaProg это графическая оболочка для avrdude. avrdude умеет работать с этим программатором. Для этого надо в настройках выбрать тип программатора stk500v2

 

 

Заменил Atmega48 на 8. Все заработало. Подскажите пожалуйста начинающему в осваивании программы AVRStudio4, как ей поправить неправильно выставленные фузы. Если это возможно, объясните поподробнее что где выставить. СПАСИБО за помощь и хороший программатор.

Сначала надо вдумчиво прочитать и понять раздел "Memory programming -> Fuse bits" datasheet на ваш контроллер avr.

Там содержится самая достоверная информация о всех возможных значениях Fuse bits и даются ссылки на другие разделы даташита, где описаны эти значения. После прочтения этого обычно вопросов с фузами не остаётся.

 

.

Спасибо, Дяденька, что научили нас Истине!

Оффтоп:

IAR и Кейл являются коммерческими и якобы профессиональными инструментами, однако в них используется компилятор, годный только для MMU-less микроконтроллеров.

Попробуйте ими собрать Linux, Qt, софт для QNX, VxWorks, LynxOS, Symbian. Зачем, тогда пользоваться инструментом, опыт при использовании которого вряд-ли пригодится при создании серьёзных коммерческих систем? В этом плане использование AVRStudio + gcc гораздо более перспективно.

Edited by Petka

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this