Jump to content

    
Sign in to follow this  
Petka

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

Recommended Posts

Выкладываю свою версию обсуждаемого здесь программатора.

 

post-18986-1325491249_thumb.jpg

 

1. Исходник переделан под IAR.

 

2. Структура программы приведена к нормальному виду. Ну и бардак там был!

Теперь текст разбит на логически завершенные модули. Интерфейс каждого

модуля максимльно простой и находится в соответствующем h-файле.

Никаких переменных с видимостью больше, чем в одном модуле.

Никаких магических чисел, все вычисляется на основе заданных констант.

 

3. Операция чтения байта по UART сделана неблокирующей. Это позволило

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

Для парсера команд введен таймаут, который задается константой в тексте.

 

4. Светодиод теперь делает короткие вспышки, когда программатор

находится в standby (питание подано, а кабель не подключен).

Когда кабель правильно подключен, светодиод горит непрерывно.

Когда программатор находится в режиме терминала, светодиод равномерно мигает.

 

5. Немного изменен формат сообщений в режиме терминала. Выкинуто всё лишнее.

Переписана обработка вводимых пользователем цифр.

 

6. Разводка платы сделана так, что для тактирования target-а

задействован вывод OC1A. Туда все время выдается частота 1 МГц.

 

7. Исправлен пересчет длительности SCK. В исходном варианте длителности

брались для AVR ISP, а не для STK-500. Правда, максимальную скорость

1.8 МГц получить не удалось, получилось максимум 600 кГц на кварце 14.7456 МГц.

 

8. Еще исправлено и переделано много чего.

 

9. Плата разведена под стандартный корпус 50 x 35 x 20 мм.

Плата односторонняя. Добавлен выключатель, который может подавать питание

на target от USB.

 

post-18986-1325491260_thumb.jpg

 

В архиве проект для IAR, печатная плата и схема в формате PCAD 2006 и в Adobe PDF.

 

stk_500.zip

 

P.S. Прошивка пока протестирована слабо, нет под рукой широкого выбора кристаллов.

Edited by Леонид Иванович

Share this post


Link to post
Share on other sites

Не знаю, как на этом форуме редактировать посты, поэтому обновления выкладываю тут: http://radiokot.ru/forum/viewtopic.php?p=1089501#p1089501

Share this post


Link to post
Share on other sites

в вообщем такая проблема, понирпрогом вроде как прошил, подключаю к компьютеру мигает 6 раз, аврстудио программатор не видит. когда подключаю микросхему к программатору, светодиод начинает моргать непрерывно. Программатор собран на: мега48, ft232bm, кварц 6 и 14...Мгц. Что неправильно сделал?

 

 

Share this post


Link to post
Share on other sites
в вообщем такая проблема, понирпрогом вроде как прошил, подключаю к компьютеру мигает 6 раз, аврстудио программатор не видит. когда подключаю микросхему к программатору, светодиод начинает моргать непрерывно. Программатор собран на: мега48, ft232bm, кварц 6 и 14...Мгц. Что неправильно сделал?

Проверьте питание контроллера в программаторе, когда происходит непрерывное "мигание". Проверьте Reset контроллера, когда происходит мигание. В терминальном режиме программатор видится?

Share this post


Link to post
Share on other sites

а что такое терминальный режим? извиняюсь за тупой вопрос, новичек я в этом

 

и еще , подав на схему просто 5в я могу что нибудь осцилографом проверить?

Share this post


Link to post
Share on other sites

Возник такой вопрос: собрал на макетке программатор - всё замечательно работает! Спасибо автору! Но начал экспериментировать с платой COM-USB на СР2102. Там тоже есть выходы TX и RX , в терминале работает ( символы на экране выводятся ). Но когда попробовал подсоединить к программатору, получилось следующее: программатор светодиодом замигал, но в терминале войти в программатор не могу. Интересно, в чём разница между FT232 и СР2102 ?

Share this post


Link to post
Share on other sites
Проверьте питание контроллера в программаторе, когда происходит непрерывное "мигание". Проверьте Reset контроллера, когда происходит мигание. В терминальном режиме программатор видится?

Вообщем перепрошил программатор, аврстудио начала определять, терминал не видит.

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

 

И еще что должно быть на Reset контроллера.

Share this post


Link to post
Share on other sites

Собрал сегодня программатор FT232BM, Atmega8, 14.7МГц. Обнаружил проблему, как у foxghost. При подключении к плате с контроллером начинает быстро моргать светодиод, при этом на reset следующая картина:

post-68113-1326033984_thumb.jpg

На выходе делителя (RST_ADC):

post-68113-1326034336_thumb.jpg

Контроллер Attiny26l, у него на сбросе стоит 100 кОм и 1 мкФ. Если убрать 1 мкФ, все начинает работать, CodeVision шьет нормально.

Если уменьшить до 0,1 мкФ, то почти всегда работает, а если не заработает, частота бросков и моргания светодиода больше, чем с 1 мкФ. Пробовал уменьшить R10 (220 Ом) , даже замыкал - ничего не меняется

 

еще один вариант осциллограммы на Reset, более правильный, как был у меня сначала с 1 мкФ (предыдущий вариант точно не знаю, как получился):

post-68113-1326036663_thumb.jpg

 

Кусок схемы с Attnny26l, куда подключается программатор. С3 стоит 1 мкФ (был старый вариант схемы)

Если С3 уменьшить до 0,1 мкФ или убрать - начинает нормально работать. При этом с 1 мкФ программатором STK200 (на LPT) шьется нормально.

post-68113-1326036902_thumb.jpg

Share this post


Link to post
Share on other sites
Вообщем перепрошил программатор, аврстудио начала определять, терминал не видит.

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

 

И еще что должно быть на Reset контроллера.

 

Еще вопрос сейчас спаял второй программатор.

 

Пытаюсь понипрогом записать фьюзы и прошивку, пони выдает ошибку -24. Нажимаю игнорировать начинается прошивание минут 30 (как по мануалу), в конце пони пишет ошибка записи. Меняю премычку х2 к х3, при включении моргает 6 раз, авр студио видит, терминал нет, а дальше все те же проблемы что и спервым программатором.

 

P/S/ Видимо две платы в мусорку, не может такого быть чтобы на второй плате проблемы были идентичными (вторая плата была очищена от флюса и все пропаено и повела себя один в один как первая)

 

Share this post


Link to post
Share on other sites
Контроллер Attiny26l, у него на сбросе стоит 100 кОм и 1 мкФ.

Да вы что, 100к + 1мкф на ресет так и не будет работать, 10к + 0.1мкф самое то что нужно.

Share this post


Link to post
Share on other sites
Да вы что, 100к + 1мкф на ресет так и не будет работать, 10к + 0.1мкф самое то что нужно.

 

Это конечно правильно, когда схема своя, а когда разработана кем-то давно и коррекцию внести сложно - вот и возникают проблемы. Насчет такой RC - там скорее всего нужно было задержать запуск контроллера по включению питания. Как я понимаю, проблема связана с тем, что в этом программаторе контролируется состояние reset (в отличии от STK200, с которым все работает), и при моих значениях RC не успевает измерить. Придется разбираться в исходниках программатора и менять задержки.

Share this post


Link to post
Share on other sites

Уважаемый Petka,приветствую ВАС!

Я здесь новенький,прошу заранее простить за дурацкие вопросы!

:wacko:

пожалуйста дайте ответ на след.вопрос.

я программирую ATMEGA8A-PU программатором Chipprog+ Phyton .кварц 14.7456 ,в окне где выбираются фьюзы ,я вижу следующее,

я правильно выбрал необходимые фьюзы? ВЫ как проффи проконсультируйте пожалуйста :smile3046:

post-69247-1326141650_thumb.jpg

post-69247-1326141686_thumb.jpg

Share this post


Link to post
Share on other sites
...

пожалуйста дайте ответ на след.вопрос.

...

я правильно выбрал необходимые фьюзы?...

Если я ничего не перепутал надо так:

 

Еще вопрос сейчас спаял второй программатор.

 

Пытаюсь понипрогом записать фьюзы и прошивку, пони выдает ошибку -24. Нажимаю игнорировать начинается прошивание минут 30 (как по мануалу), в конце пони пишет ошибка записи. Меняю премычку х2 к х3, при включении моргает 6 раз, авр студио видит, терминал нет, а дальше все те же проблемы что и спервым программатором.

 

P/S/ Видимо две платы в мусорку, не может такого быть чтобы на второй плате проблемы были идентичными (вторая плата была очищена от флюса и все пропаено и повела себя один в один как первая)

По какой схеме была выполнена печатная плата? Какую версию прошивки прошивали?

post-7886-1326178085_thumb.png

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