Notice: Memcache::get(): Server localhost (tcp 11211) failed with: Connection refused (111) in /home/a146/www/we.easyelectronics.ru/engine/lib/external/DklabCache/Zend/Cache/Backend/Memcached.php on line 134
AVR slowpoke programmer / Блог им. dcoder / Сообщество EasyElectronics.ru

AVR slowpoke programmer

Включите воображение

Вы начинающий радиогубитель.
Вы хотите изучить AVR. Именно голый AVR, потому что странные ребята с ЕЕ вам сказали, что ардуино это не ТРУЪ.
Вам нужен программатор. Какие варианты?
— Купить готовый дорого и не спортивно
— Пять проводков и Громов не хотят дружить с современными компами без ком-порта. Да и вообще в моде USB
— FTDI тоже стоит денег, а её еще и припаять надо
— Можно сделать, например, USBAsp. О, точно! Но для него вам надо прошить контроллер, а для этого…

Вам нужен программатор. Какие варианты?
— Купить готовый дорого и не спортивно
— Пять проводков и Громов не хотят дружить с современными компами без ком-порта. Да и вообще в моде USB
— …
Ну в общем вы понели, ага :)

Правда где-то я видел православную идею программатора из «USB-тройника». Но подозреваю, что есть у вас (вы начинающий радиогубитель, помните?) на столе вещь, которая встречается гораздо чаще USB хаба.

(звук опять тихий :)


Идея, как ясно из видео, проста до идиотизма:
Программа эмулирует нажания клавиш CAPS LOCK Num lock и Scroll lock, это приводит к переключению светодиодов на клавиатуре. Таким образом можно доставить прошивку в МК. Обратной связи не требуется.

В ахриве лежит программа. Но она еще нуждается в допиливании. Например, все настройки задаются пока-что путем правки исходников. Когда нибудь я её допишу :)

Выключите воображение
  • +19
  • 06 мая 2012, 21:40
  • dcoder
  • 1
Файлы в топике: software.zip

Комментарии (160)

RSS свернуть / развернуть
Нет слов! Гениально просто.
+1
В принципе, им еще и читать можно. Если завести MISO на какую-нибудь кнопку клавиатуры и отслеживать её нажатие
0
Это довольно проблематично, учитывая что кнопки в клаве матрицированы.
0
Ну, думаю транзистором это решить таки можно
0
Месье знает толк…
Теперь еще нужно такое-же через звуковуху :)
+3
SWIM
Мы работаем над этим :)
+1
На SWIM есть документация?
0
dcoder напишет — тогда будет! :)
0
Нененененене :)
0
Ну да. Вот
0
Тогда неплохо бы просто самопальный открытый программер/отладчик для STM8, без извратов. А то пока что я только об одном слышал — Versaloon.
0
Да мне оно вроде как не надо — дискавери есть.
И потом, отладчик (проггер не обязательно) надо интегрировать с IDE, а тут я теряюсь. Разве что прикинуться ST-Link…
0
Прогер может пригодится карманный, что бы без компа прошивать где-нибудь на подводной лодке. Работал над этой идейкой, но в чтение так и не уложился.
0
А в чем там проблема? (каюсь, доки на SWIM еще толком не читал)
0
8МГц несущая (или 16, не помню точно) 20 тактов на бит. Передавать не составляет проблемы с применением того же ШИМ, а вот приём… С учетом арбитража не представляю даже как (с учетом что у нас мк 12-20МГц, а не арм), а без него не интересно.
0
А как это сделано у ST? Программно или они юзают какой-то из имеющихся железных интерфейсов в качестве SWIM-драйвера?
0
В весалуне говорят на ДМА висит. У СТ не знаю, даже не смотрел какие выводы используют. На LPC изначально была идейка запустить, уверен что будет работать даже без арбитража. Слейв так, на сколько я понял, сам никогда не начнет передачу, только по запросу мастера. А мастер сам говорит сколько слейв должен передать данных. Однако в протоколе предусмотрено наличие арбитража (подозреваю что он важен только для слейва, что бы его могли «заткнуть»), так что хочется по правильному. Вообще в доках все прекрасно расписано. Я ещё попробую этим проснифить протокол в жизни, но скорее что бы больше убедиться в несостоятельности идеи программатора на базе 8битных архетиктур.
0
Компилятор бы кроссплатформенный.
А отладчик на дискаверях есть, благо стоят они копейки.
0
доки то есть, только вот со временем у интерфейса напряги.
0
Эксперименты еще не ставил, может и не сработает со звуковухой.
0
При желании дамп SWIM протокола загрузки и отладки простой програмки. Примерно 800кГц(кбит/с) 1.25мкс на бит. Межбайтовое расстояние примерно 5мкс, что не может не радовать. Я боялся что будет впритык гнаться.
0
есть загрузчик через звуковуху или любой плеер с семплированием 8-41кгц

а программатор можно было сделать путем мигания прямоугольников на экране, а обратный канал от мк
0
линк на загрузчик?
0
www.mikrocontroller.net/articles/SOUNDRX
все хотел написать про него перевод, но лень
+1
Занятно..))
Музычка порадовала.)
0
Это complex numbers. Альбом «Старые игры о главном»
Треки Last Step to Victory и Desert Forcing
0
Ну это не совсем альбом, альбомов у них только три. Скорее подборка обработок.
0
Мелодии жуть как знакомые, не мог вспомнить из каких игр.)
Хороший «альбомчик», агада.)
0
Эммм… охренеть.
0
Вот этого коммента я и ждал :D

Кстати, там твой генератор, он это… работает :) Правда регулировку выходного напряжения я еще не делал. И выше 5 МГц не тестил.
+1
Ну и хорошо, как сделаешь так сделаешь. Я себе прикупил DDS генератор, правда он автономным прибором.
0
А как оно на USB-хабе делается?
0
  • avatar
  • Vga
  • 06 мая 2012, 22:15
Включают и выключают питание на разных портах. Дрыгают питанием :)
0
ЫЫЫ. Хотя для этого тру-хаб надо, все магазинные, какие видел, тупо разводят 5В по гнездам.
А вообще, хаб с управлением питанием есть на мамке, так что не менее распространен, чем клавиатура.
0
Твоя правда :)
Но с клавой оно как-то удобнее
0
Забавная штучка, да. Только страшно медленная. Такой разумней не USBASP зашивать, а загрузчик, да покомпактней)
Правда, к загрузчику все равно нужен USB-COM адаптер, а там можно и линиями ком-порта дрыгать — тоже страшно медленно, но все же получше.

Кстати, а разве в той микре выходы не открытый коллектор? Подтягивающие резюки вместо отпаянных диодов не требуются?
0
  • avatar
  • Vga
  • 06 мая 2012, 22:24
Можно в принципе USBTinyISP прошивать. Он для Attiny2313.

Нет, выходы push-pull. По крайней мере ведут себя так, при скорости дрыганья в 100Гц
0
Вру, не 100, а 10
0
А можно ещё ведь из VGA сделать… Допустим пустить синий канал на RESET, красный на MOSI, а MISO и SCK на I²C провода повесить. Только чтобы добраться до I²C надо будет слегка модифицировать видеодрайвер. Да и пускать на этот порт отдельный X-сервер, дабы ничего не захотело рисоваться.
0
Вот это ТРУЪ :)
А IDE? Я не в теме, но может из этого жирношлейфа тоже можно что-то выжать?
0
Ну он во первых достаточно неудобен, а во вторых тоже не везде есть вроде.
0
На топовых материнках уже вроде как нету, ага
0
Ну в моём ноутбуке IDE нет.
0
В моем нетбуке тоже. Бида, бида :)
0
Зачем? Трех цветовых каналов вполне достаточно для программирования. А то мож еще можно в качестве клоков синхру взять.
Ну и написать прожку которая на заданный монитор будет выводить специально сформированную картинку.
0
Прозреваю прошивку в формате .bmp :D
+2
bmp слишком быстро будет дёргать. Скорее в формате gif или mpeg. =)
0
Немного подумал, до I²C добраться сложновато, а вот дёргать SCK, MOSI и RESET вполне можно. А MISO по микрофону пустить! Собственно пока идея проста — нарисовать на порту независимый рабочий стол и на нём на всеь экран окно, в котором мигать цветами. Хочуосциллограф.jpg.
0
бррр. содомиты! xD
ПС видели что там на вга порту творится?
0
Видели. И генератор картинки делали. На синем и красном канале точно ничего страшного не будет.
0
А на зеленом что? Синхра подмешана?
0
Да, может быть синхра подмешана.
0
Если речь о линуксе, то для того чтоб добраться до I2C, который на VGA/DVI/HDMI, нужно всего-лишь подгрузить модуль i2c-dev, ну и использовать готовые программки i2cdetect/i2cdump. 25¢ I2C Adapter
0
а XMega случайно не шьет? :)
0
Если там тот-же формат и протокол (в чем я сомневаюсь :) то да
0
маньяк еба…
0
dcoder, чувак, наркотики это плохо
-1
… и дорого
Вот приходится на программаторах экономить :D
+1
я уже неделю слежу за твоими изобретениями
и немного в шоке)
0
Тут всё сообщество подсело уже и ждет очередной дозы :)
+1
Великолепно.
0
Теперь только электромеханический программатор из печатной машинки осталось сделать :) И вручную винарник набивать на ней.
+1
А еще там будет сбоку ручка, и её надо будет крутить, что программатор работал. А программу можно записывать на перфоленты!
0
Угу, а следующим шагом магнитофон «Романтик» и кассета МК-60. «20 лучших прошивок для AVR!» ))
+2
Кстати, было бы прикольно :)
Ресет нам не нужен, можно в жесткую посадить, а моси и клок на 2 канала. dcoder ? :)
0
можно ресет в виде полоски фольги на ленте сделать. по принципу автостопа на катушечниках
0
Назад в будущее!!! Даешь прорамматор «Феликс»!
+1
Ты еще предложи настукивать прошивку на пианино. Нотная запись прошивки на 16 кб по сложности будет примерно как симфония.
+1
а что, отличная идея! к тому-же, можно закодировать нибблы на клавишу, или даже байты на сочетания.
так и вижу:
— О_о что это за ноты у тебя? ты что, музыкой решил заняться?
— Не трожь!!! это тестовая прошивка!
ну и соседи будут вешаться во время прошивки… :))))
0
Да-да, истории о том, как предки решили послушать кассеты для Спектрума…
0
что, тоже такое было? :)
только у меня бабушка решила узнать, что я слушаю. было очень смешно. )))
0
У меня нет, у знакомых было. У меня пришлось только одному знакомому объяснять, что на аудиокассеты не только музыку писать можно.
0
Я просто поражён… пока есть такие извращённые умы (не в обиду сказано), электронная промышленность России может и не поднимется, но и точно не умрёт… =)
0
  • avatar
  • enq
  • 07 мая 2012, 07:56
Обычно такие умы через какое-то время оказываются в Кремниевой долине, на тёплом месте и в шоколаде. Так что это промышленность не в России жить будет…
0
Что к этому привело? Кто будет это исправлять?
0
И вполне заслуженно будут там.
0
Такими темпами электронная промышленность в России будет представлять из себя кучу квартирных офисов.
0
Почему?
0
Не знаю, чувство такое. С современными технологиями все большее количество действий не требуют больших заводов. Впрочем, это только мое мнение, я не берусь чего-то прогнозировать.
0
В домашних офисах, имхо, будут работать маньяки-одиночки (Привет, Ди :). А команде человек из 5, которая работает над одним проектом, там будет уже не уютно.
0
Кстати. КВН я бросил смотреть ещё при Маслякове старшем. Лично меня, почему — не могу объяснить, страшно бесили моменты, когда игроки его подкалывали. Никто не в курсе почему? Ни у кого такого нет?
0
а что, нынче уже младший? что то я пропустил. а подкалывали по тому что это было классикой жанра )
0
Да я понимаю, что подкалывали потому что так положено. Не понимаю почему меня это бесило.
0
Китайцы давно уже в подвалах всё делают.
0
ну квартирный это слишком конечно, но отсутствие производства — совсем не плохо. посмотрим на две компании — Nvidia и ARM(Keil). ни первая ни вторая собственных заводов не имеют. но при этом весьма уверенно занимают существенные доли рынка. первая видушек, вторая процессоров. а материальным воплощением пусть занимаются специально обученные люди (контрактные производители). как по мне, так это наоборот, только плюс, что контора может не тратить ресурсы на обеспечение производства.
0
Есть плюсы у обоих вариантов. Например, свое производство можно точить специально под свои потребности, а не разрабатывать ориентируясь на возможности контрактных производителей. Вобщем, зависит от конкретной ситуации.
0
в общем случае, да. но если ты монстр типа той-же нвидии, можно себе позволить и надавить на производителя, на предмет модернизации производства.
0
Тут дело даже не совсем в модернизации. У производителя нет стимула заниматься перспективными разработками нужными именно конкретному заказчику. Он отрабатывает новые техпроцессы под максимально широкий круг потребителей, а чипы такая штука, что часто можно достичь наилучших результатов выпиливая технологию под конкретную узкую задачу. Например, AMD в своих процессорах использует SOI (кремний на изоляторе, конкретно, если не ишибаюсь, на окиси кремния). Но для подавляющего большинства заказчиков эта технология не нужна, поскольку она только удорожает процесс. Это достаточно глобальное изменение в процесс, но и какими-нибудь более мелкими специфичными изменениями контрактному производителю особо заниматься нет смысла, если только это не накрывает достаточный круг потребителей. Наконец, контрактный производитель ориентируется на существующие потребности, так что ему не имеет большого смысла заниматься перспективными разработками в режиме «свободного поиска», к тому же его норма прибыли достаточно не велика, что бы иметь возможность вкладывать в такие исследования деньги. У него и с освоением готового часто проблемы возникают, тот же TSMC, который делал чипы нвидии, помнится, имел много проблем с освоением нового техпроцесса, в итоге нвидия здорово здала позиции ATI, которую к тому времени приобрела AMD у которой свои мощности и довольно высокий уровень собственных разработок. Даже если просто посмотреть на индустрию в целом, то самые передовые разработки у контор, которые имеют собственное производство — Intel, AMD, японские конторы (хитачи, если не ошибаюсь), IBM.
Я это не к тому, что всем надо срочно создавать собственное производство, а просто в подтверждение той мысли, что каждый вариант имеет свои плюсы и минусы. Контрактное производство позволяет выйти на рынок с готовым продуктом вложив существенно меньше денег. Свое — позволяет получить более передовые технологии и в пересчете на единицу изделия обходится дешевле.
+1
да, все верно. собственное производство позволяет быть на острие прогресса. и в конечном счете это очень выгодно. и не отрицаю полезности.
но я больше о том, что можно быть Очень успешной компанией и без собственного производства.
0
Естественно. В конечном итоге это вопрос конкретной бизнес-модели.
0
Кстати, кто гарантирует, что контролёр клавиатуры на светодиод гонит постоянку?
Теоретически может попасца такой, что гонит ШИМ.
0
Отдельная простенькая клава все равно дешевле одной ftdi, или на уровне.
0
Да уж не дешевле, менее 200р не видел. FT232R чуть дешевле.
0
я за 185 видел. Ну правда там магаз такой… может она и не новая была, а с пробегом :)

И вообще, что мешает собрать клавиатуру обратно после прошивки и радоваться дальше? :)
0
А FT232RL я за ~130 покупал.
И вообще, что мешает собрать клавиатуру обратно после прошивки и радоваться дальше? :)
Ну тут же предлагают лишнюю купить, если вдруг основная не подойдет *покосился на стопку клав за кроватью*.
0
панельку в плату прифигачить — будет клавиатура тру-радиогубителя. Для светодиодов сделать дип-шильдик.
+1
Плюс, лишнюю клаву сейчас реально найти почти в каждом доме
0
Ну разве что у компьютерщиков. А у одного знакомого помню пришлось его дочь к другу гонять за PS/2 клавой (биос USB-шную видеть не хотел).
0
*Посмотрел на три клавы на шкафу*… может и правда только у компьютерщиков :)
0
три клавы
Лол, в моей стопке столько же) Плюс полторы воткнуты в десктоп и одна блютус. А, и еще на шкафу клава-чехол для планшета.
0
Причем у меня такой прикольный набор: древняя с AT разъемом, PS/2 и USB :)
0
У мя аналогично, только вместо PS/2 беспроводной комплект (а AT-шная с переходником на PS/2).
Wait… В шкафу еще лежит AT-шная с механическими (!) кнопками)
0
посмотрел на 14 клав… и подумал когда же я научусь выкидывать вещи )))
0
4 АТ )) с механикой еще IBM Cherry DELL )))
+1
и подумал когда же я научусь выкидывать вещи )))
заставлять себя нужно. ну, или когда жизненное пространство закончится — окажется заваленным хламом… %)
0
как бы не всегда., хотя у меня где-то плата осталась от старой клавы (пытался сделать гейм-клаву для себя), может попробывать…
0
Я пробовал со старинной (еще с АТ разъемом) клавиатурой. Так вот, там контроллер при включении одного светодиода может дать короткий импульс на соседний. Пришлось вешать RC-цепочки.

Но когда взял usb клаву, все заработало с первого раза
0
Аплодирую стоя! Проблемы курицы и яйца более не существует ))
0
Мы придумаем новую :) Что мы, не человеки чтоли? :)
+1
ТРУёвее было бы посрезать с транзюков МП111 (старых цилиндриков совецких) крышечки и через резиночки приставить к соответствующим светикам!!! а если на то пошло то и на некоей области на экране монитора
0
Так эта… смотри. Что тебе проще будет сделать: отпаять три светика и припаять три проводка или распилитьвать транзисторы, потом все это еще настраивать. Главное — простота :)
0
тогда вообще 3 фотодиода купить и на экране три квадрата :)
кроме того есть у меня совецкие фотодиоды…
тобиш резюк с кондером и на ноги МК… и моргай на экране с частотой 10 герц — запросто :) а ввод можно релюшкой организовать которая на нумлок нажимает :)
0
просто доставать паяло… греть… паять… КЛАВУ РАЗБИРАТЬ… СВЕТИКИ ОТПАИВАТЬ… не ТРУЪ

а так на макетку кинул МК три фотодиодика и три резюка и ВУАЛЯ :)
0
да и мп есть не в каждом доме
0
Т.е. купить с ебей usbasp за 3-4 бакса — совсем не решение проблемы? Ну это когда время терпит, конечно.
-1
Ну и не каждый школьник может купить на ебее :)
Хотя щас всякие киви с их виртуальными визами есть.
0
пока прошивается контроллер можно успеть заЛУТить для него платку
+1
Именно, всё равно на компе особо больше ничего не поделаешь. Не, Футураму то замустить можно, но вот в комментах же не посрешь :(
0
МоЖнО и ВКаМмеНТтах СрАТь :)
0
На ноуте без нумпада интересней)
+1
тА ну не маgёт такая фиgня нас астанавитb
Ну или: holdrelease — мы не ищем лёгких путей :)
0
тю блин, теги слопала.
hold[Alt] [digit] [digit] [digit] release[Alt]
0
Цифры нажимаются на нумпаде. А он будет непредсказуемо включаться/выключаться. Как и капс со скроллом)
0
А, да. забыл что верхний ряд не работает с альтом. Ваша правда.
Тогда видновс-клавиатуру вызывать и мышей клацать.
0
Не, она тоже реагирует на CAPS LOCK и прочие.
Только что проверил
0
Но зато ей можно
МоЖнО и ВКаМмеНТтах СрАТь :)
даже с ноута/нетбука без цифровой клавиатуры.
0
Так и обычной можно, если как вторую подключить
0
Ушёл стреляться…
0
Ну вот, а я подумал что это все бесконтактно будет(((
0
И с чего такие мысли? :)
0
Ну так — клава, светодиоды…
0
Сделай бесконтактно и будет тебе 40 плюсов))
+1
Ок, но скорость будет 45 байт/час. Устроит? :D
И придется юзать бутлоадер
0
То есть мегу8 можно будет полностью прошить (все 8к) всего за неделю :)
0
Ну прошивка «помигать светодиодом» мало будет весить, я думаю, так что в порядке эксперимента почему бы и не сделать?

Светюки сильно медленно мигают? Большая задержка? А в чем тогда разница между твоим способом и моим, не считая опторазвязки?
0
Ну я хотел немного по другому сделать :) Без клавиатуры
0
Ясно. Сейчас какая скорость у тебя там?
0
10 бит/сек
0
)))))
дневник начинающего радиогубителя.
пятница. О! контроллеры — круто! вот только чем зашить!.. Вот отличный проект! проблема курицы и яйца решена! Н-ддааа… долго шиться будет… ну да ничего, найду чем заняться, да и впереди выходные… поставил шиться мегу для аспа. пойду пить пиво.
суббота. 14% О! прогресс. но что-то медленно… пойду пить пиво.
воскресенье. 28% О_о почти третья часть. процесс идет. пойду пить пиво.
понедельник. н-ддааа… небыстро…
вторник. ну что-же, половина пути пройдена. бахнем пиффка за прогресс!
среда. все ближе и ближе… чем-же заняться? пойду пить пиво.
четверг. ура-ура! почти конец!
пятница. YAHOO!!! дошилось! отметим это событие!!!
(вечер пятницы) да нах мне оно!
+1
… пойду пить пиво.
0
долго шиться будет? ;)
0
намекаешь что столько пива нет? тогда мы перейдем на водку.
0
лучче сразу на чистый спирт. просветление быстрее наступит!
0
проводки найти проще «бесконтактных датчиков» со схемой усиления/фильтрации. Да и в 5 проводках проще найти ошибку сбора схемы.
0
Схемы в ASCII порвали мой мозг
0
не спектрумист. там в журналах (на дискетах!!!) таких было много. на два-три экрана… доработок…
эххх. где там мой профик? надо найти и смахнуть пыль… ;)
0
да, в разрешении 256х192… точек (пикселей) с раскраской два цвета на знакоместо 8х8…
0
А чел-то, левша кажись… Левши они такие… Блошиные кузнецы…
+1
скорее старый совковый идиот-нищеброд
казалось сначала, что это крутой спец, но когда он стал писать про ие8 и авр, то я засмеялся

бывают такие упоротые, которые делают то, что уже давно сделано и забыто
только они снова это изобретают, но выходит велосипед с квадратными колесами и потом эти страдальцы бегают по формам и ищут шпалы
-3
и бывают ещё такие, кто сам не может ничего сделать и что бы казатся крутыми обсирают старых совковых идиотов-нищебродов. Печальное зрелище.
+1
а какие варианты решения такой проблемы предложите вы?
да и почему многие не понимают just4fun…
0
ну я не знаю, мне показалось, что jusf4fun там и не пахнет
0
А чем же там пахнет?
0
Чувак просто не в теме твой серии постов про термометры. Или и их принял в серьёз :)
Не, серию можно рассматривать и как серьёзные произведения, но всё же больше пикольными.
Спасибо. Майские праздники выдались интересными.
+1
вот это я понимаю бит банг) крутотенюшка!
0
Собрал себе такой. Внесу предложение: написаать отдельную программу для считываия и верефикации, ну или дописать эту (сам в этом полный 0). То что не хватает линий связи — не беда, проводок с MOSI на MISO можно перекидывать (или шлейф с джампером замутить).
0
А вы правда его использовали по назначению? И не просто just for fun?
А можно в таком случае поведать историю, как такое могло случиться?
Я два года этого ждал :)
0
Не буду лукавить душей и радовать Вас сообщением, что это мой основной рабочий программатор. В качестве такого я юзаю USBASP. Вашим творением я пользовался только пару раз при обучении азам (поморгать светодиодиком), когда у меня еще не было USBASP-а. Сейчас он находиться «на подстраховке» в селе, ибо мне жалко туда покупать еще один USBASP, а тягать его туда-сюда постоянно с собой напряжно, да и забыть можно. Но порадую Вас тем, что где-то на Радиокоте, кто-то даже советовал его какому-то новичку для сборки в качестве первого программатора вместо Громова или SТК-200 (точно не помню). И вообще, данное сочетание слов (Slowpoke programmer) выдает в поиске того же Радиокота аж 5 тем. Может это и не успех, но мне лично Ваш нестандартный подход к такого рода вещам очень нравиться (не лесть, чесное слово, я даже все Ваши записи сдесь и весь личный блог перечитал после этого топика). Пишите пожалуйста еще про такие вещи. И про термометры на Тини13/2313 без внешних датчиков тоже. Только желательно с исходниками, а то я хотел повторить, а там даже прошивки нет((
+2
Отличная идея для нищебродов, у которых нету в наличии старого железа с LPT портом. Прошиваем атмегу8 через данный девайс, и получаем USBASP, далее пользуемся им :)
+1
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.