ATMega328 + COM-порт + программатор без платы Arduino
- Войдите на сайт для отправки комментариев
Всем здравствуйте!
Просьба не "пинать", если повторюсь, но ответа на свой вопрос не нашёл на форуме.
Купил МК ATMega328, собрал устройство на нём, когда дело дошло до пуска-отладки, воткнул МК в Arduino UNO rev.3 и был удивлён, что МК не шьётся. Долго "курил" интернет - нашёл! Arduino ISP. Вшил bootloader. Заработало! Далее поставил себе задачу для отладки подключить свой девайс к компу через COM-порт. Собрал схему "согласоватора". Подключил - работает. Следующей задачей решил, удобней было бы шить МК не вынимая из своего устройства. И тут поплыл... Горы схем, пробовал многие. Результат нулевой... Каюсь, что знаний в области "потрахов" МК нет, и посему я в растерянности... Вроде встречаются описания, что через ту же схему согласования сигналов можно шить через те же RX/TX/GND, только RESET нажимать сразу после компиляции, перед началом процесса "заливки". Сколько не пробовал - не получается. Думаю ладно - моя схема работает чисто через RX/TX/GND выводы МК, а схемы встречаются которые при подключении, всё через тот же COM-порт, шьют через MISO/MOSI/SCK/RESET/+5V/GND.
Нужна помощь! Растолкуйте не разумному! )) Какие варианты есть подключения для обмена данными через COM-порт и(или) вливания скетчей из Arduino IDE в ATMega328 без платы UNO, ну т.е. вообще без каких-либо заводских плат? МК находится в конечном устройстве. Кварц и кондёры - всё штатно, как положено, есть!
ну, какие такие варианты? - берём схему дуино, берём макетку и паяем дуино.
... МК находится в конечном устройстве...
Присоединяюсь к Калапуцкому
Я тоже когда платы дифицитом были, наигрался с изобретением велосипедов.
Для надежности результат препочитаю плату купить.
уже не предпочитаю подбирать 27 пикофарад и паяния под лупой
уже не препочитаю много чего
ну, какие такие варианты? - берём схему дуино, берём макетку и паяем дуино.
И только так? Это я так понял Вы предлагаете всё время шить по схеме ISP? Что прям нужна целая Дуина чтоб прошить МК? Проще варинтов нет?
Заводской алгоритм каков прошивки? Дуина через какие ноги шьёт свой МК?
Присоединяюсь к Калапуцкому
попрошу не коверкать имя...
*я вообще первую дуино из программатора usbasp сделал, прошив в него загрузчик - показалось глупым постоянно подключать програматор на атмега8 для программирования атмега8.
... МК находится в конечном устройстве...
Присоединяюсь к Калапуцкому
Я тоже когда платы дифицитом были, наигрался с изобретением велосипедов.
Для надежности результат препочитаю плату купить.
уже не предпочитаю подбирать 27 пикофарад и паяния под лупой
уже не препочитаю много чего
Вот не надо мне такое удорожание устройства предлагать, мне ещё и семью кормить надо! )) Разбогатею - так и сделаю!
Спасибо!
показалось глупым постоянно подключать програматор на атмега8 для программирования атмега8.
Вот и я из этих соображений исхожу, но решения пока так и не нашёл...
И только так? Это я так понял Вы предлагаете всё время шить по схеме ISP? Что прям нужна целая Дуина чтоб прошить МК? Проще варинтов нет?
Заводской алгоритм каков прошивки? Дуина через какие ноги шьёт свой МК?
вы схему дуино хоть видели? - где там нужно иметь дуино для программирования дуино?
дефолтный контроллер с компортом - если просто объяснять
что куда подключено и как шьётся - смотрите схему дуино и читайте подробные логи дуино ИДЕ.
уже не предпочитаю подбирать 27 пикофарад и паяния под лупой
а 27 пикофарад - это для чего, если не секрет?
показалось глупым постоянно подключать програматор на атмега8 для программирования атмега8.
Вот и я из этих соображений исхожу, но решения пока так и не нашёл...
самое дешевое у меня было
но я сразу DIP-ы покупал
в LPT1 втыкал
ща попробую сфотографирвать
щас меня спроси какой 25 ног сом а какой лпт я даже сходу не вспомню
какой глючил ак какой прошил мне все загрузчики и просто шестнадцатирички тоже не вспомню
Вот и я из этих соображений исхожу, но решения пока так и не нашёл...
http://www.obdev.at/products/vusb/usbasploader.html
я вот одного не понимаю - сам спросил, сам себе ответил в заглавии темы, но нифига сам не понял, что сам же написал:
ATMega328 + COM-порт + программатор без платы Arduino
т.е. нужен атмега328, нужен адаптер компорта, нужно всё это собрать в кучу, прошить загрузчик и получится дуино.
самы дешевый программатор и надежный от LPT
5 ног
1 нога земля
1нога 5 вольт от usb кварц начинает жрать после прошивки
схему сам выссматривай по фото
сразу кварц 8мгц и кандеры 27пф когда прошиваешь и отвязываешся от внутренней rc цепочки и по новому прошивай нехачу
без кварца кандеров и питания чип адекватен тоже
но пока с фузами(предохранителями) не накосячишь
чип всегда адекватен
все остальное знаааачиетльно дороже и замудренее
вспомнил
atmel 8 ки уменя тогда шились но думаю это тоже самое что и 328-ки
местные поправят
копьютер пень какой-то был не помню
втыкал сразу сзади практически сразу в мать чтоб минимум потер и помех
с LPT порта атмел уже сразу поднималься и отвечал
я сразу шил в него загрузчик с arduino.cc из расчета что он на кварц подсядет после прошивки
Нужели я все это делал?
Непомню
а давно от этого отошел
ничего не помню
я уже несколько лет покупаю готовые и пошел в них втыкать что-нибудь дальше об платке не думая
я даже уже не различаю какой чип воткнут
копилятору все равно там выбрал что-то более менее по названию подходящее и забыл
это уже проблемы компилятора а не мои
Простите, если неясно выразился! Это мой первый проект и вообще первое знакомство с МК.
Я разработал схему одного устройства на МК ATMega 328. Выбор такого МК обусловлен тем, что на Arduino UNO, что я приобрёл именно такой МК. Изначально прикидывал, что прошью на ардуине, воткну в готовую свою плату и буду радоваться. Но как это пожалуй у многих бывает не всё сразу пошло. Передёргивать МК из своей платы в ардуину думаю не очень хорошая идея. Вот и хочется отладить на своей уже плате. Т.е. в скетче написал что и как выкидывать в COM-port чтобы в терминале видеть и понять, что надо ещё поправить в скетче. Собрал схему для согласования сигналов COM-порта, подключил её к своей плате и получаю в гипертерминале что хотел. Т.е. с этим вопросом всё вроде хорошо. Но через эту же плату согласования, Arduino IDE не хочет вливать скетч в МК (stk500_getsync(): not in sync: resp=0x00), может и не должен конечно. Вот я и спрашиваю: при подключении по этой схеме возможно ли из Arduino IDE заливать скетчи в МК или нужен другой способ подключения? Т.е. как возможно решить вопрос полноценной работы с Arduino IDE на своей плате?
правильное решение
так целые автогиганты заводы конвеером машины делают
... Собрал схему для согласования сигналов COM-порта..
терия правильная пара биполярных транзисторв
а вот с резисторами без осцилографа нереально согласовать
что ты от нас хочешь что-бы с фото я взял свою и долго под лупой разглядывал как я согласовл
1500$
помню все что шил через свои 2 транзистора удача была 50% - ненадежный это способ
люди бегают по магазинам
ишют и менно вотт тот который ввчера еще шил через сом
вот тот именно этот а может с таким чипом
короче сом со своими недо -25 +25 дурко потдтверждениями недодраверогалками не так выставленными дрянь с вероятностью усепха 10%
помнжю я с этими диодами кудесил чтоб напруги биполярникам начало хватать
помню с инициализацией мудрил чтоб максиму ног напругу диодами собрать
помню удача начиналась с 3-ех дидов и кандера 10мкф вроде
помню винда все время порт отпускала не вовремя и все на смарку летело
помню друг по ТЗ так задолболся долго не работавшу схему поднимать плюнул и за 20$ заводского исполнения купил под себя а потом влез в ТЗ заказчика указал USB и успешно весь мясокомбинат обеспечил считывателями
Адаптер COM порта проще всего сделать на MAX232 (цена 30р), +4 конденсатора.
Недавно пробовал ради интереса, работает, скетчи шьются, ресет автоматом через DTR:
Схема отсюда: http://arduinodiy.wordpress.com/2012/03/19/serial-connection-for-your-arduino-atmega/ .
На схеме у чела RTS, но на самом деле должно быть DTR (4 пин COM порта).
Бутлоадер прошивал через Bus Pirate. Как тут уже советовали, более простым вариантом может быть специальный бутлоадер который выдает себя за программатор: http://www.obdev.at/products/vusb/usbasploader.html .
ладно уж чуток потдержу сом сообщество
вон на фото смотри
проще всего сом - это старый ненужный дата-кабель у жены найти и распотрошить
резет-то у тебя все рано есть а если нет никто бренчать пинцетом по резету не запрещал
после компиляции
3-ноги на скрутки
нога чтения нога записи земля
ничего паять не надо все на скрутках
не иважно какая микруха
я правдо тогда нетбуком шил и потому дата кабелья потрошил usb-помнитя siemens малой постирал
работы на 30 мин
денег 0
вероятность успеха 50%
на фото все шились потрашенным и купленным 5$ датакабелями
вон два еще к макеткам скруками прикручены еще
смотрю я всепже 3 провода отсвил припаянными
круто
припаял ведь :)
микрухи вспомнил
cp2102
и
pl2303
у них дрова разные были помню
серия клонов tft232 max232 max2323 помню я мимо проходил 232 232 232 232
>Вроде встречаются описания, что через ту же схему согласования сигналов можно шить через те же RX/TX/GND, только RESET нажимать сразу после компиляции,
Все верно.
Что такое ардуино? Чем она вообще отличается "от обычного AVR"? Только одним - в нее зашит ардуиновский бутлоадер.
В чем такая "особость" ардуиновского бутлоадера? В том что он умеет принимать свежую прошивку по RX/TX, что приводит к ненужности программатора.
Если предположить что вы действительно нигде не нахомутали с
>Вшил bootloader.
>Собрал схему "согласоватора". Подключил - работает.
то больше ничего для прошивки без программатора - не нужно.
Причиной проблемы можыт быть:
1. Выбираете не ту плату
2. Самой ардуиноIDE говорити "лить через программатор" (хотя теперь это уже не нужно)
3. В неправильный момент нажимаете Reset
Я бы, поиски причины начал с того, что еще раз проверил что ваш "согласоватор" действительно работает. Что com-порт правильно сконфигурен. Что ардуина действительно способна общаться с компом по Serial. На основании чего вы решили что он у вас работает? Как вы это проверяли?
Ох уж эта молодежь))Даже жены с кабелем.Хотя видимо жена не слишком молода-уже юсб3 в моде))
Всем спасибо! Разобрался!
Походу в ходе экспериментов пальнул кабель USB-COM. Прицепились осциллографом на работе и выяснили, что сигнал с него идёт, но очень слабый - 2,5В. Прицепили эту схему согласования к COM порту старенького PC и всё заработало на ура! И даже "как по книжке" удалось залить скетч, щёлкнув по RESET в начальный момент передачи данных сразу после компиляции!
Личные выводы:
1. Новую микросхему ATMega328 нужно подготовить для работы со средой программирования Arduino IDE, загрузить bootloader через Arduino ISP
2. Можно собрать схему (стр.10), левую часть от МК, либо собрать на MAX232
3. По такой схеме работает и обмен данными между МК и компьютером и есть возможность залить скетч.
4. Корень "зла" был в сдохшем кабеле из-за "кривых" рук. ))
5. Найти неисправность кабеля удалось лишь благодоря осциллографу! Вещь нужная, но дорогая...
Кстати! Если есть у кого-нибудь информация о том, какой фактически уровень сигнала идёт с рабочего кабеля USB-COM, напишите, буду признателен! По стандарту вроде как для RS232 +/-12В. Если новый кабель возьму, что бы знать некий эталон перед началом очередного эксперимента.
Ещё раз всем спасибо!
Кстати! Если есть у кого-нибудь информация о том, какой фактически уровень сигнала идёт с рабочего кабеля USB-COM, напишите, буду признателен! По стандарту вроде как для RS232 +/-12В. Если новый кабель возьму, что бы знать некий эталон перед началом очередного эксперимента.
логика USB-COM будет относительно питания USB +5V - никаких +- 12V там взяться неоткуда по определению.
что касается стандарта - то там не стандарт, а совместимость со стандартом.
вот вы фигней маетесь. если бутлоадер прошит, с компорта через согласующее устройство подцепить rx tx и перед прошивкой сделать ресет будет заливаться. вы что то совсем перемудрили. может com порт дохлый, плохие контакты. rx tx перепутали
Кстати! Если есть у кого-нибудь информация о том, какой фактически уровень сигнала идёт с рабочего кабеля USB-COM, напишите, буду признателен! По стандарту вроде как для RS232 +/-12В. Если новый кабель возьму, что бы знать некий эталон перед началом очередного эксперимента.
логика USB-COM будет относительно питания USB +5V - никаких +- 12V там взяться неоткуда по определению.
что касается стандарта - то там не стандарт, а совместимость со стандартом.
Вполне может стоять преобразователь повышающий! Почему нет?
Вполне может стоять преобразователь повышающий! Почему нет?
скажу болше - там может быть установлен термоядерный реактор... почему нет, если религия запрещает читать богохуйскую документацию на девайс.?
Юмор оценил! ))