Вы здесь

Программирование микроконтроллеров.

В данном разделе я буду помещать материалы по программированию только в среде Algorithm Builder.
А следовательно, это только микропроцессоры AVR.   Авторский сайт программы.

1.  На рисунках представлен возможный вариант программатора для АБ (так уже устойчиво называют в интернете эту среду) по схеме из мануала АБ.

 программатор общ. вид   внутренности

2.  Программа на  АБ адаптирована для 2-х строчного индикатора. 

программа обслуживания LCD по 4-х битному протоколу

Схема подключения LCD.подключение по 4-м проводам.

 

3. USB изолированный программатор по схеме из мануала АБ по версии v5.44.

gif foto

Разводка печатной платы в формате SLayout5 лежит здесь.

 вид на пайку вид на монтаж

Микросхема FT232 действительно оказалась очень термостойкой, как и заявляли производители. Мне пришлось её дважды перепаивать. Грел феном паяльной станции при 350 градусах. На фото видно, что текстолит немного потемнел. И тем не менее, Виндовс её сразу определил и проинсталил.

Советую при повторении сначала запаять FT, её питание, подпаять кабель, и сразу вставить в разьём USB. Если микросхема определится, то тогда стоит дальше паять остальное. Я, например, перепутал провода USB. Что бы повторяющим не проходить мой путь, я на плате обозначил не номера проводов, а их цвета, GWRB, соответственно. Экранирующую оплётку кабеля не подпаиваем.

Прошивка из мануала АБ для этого программатора шьётся за 5 секунд. Примерно 850 команд.

Вот, упаковал в "корпус" из "термоусадки". Получилось вполне законченное изделие.Программатор АБ в корпусе

4. Программирование готовых hex-файлов.

Не всегда радиолюбители для конкретных применений пишут свои программы. Иногда необходимо просто зашить готовую чью-то программу, которая обычно представлена универсальным форматом, именуемым hex-файл. Для этих целей очень хорошо подходит программа АБ. Показываю, как это делается по шагам, в день пишу по предложению.

1. Для программирования любого AVR процессора, к нему необходимо подпоять 6 проводков. Из них 4 служебных и два питание 5 вольт. Так называемый ISP разьём подпаивается по стандартной, рекомендуемой изготовителем схеме. Привожу схему подпайки для популярного процессора ATmega-8 для обоих возможных корпусов.разьём ISP

Обычно я сразу в схеме рисую этот разьём, как это

 сделано на верхней схеме на Attyni-2313 в этой статье. Хорошим тоном следует считать его наличие на печатной плате. Ну не выпаивать же каждый раз процессор, при наворачивании программы. Даже на серийных изделиях обычно этот разьём присутствует. Например, стандартный монетоприёмник EU-2. Он сделан на той же Атмеге. Когда появились новые монеты по 10 р, просто приехал человек, подключил программатор и перепрошил проц.

3. Итак, помещаем добытый где-то HEX в новую пустую папку с любым Вашим названием. Не забудьте предварительно его распаковать.

3. Запускаем АБ. В закладке "файл", как обычно выбираем "новый". Откроется белое поле как на картинке:

Вместо NOPика пишем нашу волшебную фразукоманда АБ

 В этой фразе Load: - это команда для АБ, означающая "ввести", а всё остальное - это название hex-файла, который АБ найдёт если Вы его положили в указанную папку. 

Сохраняем проект, опять же в ту же папку и на панели нажимаем кнопку "...". Если Вы ещё не указали, для прошивки какого кристалла будем готовить файл, то АБ нарисует вот такую картинку, где обычным способом выбираем кристалл и тактовую частоту. Опять жмём многоточие и если файл найден, то АБ нарисует такую картинку:

По подготовке файла это всё.

 4. Подключаем проц электрически, через 6 верёвочек, по схеме из мануала АБ (жмём "?") на 35-й странице. Внешний вид обоих вариантов программаторов в начале этой статьи. Программирование при помощи USB программатора в данной статье не рассматривается. Описываю только программирование через COM-порт, как наиболее доступное для тех, кто не занимается созданием и отладкой программ.

5. Включаем наши "верёвочки" в COM-порт и смотрим в "девайс менеджере", каким номером программатор прописался, например COM-4. Показать с доп. портом не могу по причине отсутствия "верёвочек". Давно уже пользуюсь USB вариантом.

 6.Запускаем АБ. "Опции"-Опции среды", выбираем COM-порт.

Обратите внимание, если мы используем простое подключение, то убираем "галочку" в окошке "через адаптор". 

Жмём "применить". Замедление выбираем 3-4, обычно достаточно. Далее "Опции проекта" и выбираем закладку "Кристалл". Выбираем наш процессор и рабочую  частоту (последнее не обязательно).  

Далее закладка "Fuse bits". Здесь пока ни чего не меняем, а просто жмём "Read" и если всё правильно, АБ покажет внутренние установки кристалла. Внимание, в АБ "галочки" фузов ставятся противоположно даташиту. Галочка означает не запрограммированый бит, о чём предупреждает надпись выделенная красным.

 И только если кристалл читается можно что-то (вдумчиво) поменять и нажать "Write". Не нажимая опасную кнопку Write, Вы можете играть с фузами до бесконечности, при этом Вы можете наблюдать их назначение. Например, видно, что в данном случае кристалл настроен для работы на внешний керамический резонатор с частотой от 1 до 16 мГц. Окончательно запутавшись, Вы можете опять прочитать кристалл и опять получите "заводские" установки, но это только пока Вы ничего не переписали.

7. Ну а если всё работает, жмём на картинку с изображением эл.жучка и поехали.

Схема подключения  программатору процессора AT90PWM3.

At90PWM3