roboforum.ru

Технический форум по робототехнике.

Прошивка минибота для начинающих

Готовая электроника для самодельного робота. Уровень от начинающих до опытных конструкторов.

Прошивка минибота для начинающих

Сообщение frig » 31 июл 2008, 11:20

В этой теме попытаюсь подробно описать процесс прошивки минибота для тех, для кого прошивка на

момент прочтения этого материала просто страшное слово.

Прошивка - суть загрузка программы в память микроконтроллера. Прошивка может быть либо получена из

исходных кодов (которые вы сами и можете написать), либо взята готовая из различных источников.

Для прошивки нам потребуются:
-программатор
-программа которой мы будем прошивать.
-программа, написанная нами самостоятельно, либо полученная из других источников.

Поделиться своими наработками и использовать чужие можно зайдя в тему

Библиотека прошивок


В данном мануале будет рассматриваться прошивка с использованием программатора STK200. Приобрести

такой программатор можно здесь: http://minibot.webasyst.net/shop/product/stk200/
либо в любом другом магазине, но тогда будет несовпадение порта программатора и минибота и без

некоторых навыков не переделать.
Можно прошивать с использованием других программаторов, с использованием простых проводов, но в

данном мануале мы будем рассматривать именно работу с указанным выше программатором по простым

причинам:
- его разъем предназначен для прошивки минибота
- он прост в использовании, недорог и может быть приобретен вместе с миниботом.
- большинство компьютеров имеют LPT порт который используется программатором.

Итак приступим. Сначала определимся что и как мы будем подключать.

LPT порт расположен на задней стенке системного блока, среди всех остальных разъёмов явно

отличается своей длинной и выглядит примерно так:
Изображение
или вот так
Изображение

его форма не даст вам подключить программатор не правильно.
сам программатор имеет 2 порта
LPT и ISP разъем для подключение к системному разъему минибота
Изображение

На фотографии разъем LPT подписан, а системный ISP разъем минибота обозначен стрелкой.
подключаем программатор к LPT порту вашего компьютера. Важно проверить что LPT порт не выключен в

настройках BIOS, иначе ничего работать не будет.

К системному разъему минибота
Изображение
подключаем разъем программатора. на обеих разъемах есть ключ, препятствующий не правильному

подключению программатора к миниботу. Вот ключ на разъеме ISP программатора:
Изображение
Подключаем минибот к программатору.

Запускаем Bascom-AVR. Инструкция по установке

ЗДЕСЬ

Первым делом нам предлагают давать советы:
Изображение
снимаем помеченную красным галку, жмем Close.
Открывается главное окно Bascom-AVR
Изображение
Первым делом нам необходимо загрузить исходный текст какой-нибудь программы для минибота. Для

примера возьмем файлик Go.zip прикрепленный к этому сообщению, распакуем его в произвольную папку и

получим файлик Go.bas. Вот этот файлик нам, собственно и нужен.
Это исходный текст программы по которой минибот будет медленно (но уверенно) двигаться вперед.
Итак, файлик у нас есть, открываем его в Bascom-AVR.
Жмем File->Open
Изображение
В появившемся окне выбора файла находим наш файлик Go.bas, кликаем на него мышью и жмем Открыть
Изображение
Перед нами - исходный текст программы.
Изображение
Понимать и вникать в него мы сейчас не будем. Жмем правой кнопкой мыши в свободном поле, и в

открывшемся списке выбираем Compile
Изображение
Происходит компиляция программы. Т.е. преобразование её в понятный машине код.
Изображение
После того, как наша программа была откомпилирована её можно прошивать в минибота.
Для прошивки к миниботу должен быть подключен программатор, сам программатор должен быть подключен

к LPT порту вашего компьютера. Программатор НАСТОЯТЕЛЬНО рекомендуется подключать при выключенно

компьютере. Подключать программатор к миниботу можно "на горячую". К миниботу должен быть подключен

аккумулятор и сам минибот должен быть включен. Включать минибота следует ПОСЛЕ подключения

программатора.
Так как в миниботе уже может находиться программа, либо загруженная программа которая после

прошивки будет сразу запущена - минибот может производить некоторые действия. С целью уберечь

робота от падений и других повреждений - положите минибот так, чтобы он не мог двигаться. Например

на спичечный коробок. Вывесите колеса.
После того как все подготовлено к прошивке - жмем правой кнопкой мыши в свободном поле и выбираем

Send To Chip -> Programm
Изображение

Открывается окно программатора. в поле Chip - автоматически определился наш микроконтроллер. Если

возникают ошибки - проверьте, включено ли питание, подключен-ли программатор.
Изображение

Если мы хотим прошить готовую прошивку, их файла hex, скомпилированную другим пользователем - не

важно какой файлик у нас был открыт, мы жмем Buffer->Load from File
Изображение
в появившемся окошке выбираем Intel Hex в выпадающем списке "Тип файлов", находим наш скачаный

файлик, и жмем открыть.
Изображение
Остальные манипуляции остаются без изменений. В этом случае мы прошиваем прошивку из HEX файла, а

не ту что открыли ранее.


Жмем на кнопку Auto programm Chip. Начинается прошивка. Происходит она в несколько этапов.

Собственно прошивка:
Изображение
Проверка того что-же мы прошили
Изображение
запись дополнительной информации
Изображение
и все! прошивка завершена.
после прошивки микроконтроллер будет перегружен. Сделать это можно вручную нажав на кнопку Reset

Chip
Изображение

Помните! после перезагрузки минибот сразу начнет выполнять загруженную в него программу.
Вложения
svetik.zip
Исходник программы мигания светодиодом в архиве
(473 байт) Скачиваний: 56
Go.zip
Исходник прошивки движение минибота вперед в архиве
(570 байт) Скачиваний: 55
frig
 
Сообщения: 1640
Зарегистрирован: 12 фев 2007, 12:25
Откуда: Днепр

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 20:51

А почему у меня Окно AVR ISP STK Program??
Последний раз редактировалось кулер 23 13 янв 2010, 20:56, всего редактировалось 1 раз.
Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

Re: Прошивка минибота для начинающих

Сообщение EdGull » 13 янв 2010, 20:52

скриншот в студию!
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 21:04

Вот что последннее выходит 4 сек и исчезает а окно не появляется
Вложения
098.JPG
Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

Re: Прошивка минибота для начинающих

Сообщение EdGull » 13 янв 2010, 21:13

это обычный stk500
что тебя в нем смущает?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 21:16

Он почемуто длинные программы не прошивает, а только короткие к примеру мигание светиком.
Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

Re: Прошивка минибота для начинающих

Сообщение Ворон » 13 янв 2010, 21:20

ссыль на програматор не кошерная.. :oops:
Ворон
 
Сообщения: 1054
Зарегистрирован: 24 ноя 2008, 19:43
Откуда: Казань

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 21:22

Извените я немнога не понял...
Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

Re: Прошивка минибота для начинающих

Сообщение EdGull » 13 янв 2010, 21:22

у тебя программатор какой?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 21:24

Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

Re: Прошивка минибота для начинающих

Сообщение EdGull » 13 янв 2010, 21:27

тогда тебе к Антону с Андреем почему их программатор не льет большие прошивки
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Прошивка минибота для начинающих

Сообщение galex1981 » 13 янв 2010, 21:43

Может там скорость заливки менять надо?
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4362
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 21:46

это как?
Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

Re: Прошивка минибота для начинающих

Сообщение galex1981 » 13 янв 2010, 21:50

Ну в настройках STK-500 есть ваприант выбора скорость по ISP, в твоем программаторе не знаю...
if(!Operate) Read(pDatasheet);
Аватара пользователя
galex1981
 
Сообщения: 4362
Зарегистрирован: 04 дек 2008, 22:44
Откуда: Камышин
Skype: galk-aleksandr1
прог. языки: Kotlin, Java, C, C++, Assm, BasCom, VB, php
ФИО: Галкин Александр Владимирович

Re: Прошивка минибота для начинающих

Сообщение кулер 23 » 13 янв 2010, 21:55

Это там типо BAUD где написанно?
Аватара пользователя
кулер 23
 
Сообщения: 798
Зарегистрирован: 17 апр 2009, 19:44
Откуда: Югорск
Skype: rizhykot
ФИО: Аксютин Юрий

След.

Вернуться в МиниБот — национальный класс роботов

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3