Вопросы программирования микроконтроллеров. , Задаем вопросы,отвечаем,не засоряем другие темы! |
Здравствуйте, гость ( Вход | Регистрация )
Вопросы программирования микроконтроллеров. , Задаем вопросы,отвечаем,не засоряем другие темы! |
4.11.2011, 3:13
Сообщение
#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 |
|
|
22.12.2011, 9:47
Сообщение
#2
|
|
Заглянувший Группа: Пользователи Сообщений: 35 Регистрация: 27.11.2011 Из: г. Одесса Пользователь №: 25163 |
Добавлю свой коментарий.
Пользуюсь много лет PONIPROG-ом. Немного медленно работает, но зато очень надежен. Перепробовал много разных, остановился на этом. Самый простой и очень надежен!!! Работает через COM - порт. Никакие переходники, типа USB - COM не ставить. Перед началом работы обязательно сделать калибровку!!! И ТОЛЬКО ВНЕШНЕЕ ПИТАНИЕ!!! Саму прогу и схему брать только с сайта разработчика!!!. http://www.lancos.com/prog.html. Лучше внешнее питание. - Маленький транс+ен на 5в. По току - 200ма более, чем достаточно. При первом запуске пришлось немного уменьшить резисторы на COM -порту - не виделся AT90s4333!!! Но только он - остальные работали нормально! Сделал сразу маленькую коробочку, и панель с "нулевым усилием" на 20 ножек. Разведено под AT90s2313. (когда то были такие). Дальше через шлейф. Можно прошивать готовое устройство. За много лет сбоев не наблюдалось. |
|
|
31.12.2011, 17:16
Сообщение
#3
|
|
Активный участник Группа: Пользователи Сообщений: 319 Регистрация: 14.5.2010 Из: россия Пользователь №: 18303 |
Пользуюсь много лет PONIPROG-ом. Немного медленно работает, но зато очень надежен.
Перепробовал много разных, остановился на этом. Самый простой и очень надежен!!! Работает через COM - порт. Никакие переходники, типа USB - COM не ставить. Перед началом работы обязательно сделать калибровку!!! И ТОЛЬКО ВНЕШНЕЕ ПИТАНИЕ!!! Я тоже им прошивал. Только питание 3*1.5В батарейки. Нормально шьет. |
|
|
Текстовая версия | Сейчас: 5.2.2025, 18:03 |
|