![]() Вопросы программирования микроконтроллеров. , Задаем вопросы,отвечаем,не засоряем другие темы! |
Здравствуйте, гость ( Вход | Регистрация )
![]() Вопросы программирования микроконтроллеров. , Задаем вопросы,отвечаем,не засоряем другие темы! |
![]() ![]()
Сообщение
#1
|
|
![]() Специалист ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 897 Регистрация: 18.6.2009 Из: Винница Пользователь №: 14820 ![]() |
Всетаки решился открыть новую тему
![]() ![]() ![]() Я не претендую на профи в этом деле ![]() Первым делом –программатор. Стоит подумать перед покупкой-зачем он Вам? Прошить 2-3 контролера в месяц? Глупо! Нет LPT порта,нет COM порта? Прошить можна и на другом компе. Ну а если очень захотелось крутой программатор-Ваше дело. (Блатная жизнь-нелегкая!) Тут каждый принимает решение сам. Мой совет-набираете в GOOGLЕ-программатор Громова или программатор на MAX232-информации немерено! Паяльник в руки-10-15мин. И он у Вас есть. Попробуете поработать с контролерами,понравится,заработаете свой первый миллион-купите себе суперновый навороченный ![]() Процессор можно прошивать как на панельке так и внутрисхемно. Но ему необходимо питание-в основном 5В,иногда можно прошивать и при штатном питании(незнаю,непробовал-брехать небуду) Я думаю с этим проблем нет,трансик,кренка,кондерчик-хватит. Следите за правильностью подключения проца к программатору и питанию! У каждого автора схемы,программы и в целом девайса распиновка под программатор своя. Рекомендуется сначала подключать минус питания для уравнивания потенциалов. Теперь нам нужна программа для прошивки микроконтроллера. Опять-же,нам нужна простая программа,нам нужно просто залить готовую прошивку в микроконтроллер. Варианты поковырятся в готовой прошивке-эт для людей знающих! И тут обращаемся к великому Гуглю. Тут опять-же на вкус и цвет-товарищей нет. Algorithm Builder, UniProf, PonyProg, AVR Studio, Code VisionAVR, SinaProg-выбираем,качаем,устанавливаем,изучаем,что непонятно-GOOGL рулит!!! Подключаем все это дело-комп,программатор,контролер. В выбранной и установленной проге устанавливаем связь с программатором,подаем питание-если ничего не дымит значит пока живем!!! При запуске программы определяется контролер,если не определился-выбираем вручную. Теперь о прошивках-они у нас в основном в двух видах,НЕХ-заливается во FLASH,EEP-заливается в EEPROM. Впрочем-непопутаете! Я не писатель,немного устал-теперь кратко о сути. ФЬЮЗЫ!!! Тут максимум внимания!!! Автор может изменить алгоритм работы контролера-частоту,защиту,внутренний,внешний генератор-в общем может быть беда! Если автор прошивки не меняет фьюзы-хорошо,Вы тоже их не трогаете,если есть изменения-просите огласить какие изменения(ниже будут «разложены» фьюзы) или просите скиншот,при этом обращаете внимание в какой среде автор прошивает контролер. Спросите почему? Потому что программы по разному отмечют «активен» и «не активен»,у одних галочка стоит когда-«активен»,у других наоборот.Здесь чаще всего косячат :!: :!: :!: !!! Рекомендую перед прошивкой сначала считать Ваш контролер(почему-увидите ниже),определится с фьюзами,как они стоят и как Вам их нужно установить. Каждая программа делает это по разному,внимательно изучите сей момент!!! Потом прошить его ,потом проверить прошивку(считать),а уже потом подбиратся к фьюзам. Помните- у PonyProg и AVR Studio значение «активен» и «не активен» абсолютно противоположено программам Algorithm Builder и UniProf !!! Значение или назначение некоторых фьюзов: SPIEN – разрешение на последовательное программирование. Нетрогать! Табу! DWEN – бит, разрешающий работу DebugWire Нетрогать! Табу! RSTDISBL –разрешает использовать ножку Reset как еще один порт ввода-вывода Нетрогать! Табу! Lock Bit Byte – лок биты для защиты программы от копирования CKSEL – выбор тактового генератора для микроконтроллера CKSEL0– Внешний тактовый сигнал; CKSEL1 – Внутренний тактовый генератор – частота 4 МГц; CKSEL2 – Внутренний тактовый генератор – частота 8 МГц; Если Вы выставили фьюзы на внешний генератор, а его нет, то придется припаять кварц к соответствующим ножкам или подать тактовые импульсы. CKOUT – разрешает вывод тактовой частоты на ножку CLKO микроконтроллера CKOPT – задает размах тактового сигнала на внешнем генераторе. SCKDIV8 – деление тактовой частоты на 8 SUT – задает скорость запуска микроконтроллера BODLEVEL и BODEN – контроль напряжения питания микроконтроллера (Brown-out Detector). EESAVE – защита EEPROM от стирания Lock Bits – Это отдельный фьюз байт который предназначен для защиты области программ и/или EEPROM от копирования. Полное стирание восстанавливает эти биты в исходное состояние. Еще раз повторюсь, это не полный перечень фьюз бит, для каждого конкретного микроконтроллера смотрите даташит. Общий алгоритм установки фьюз бит должен быть следующим: - прошиваем Flash и, если нужно, EERROM; – открываем окно прошивки фьюзов, считываем текущие фьюзы микроконтроллера; – модифицируем только те фьюзы которые нам нужны; – обращаем внимание на критичные для последовательного программирования фьюзы RSTDISBL, SPIEN, др. Ну в общем вроде бы все что мог(или на что хватило задора)написал-звиняйте что не так! Милости просим! Добавляем информацию,дополняем,делимся,спрашиваем! Кстати(дабы не считали таким вумным) все в свое время подчерпнул сдесь-Здеся! Замечены неточности -укажите-исправлю! Сообщение отредактировал с2н5он - 4.11.2011, 7:13 |
![]() |
|
![]() |
|
![]()
Сообщение
#121
|
|
![]() Специалист ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 576 Регистрация: 8.4.2010 Из: НОВОРОССИЯ КРАСНОДОН Пользователь №: 17884 ![]() |
Спасибо ![]() я делаю только двухсторонние платы, то этому и перпмычек нет, а в односторонней без них почти не обойтись. а так у вас прелесть хоть на завод отправляй -------------------- Хуже самодельного, ........... только, заводское................
сколько сваркой не вари, а болгарка сильней. |
![]() |
|
![]()
Сообщение
#122
|
|
Заглянувший ![]() Группа: Неактивированные Сообщений: 83 Регистрация: 21.4.2008 Из: Беларусь Пользователь №: 11009 ![]() |
Спасибо Ruslan
Значит остальные ноги можно оставить висеть в воздухе? |
![]() |
|
![]()
Сообщение
#123
|
|
Заглянувший ![]() Группа: Пользователи Сообщений: 11 Регистрация: 16.2.2012 Из: Украина, Кировоград Пользователь №: 26152 ![]() |
О, вот еще на компе нашел. Не мое, но когда-то делал - подарил.
|
![]() |
|
|
![]()
Сообщение
#124
|
|
Посетитель ![]() ![]() Группа: Пользователи Сообщений: 200 Регистрация: 11.10.2011 Пользователь №: 24569 ![]() |
|
![]() |
|
![]()
Сообщение
#125
|
|
![]() Специалист ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 571 Регистрация: 24.9.2011 Из: Украина Хмельницкий Пользователь №: 24383 ![]() |
Доброго времени суток всем вот на просторах инета нашол очень интересную инфу особено для начинающих http://www.getchip.net/posts/068-kak-pravi...fyuzy-fuse-bit/ может кому пригодитса.
-------------------- Черная полоса бывает взлетной.
|
![]() |
|
![]()
Сообщение
#126
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователи Сообщений: 299 Регистрация: 22.7.2008 Из: Горловка. Пользователь №: 11699 ![]() |
Собрал на конец то программатор из журнала радио №2 2012г на тиньки 2313.Операционка у меня семерка,при первом включение в USB сразу определился и попросил установить дрова,все успешно установилось и в системе появился виртуальный COM порт.После этого подключил к программатору первого добровольца тиньку 2313 и не на долго расстроился нажатие на кнопку автоопределение результата не давало, уже начал грешить на ошибку в разводке платы но потом выставил в окошке программы тактовую частоту 250 кГц в замен 1МГц которая стояла по умолчанию и контроллер определился и все заколосилось.Правда грешу на длину шлейфа от программатора и до контроллера порядка метра.В целом все работоспособно,единственное что не нравится это работа сего прогера лишь с прогой автора,или нет...?
-------------------- Ученье свет,а не ученье-чуть свет и на работу.
|
![]() |
|
|
![]()
Сообщение
#127
|
|
Активный участник ![]() ![]() ![]() Группа: Пользователи Сообщений: 441 Регистрация: 15.2.2010 Из: Серпухов Пользователь №: 17363 ![]() |
Мои поздравления! Метр проводов много для тактового сигнала 1МГц, зато при ее снижении можно практически с любой длинной шлейфа работать,
Цитата работа сего прогера лишь с прогой автора , по моему, да.-------------------- Вот блин, опять в галерее картину малевича вверх ногами повесили.
|
![]() |
|
![]()
Сообщение
#128
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователи Сообщений: 299 Регистрация: 22.7.2008 Из: Горловка. Пользователь №: 11699 ![]() |
Мои поздравления! Метр проводов много для тактового сигнала 1МГц, зато при ее снижении можно практически с любой длинной шлейфа работать, , по моему, да. Спасибо!Мне аж стало не ловко перед вами,а то вроде бы я вас раззадорил и начали делать его вместе,но вы собрали сразу , а я лишь сейчас.Да с тактовой я тоже побаловался,укорачивать шлейф не буду. -------------------- Ученье свет,а не ученье-чуть свет и на работу.
|
![]() |
|
![]()
Сообщение
#129
|
|
Заглянувший ![]() Группа: Неактивированные Сообщений: 83 Регистрация: 21.4.2008 Из: Беларусь Пользователь №: 11009 ![]() |
Что то затянулась борьба с мегой8. Старую выпаял, новую впаял. Вроди все нормально - ноги не замкнуты, все пропаяно (правда мало опыта пайки смд). Программатор на ком порт новый спаял (провод плетеный длинной 80 см). Результат нулевой. Пони прог (порт настроен, калибровку делал) упорно не распознает контроллер.
В чем может быть косяк? Может перегрел его при пайке (паяльная станция 300 гр. фен+паяльник)? При прошивке отдельно от платы все 3 земли и 2 плюса нужно подключать? |
![]() |
|
|
![]()
Сообщение
#130
|
|
![]() =VIP= ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 8328 Регистрация: 25.6.2010 Из: Глобино UA Пользователь №: 18764 ![]() |
Что то затянулась борьба с мегой8. Старую выпаял, новую впаял. Вроди все нормально - ноги не замкнуты, все пропаяно (правда мало опыта пайки смд). Программатор на ком порт новый спаял (провод плетеный длинной 80 см). Результат нулевой. Пони прог (порт настроен, калибровку делал) упорно не распознает контроллер. В чем может быть косяк? Может перегрел его при пайке (паяльная станция 300 гр. фен+паяльник)? При прошивке отдельно от платы все 3 земли и 2 плюса нужно подключать? Программатором что нибудь этим прошивал? |
![]() |
|
![]()
Сообщение
#131
|
|
Заглянувший ![]() Группа: Неактивированные Сообщений: 83 Регистрация: 21.4.2008 Из: Беларусь Пользователь №: 11009 ![]() |
Нет программатором ничего не прошивал, точнее сказать вообще в жизни ничего не прошивал.
Ком порт исправен, подключил модем - общаются. |
![]() |
|
![]()
Сообщение
#132
|
|
![]() =VIP= ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 8328 Регистрация: 25.6.2010 Из: Глобино UA Пользователь №: 18764 ![]() |
|
![]() |
|
![]()
Сообщение
#133
|
|
Заглянувший ![]() Группа: Пользователи Сообщений: 84 Регистрация: 5.9.2008 Пользователь №: 11996 ![]() |
Может перегрел его при пайке (паяльная станция 300 гр. фен+паяльник)? В подобной ситуации трижды перепаивал Мегу, пока не докопался до мёртвого CОМ порта. На четвёртый раз (со злости взялся делать) впаял её в STK 500 от PETKA, предварительно зашив тем же прогером на другом компе, где она трудится по сей день. Так что, изжарить её можно, но сложно. |
![]() |
|
![]()
Сообщение
#134
|
|
Заглянувший ![]() Группа: Неактивированные Сообщений: 83 Регистрация: 21.4.2008 Из: Беларусь Пользователь №: 11009 ![]() |
Программатор электровоза:
Фотки попробую сегодня вечером сделать Немного приболел фотки позже будут Сообщение отредактировал MaX 123 - 17.3.2012, 14:00
Эскизы прикрепленных изображений
|
![]() |
|
![]()
Сообщение
#135
|
|
Активный участник ![]() ![]() ![]() Группа: Пользователи Сообщений: 493 Регистрация: 15.4.2010 Из: Калуга Пользователь №: 17966 ![]() |
Собрал плату управления для сварочника Юрия, практически все элементы запаял. Оставил не впаянными кнопки, электролит и т.д. (в общем не впаяно то что может пострадать при отмывке платы от канифоли) Попробовал прошить проц, но неудачно. Программатор как в посте выше, прога- понипрог. Калибровку делал, ком порт исправен. Пишет что "устройство отключено или неисправно (-24)" Не хочет ни читать ни писать, если нажать игнорировать, то вроде считывает. И даже пытается записать, но запись не успешна. При считывании во всех полях стоят 0. Попробовал на меге 8 в дип корпусе, все идет нормально, считал, стер, записал. Обратил внимание что при считывании чистой во всех полях стоит F. Питание 5 вольт подавал от стабилизатора на 5в (12в аккум, далее 7805). Что не так, как проверить где косяк. Мегу выпаивать без фена проблематично.
-------------------- |
![]() |
|
![]()
Сообщение
#136
|
|
![]() Активный участник ![]() ![]() ![]() Группа: Пользователи Сообщений: 299 Регистрация: 22.7.2008 Из: Горловка. Пользователь №: 11699 ![]() |
Собрал плату управления для сварочника Юрия, практически все элементы запаял. Оставил не впаянными кнопки, электролит и т.д. (в общем не впаяно то что может пострадать при отмывке платы от канифоли) Попробовал прошить проц, но неудачно. Программатор как в посте выше, прога- понипрог. Калибровку делал, ком порт исправен. Пишет что "устройство отключено или неисправно (-24)" Не хочет ни читать ни писать, если нажать игнорировать, то вроде считывает. И даже пытается записать, но запись не успешна. При считывании во всех полях стоят 0. Попробовал на меге 8 в дип корпусе, все идет нормально, считал, стер, записал. Обратил внимание что при считывании чистой во всех полях стоит F. Питание 5 вольт подавал от стабилизатора на 5в (12в аккум, далее 7805). Что не так, как проверить где косяк. Мегу выпаивать без фена проблематично. Держите, вот утилитка,проверьте порт http://us.ua/668493/ Я выпаиваю элементы с большим количеством выводов таким способом:беру галогеновый прожектор (150 Вт) снимаю с него стекло и ложу на его место плату,потом плавно подымаю напряжение на лампе(что б равномерно нагрелась без деформации) нагрев провожу до температуры плавления припоя и паяю SMD или распаиваю. -------------------- Ученье свет,а не ученье-чуть свет и на работу.
|
![]() |
|
![]()
Сообщение
#137
|
|
Активный участник ![]() ![]() ![]() Группа: Пользователи Сообщений: 493 Регистрация: 15.4.2010 Из: Калуга Пользователь №: 17966 ![]() |
Держите, вот утилитка,проверьте порт http://us.ua/668493/ Я выпаиваю элементы с большим количеством выводов таким способом:беру галогеновый прожектор (150 Вт) снимаю с него стекло и ложу на его место плату,потом плавно подымаю напряжение на лампе(что б равномерно нагрелась без деформации) нагрев провожу до температуры плавления припоя и паяю SMD или распаиваю. igorka за утилитку спасибо, но с ком портом все в порядке. Я же пробовал другую мегу прошить, все нормально. В общем косячек нашел, резистор R34 оказался не 10кОм а всего лишь 1кОм. Причем на самом резисторе написано 103. Когда только начал пользоваться смд всегда проверял, а сейчас лень. Вот и поплатился. -------------------- |
![]() |
|
![]()
Сообщение
#138
|
|
![]() =VIP= ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1097 Регистрация: 25.12.2007 Из: Киев Пользователь №: 10129 ![]() |
Собрал плату управления для сварочника Юрия, практически все элементы запаял. ... Попробовал прошить проц, но неудачно. Меня тоже эти чудесные платы слегка "потренировали" при прошивке. Обидно, ведь до этого другие устройства всегда прошивались с первого раза, а тут... В общем, в итоге оказалась ерунда, конечно,... но если кто до сих пор "тренируется" на этом этапе, может моя инфа будет полезна. Итак, имеем 2 печатные платы отличного качества от PCB21, полный набор деталей, очень немного времени (примерно 3-4 часа раз в 2 недели) и огромное желание собрать наконец-то это всё в кучу и запустить. Кроме того, имеем программатор STK200/300 на LPT с буферной микросхемой (здесь давали ссылку - работает безотказно, кому интересно, скину мою печатку, адаптированную для конверта под двустороний ЛУТ). Программатор проверялся как в статике с помощью импровизированного пульта (см. фотки), так и в динамике при прошивке микроконтроллеров, в том числе и Atmega8 в DIP корпусе (потом сделаю из неё программатор на USB). Работает либо от трансформаторного блока питания 5В 2А, либо от батареек (ну, типа чтобы "совсем уж", но разницы в стабильности работы ни разу не заметил, так что трансформаторный БП рулит). В общем, спаял я 2 платы за несколько часов (кроме индикатора, ULN и регулятора), а вот программировать - ну никак. Не видит микроконтроллеры и всё тут! При этом на обеих платах источник +5В на МС33063 работает, по входу питания +14В (тоже трансформаторный) цеплял дополнительные электролиты - ноль результата. Потом вспомнил, что Юрий советовал сначала прошить контроллер при минимуме деталей на плате, от внешнего БП, а потом всё остальное запаивать. В общем, пришлось сделать пару "шагов назад". Отключил дроссель L3 (снял соплю припоя с одной стороны), затем снял R53 и резисторы на программирующих пинах - это R34, R47, R48. Запитал контролер через разъём программатора, открыл ПониПрог - и всё прошилось чётко на обеих платах с первого раза! В общем, не знаю, что конкретно из проделанных мною "шагов назад" дало результат (а может, резисторы были левые, как у maxon - сегодня проверю), но на сегодня прошитые платы выглядят, как на прилагаемом фото. Если на выходные будет "окно" со временем - продолжу монтаж, о результатах отпишусь. |
![]() |
|
![]()
Сообщение
#139
|
|
Заглянувший ![]() Группа: Пользователи Сообщений: 23 Регистрация: 5.9.2011 Пользователь №: 24160 ![]() |
Меня тоже эти чудесные платы слегка "потренировали" при прошивке. Дело не в чудесных платах, а в чудесном разработчике ![]() |
![]() |
|
![]()
Сообщение
#140
|
|
![]() =VIP= ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 8328 Регистрация: 25.6.2010 Из: Глобино UA Пользователь №: 18764 ![]() |
что проблемы при прошивке начинаются из-за цепочки R39, С14 на выводе Reset. Если сопротивление R39 грубоговоря некритично в пределах 2кОм - 10кОм, то емкость конденсатора должна быть порядка 0,1 мкф. А что указано на схеме? Ну а номиналы на схеме 2m2, 1mk, 470mK просто жесть. Ерунда все это, тоже прошиваю полностью запаянные платы,коденсаторы и 1мк и 2.2мк все шьется прекрасно, а если конденсаторы влияют, то смотрите в сторону прогера. |
![]() |
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 6.7.2025, 19:12 |
|
![]() |