24 февраля 2022 года в 5 утра, без объявления войны, россия напала на Украину.

Они пришли "освобождать народ от нацистов и националистов".
С этого момента наша жизнь изменилась на "до" и "после".
Нас освобождают от наших домов, от наших любимых, от наших родителей и от наших детей....
Тут я не буду никого агитировать или переубеждать, разумный человек найдёт всю информацию
в интернете, а для зомби никакие доводы и факты не послужат аргументом.

Я не умею много писать, да и без мата тут сложно что-то написать.
Поэтому выражу все мои чувства одним фото.

«Спасибо дедушка путин за счастливое детство и мое освобождение». ©

Дополню словами уважаемого человека, широко известного в узких кругах:
тут путин не виноват, не он нажал на кнопку сброса,
- виноват пилот, который нажал на кнопку сброса, мог промахнуться. виноваты жена/мать/брат/друг пилота, которые не позвонили ему, и не сказали "нет войне",
- виноват тот, кто отдал приказ, и виноваты его жена/мать/брат/друг,
- виноват тот, кто цеплял бомбу, потому что он мог её обезвредить, "ну бывает, не сработала",
- виноват кладовщик, виноват водитель, который перевозил эту бомбу. виноваты жена...и т.д., потому что не позвонили и не сказали "нет войне, не вези бомбы",
- виноваты все журналисты оркостана, потому что они врут,
- виноваты недограждане, потому что не сказали журналистам "не врите",
- виноваты все... все 160 миллионов,
- а те 2, 3, 5 тысяч, которые вышли, и которых запаковали, это даже не десятая процента, это погрешность... случайно оказавшиеся в мордоре люди. ©

PS: За несколько часов до вторжения был атакован и взломан крупный интернет хостинг в Киеве, где и размещался мой сайт. Только 16 марта отважным админам удалось частично восстановить работу хостинга. Далеко не все сайты выжили, т.к. были повреждены даже бэкапы.
Нет, нет, я не жалуюсь, нет. В цифровом мире нет ничего ценного, материального...


Due to periodic DDoS attacks, the forum may not be available.

Программатор AVR910 USB

Обсуждение проектов, не вошедших в предыдущие категории
Post Reply
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Программатор AVR910 USB

Post by hardlock »

Всё честно спёрто с этого сайта с согласия автора. Я только добавил схему и печатную плату для TQFP корпуса ATmega8.

Программатор выполнен на основе драйвера от Objective Development и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL. Описание оригинальной схемы программатора можно взять в Application Note AVR910: In-System Programming, а список поддерживаемых команд можно посмотреть в Application Note AVR109: Self Programming

Конструкция:

Схема программатора приведена на рисунке ниже. Предохранитель F1 служит для защиты линий питания порта USB от случайного замыкания по цепям питания программатора. Диоды VD1, VD2 – обычные выпрямительные, с прямым падением напряжения ~0,6…0,7В, предназначены для понижения питания микроконтроллера DD1 до 3,6 В. Светодиоды VL1, VL2 сигнализируют о текущих действиях программатора, и, соответственно, обозначают режимы чтения и записи. Светодиод VL3 служит для сигнализации подачи питания на программатор.
Оригинальная схема автора
Оригинальная схема автора
Джампер J1-J2 служит как для начального программирования микроконтроллера (замкнут J1 - MODify), так и для использования в качестве разъема программатора (замкнут J2 - NORMal) . Резисторы R10 - R14 предназначены для согласования уровней сигналов контроллера программатора и программируемого контроллера.

С помощью J3 LOW SCK возможно понижать тактовую частоту порта SPI МК программатора до ~20 кГц. При разомкнутом джампере частота SPI нормальная, при замкнутом - пониженная. Переключать джампер можно "на ходу", так как управляющая программа МК программматора проверяет состояние линии PB0 при каждом обращении к порту SPI. Не рекомендуется переключать джампер при запущенном процессе записи/чтения программируемого МК, т.к., скорее всего, это приведет к искажению операции записи/чтения. Данный джампер введен для возможности программирования МК AVR, тактированных от внутреннего генератора 128 кГц.

Cкорость работы порта SPI МК программатора при разомкнутом джампере J3 равна 187,5 кГц. Это позволяет программировать контроллеры с тактовой частотой примерно от 570 кГц для tiny/mega, 750 кГц для 90S и 7,5 МГц для 89S. Контроллеры программируются от 10 до 30 секунд вместе с верификацией в зависимости от объема FLASH памяти и тактовой частоты. На вывод LED разъема ISP выведен меандр с частотой 1 МГц для "оживления" МК, у которых были ошибочно запрограммированы фьюзы, отвечающие за тактирование. Сигнал генерируется постоянно и не зависит от режима работы программатора

Программатор тестировался с программами AVRProg v.1.4 (входит в пакет AVRStudio), ChipBlasterAVR v.1.07 Evaluation, AVROSP (ATMEL AVR Open Source Programmer), CodeVisionAVR . Кроме того, программатор тестировался с программой AVRDUDE, однако, программа с данным программатором не совместима, так как не все команды протокола AVR910 отрабатывает корректно. Программатор позволяет программировать все контроллеры AVR, поддерживающие ISP (In System Programming - Программирование В Системе), а так же МК серии 89S - 89S53 и 89S8252. На данный момент с вышеперечисленными программами протестировано программирование контроллеров 89S53, 89S8252, 90S2313, 90S8515, ATtiny13, ATtiny26, ATtiny45, ATtiny2313, ATmega48, ATmega8, ATmega8515, ATmega8535, ATmega16, ATmega32, ATmega64, ATmega128, AT90CAN128.

Я настоятельно рекомендую повторять схему один-в-один, так как выкидывание "лишних" деталей из схемы может привести либо к неправильному функционированию программатора, либо к возможному выходу из строя USB порта на РС, за что, естественно, я ни какой ответственности не несу.

Прошивка FUSE BITS:

Для нормального функционирования контроллера в схеме необходимо, чтобы были запрограммированны (установленны в "0") биты SPIEN, CKOPT и SUT0. Обычно МК, идущие с завода, т.е. новые, имеют уже запрограммированный бит SPIEN. Так же желательно (но не обязательно) запрограммировать (установить в "0") бит BODEN, что разрешит работу встроенного в МК broun-out детектора. При незапрограммированном бите BODLEVEL уставка срабатывания broun-out детектора будет на уровне 2,4...2,9 Вольт... Остальные биты должны быть незапрограммированны (установленны в "1")

Инсталляция:

Windows XP

Прошить контроллер. Подключить свежеиспеченный программатор к РС через свободный разъем USB. ОС найдет новое устройство – AVR910 USB Programmer, при предложении автоматически найти драйвер, отказаться, и указать путь к файлу prottoss.avr910.usb.inf. При предупреждении, что драйвер не имеет цифровой подписи, послать ОС в эротическое путешествие. Небольшие проблемы у меня возникли, когда, после установки, программа AVRProg v. 1.4 не смогла найти программатор, так как ОС присвоила ему номер COM9. После мониторинга портов оказалось, что AVRProg ищет устройство только на портах COM1 - COM4. Изменить номер порта можно, если зайти в диспетчере устройств в: AVR910 USB Programmer -> Свойства–> Параметры порта -> Дополнительно -> Номер COM-порта

Windows 2000

В принципе, инсталяция не отличается от описанной выше для Windows XP, но есть одно НО - задержки в драйвере usbser.sys портят цепочку команд от ПО на РС до программатора и, соответсвенно, цепь ответов обратно от программатора до ПО на РС... Проблему я пока не установил, но есть решение...Конечно не самое красивое, но работает надежно :-) Необходимо заменить файл usbser.sys в системных папках Windows 2000 на аналогичный от Windows XP. Это папки ...\winnt\system32\drivers\ и ...\winnt\system32\dllcashe\. Файл usbser.sys от Windows XP SP2 можно взять здесь или во вложениях. Естественно, что драйвер придется подменять загрузившись под другой ОС (например с загрузочного диска). Так как ядра этих двух ОС очень схожи, то драйвер от ХР прекрасно себя чувствует под 2000 :-) По крайней мере, я протестировал еще несколько устройств, прикидывающихся USB CDC Class, и все они работали как обычно... Попытки инсталировать драйвер от ХР через установочный файл, к сожалению, ни к чему не привели. Если кто то знает, как это можно сделать, буду признателен.

Файлы:

Все архивы содержат файл прошивки, установочный inf-файл и схему в формате Adobe pdf. Кроме этого старые версии содержат описание в виде старой html страницы.

avr910_usb_programmer.files.ver.1.04.rar Версия от 16.12.2006. Добавлено подключение внутреннего pull-up резистора ко входу MISO МК программатора во время программирования таргета. Возможно, будет полезно при чтении плат с пониженным напряжением питания, да и вообще, думаю, положительно скажется на надежности чтения программируемого МК...

avr910_usb_programmer.files.ver.1.05.rar Версия от 17.01.2007. Добавлен джампер J3 LOW SCK для понижения тактовой частоты порта SPI программатора. В настоящий момент самая свежая версия прошивки

avr910_usb_programmer_source.v.1.05.rar Исходники версии 1.05 Заточено и обкатано на IAR v.4.10B

Вы можете свободно пользоваться материалами данной публикации в образовательных и некоммерческих целях. Перепечатка, публикация в Интернете, журналах, использование в коммерческих приложениях – возможна только после согласования с автором.
Так, а теперь немного отсебятины. Схему я всё таки немного переделал, но суть осталась та же.
Схема для корпуса TQFP
Схема для корпуса TQFP
Для минимизации размеров печатной платы было решено применять ATMega8 в корпусе TQFP. Изменилась также разводка ISP коннектора (мне так удобней). Добавлена возможность питать программируемое устройство от программатора (от USB). Для этого перед программированием нажимаем кнопку SELF POWER. Перемычки J3 LOW SCK и MODIFY / NORMAL заменены кнопками. Так красивее и удобнее.

Печатная плата ниже. В формате Sprint-Layout v5.0 можно взять тут. На плате продублирован выход LED / XTAL для удобства пользования.
Печатная плата
Печатная плата
pcb.gif (14.3 KiB) Viewed 89537 times
Внимание!!! Печатная плата обновлена. подтягивающий резистор на RESET был неправильно разведён и конденсаторы по питанию отсутствовали.

Прошивал этот программатор следующим образом:
  • подключил к USB (питание МК осуществляется от USB)
  • подключил его к программатору STK200/300 (он у меня был собран давно),
  • нажал кнопки SELF POWER и MODIFY. (Тем самым подаём питание на STK200/300 и соединяем вывод RESET с колодкой программирования) кнопка SELF POWER для питания ПРОГРАММИРУЕМЫХ устройств, в том числе и программатора, который туда подключен, а не наоборот.
  • с помощью PonyProg залил прошивку. Им же выставил FUSES. Должно получиться вот так:
FUSES в PonyProg`e
FUSES в PonyProg`e
fuses.gif (12.83 KiB) Viewed 89537 times
Остаётся лишь добавить, что этот программатор успешно работает у меня на 3-х ноутбуках. Собирал его из-за отсутствия LPT и COM портов в этих самых ноутах.

Вот что должно было получиться (кликабельно):
Вид 1
Вид 1
Вид 2
Вид 2
Изготавливаем корпус из заглушки для флопика.
Изготавливаем корпус из заглушки для флопика.
Изготавливаем корпус 2
Изготавливаем корпус 2
В корпусе (вид свурху)
В корпусе (вид свурху)
В корпусе (вид снизу)
В корпусе (вид снизу)
Половинки корпуса приклеены к плате с помощью жидкого метала (2-х компонентной эпоксидной смолы).
Attachments
usbser.rar
usbser.sys
(12.96 KiB) Downloaded 3455 times
avr910_usb_programmer.files.ver.1.04.rar
v1.04
(37.21 KiB) Downloaded 3070 times
avr910_usb_programmer.files.ver.1.05.rar
v1.05
(37.91 KiB) Downloaded 4173 times
avr910_usb_programmer_source.v.1.05.rar
v1.05 исходники
(51.48 KiB) Downloaded 3564 times
pcb_TQFP_new.rar
Печатная плата в формате Sprint-Layout 5.0
(13.6 KiB) Downloaded 4146 times
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

подскажите пожалуйста номиналы ставить как в схеме или как на плате я поставил 330, 4,7к соответственно
Attachments
foto pr.jpg
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

Резистор 1к - не критичен. Это подтяжка РЕСЕТа. У меня просто небыло 4,7к поэтому поставил 1к.

Выходные резисторы - для защиты выхода МК от КЗ и т.д. У меня был случай, когда на выводах программируемого контроллера стояли светодиоды и программатору нужно было на выходе иметь ток достаточный, чтобы зажечь эти светодиоды. Поэтому я поставил 56 Ом (маркировка 560 = сопротивлению 56 Ом). Если у Вас такого не будет, то рекомендуется поставить 330 Ом.
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Подскажите пожалуйста ещё один вопрос при программировании програматора подключать все выводы одноимёно и в программируемом програматоре, XTAL можно не подключать?(т.е. MOSI-MOSI, MISO-MISO,SCK-SCK,Vcc-Vcc,GND-GND, RESET-RESET)
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

Да, именно так.
При программировании программатора (извините за каламбур), нужно нажать кнопку MODIFY. Ну и естественно подать питание на него.
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Спасибо за ответ, извените за банальность, только начал заниматся прошраммированием МК поэтому может для вас(знатоков) вопросы банальные а для начинающих вопросы, вопросы и вопросы, ещё раз большое спасибо
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

urcda wrote:для вас знатоков
А мы не знатоки. Я начал несколько лет назад и не могу сказать что являюсь знатаком в контроллерах. Контроллеролюбители мы! :oops:
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Я сам начал заниматся только пару недель назат поэтому думаю пару лет это хороший арсенал
Есть вопрос PonyProg настраивать также как для програмирования ATtiny, заранее спасибо
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

urcda wrote:PonyProg настраивать также как для програмирования ATtiny?
Да, только ФЬЮЗЫ соответствующие при программировании выставить, а так процесс настройки и прошивки такой же...
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Подскажите после нажатия кнопки Launch program cycle выскакивает окно "устройство отсутствует или неисправно (24) чего делать?
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

А вы что пытаетесь прошить Поней через этот программатор? Должен Вас огорчить - Пини не поддерживает его. Можно шить либо из CodeVisionAVR или есть ещё несколько оболочек, совместимых с AVR910....

или вы пытаетесь прошить сам программатор?
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Пытаюсь сам програмотор прошить как вы писали више при помощи STK200/300
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

urcda wrote:Пытаюсь сам програмотор прошить как вы писали више при помощи STK200/300
а питание подаёте на программируемое устройство?
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Да подаю светодиод горит, кнопки нажаты
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

А что говорит пони, если в окне настройки интерфейса нажать "Probe"
может просто пони не видит программатор STK200/300?
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Пишет Test OK
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

Значит так:
- питание есть (горят оба светодиода?)
- Тест программатора пройден
- программатор (STK200/300) живой (им что-то шили до этого?)

Остаётся проверить чем-нибудь (хоть светодиодом с транзистором) ниличие сигналов на выводах АТмеги (MISO, MOSI, SCK, RESET) при потытке программирования. Ну и проверить правильность подключения самих сигналов....
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

на STK горит красный светодиод(цвет совпадает с вашим) на AVR желтый, при нажатии программирования на STK загорается зелёный потом гаснет
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

urcda wrote:на STK горит красный светодиод(цвет совпадает с вашим) на AVR желтый, при нажатии программирования на STK загорается зелёный потом гаснет
А на AVR910 должен гореть ещё и красный (питание МК от USB порта)
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

А как он будет гореть если диод 1N4148 возле SELF POWER запирает (пробывал подключать к USB горит красный нажимаю SELF POWER горит желтый) если перевернуть диод то тогда не будет подаватся питание на Vcc при нажатии SELF POWER
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

Всё правильно!
Значит так:
1) Подключаем AVR910 к USB (не обращаям внимания на руганину винды)
2) К нему подключаем программатор
3) Жмём кнопки SELF POWER и MODIFY. Тем самым подаём питание на STK200/300 и соединяем вывод RESET с колодкой программирования.
4) должны гореть светодиоды питания на АВР910 (оба) и светодиод питания на программаторе.
5) теперь можно программировать!

ЗЫ: кнопка SELF POWER для питания ПРОГРАММИРУЕМЫХ устройств, в том числе и программатора, который туда подключен.
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Спасибо за совет, ура всё получилось программатор прошился и нормально стал на комп, подправте в описании порядок прошивки МК программатора, ещё раз спасобо за подсказки
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

Я рад, что получилось.

В описании всё так и написано, только надо добавить, что питание USB тоже нужно....
urcda
Частенько бываю
Posts: 100
Joined: 31 Jan 2009 18:51

Re: Программатор AVR910 USB

Post by urcda »

Я и хотел это сказать
User avatar
hardlock
Администратор
Posts: 4010
Joined: 21 Jan 2009 14:48
Location: Minsk - zp.ua
Contact:

Re: Программатор AVR910 USB

Post by hardlock »

Спасибо - обновил.
Post Reply