|
Краткий
Курс AVR - Самоучитель
Микроконтроллер AVR
, ATmega
и ATtiny для начинающих с нуля !
Быстрый
и
уверенный старт -
самые первые шаги ...
Чайникам от Чайника
!
Учимся на примерах.
... и конечно
с
картинками !
|
Страницы курса : 1
2
3
4
5
6
7
8
9
Задачи-упражнения этого курса по AVR
на стр. 6
Резервные адреса курса :
pid.by.ru
и
ProAVR.narod.ru
Страницы курса имеют адреса типа
/02.htm /03.htm /04.htm
а задачи имеют такие адреса
/z1.htm /z2.htm
/z11.htm
эти адреса следуют за адресом курса -
avr123.nm.ru/z5.htm
Найти на
открытой странице -
Ctrl + F
"что ищите"
Скачать
весь курс AVR одним архивом
Скачать FAQ
- сборник вопросов и ответов
Скачать книги по AVR и
электронике
< там Библиотека
книг.
Курс подробно рассказывает как сделать самые первые шаги,
с
чего начать не вообще, а
конкретно - ШАГ за ШАГОМ ...
- Как
сделать нужное вам электронное
устройство, печатную плату
- Как написать первую, простейшую программу для
МК
- Как запустить эту программу в
программе-симуляторе МК и увидеть
как
она работает не покупая МК
и радиодеталей, а значит без
риска
спалить что-то или испортить порт вашего ПК !
- Как
загрузить программу в реальный МК
- Как
отладить реальное устройство - т.е. найти причины
не правильной работы
и
добиться его функционирования в
соответствии с поставленной задачей.
Для любителей ассемблера:
Assembler AVR - самые первые шаги
Переводчик
он-лайн
www.Translate.ru <-
ИСПОЛЬЗУЙТЕ !
Шаг 1.
Скачайте всего две программы
- Компилятор
CVAVR - CodeVisionAVR
1.25.9
( 2 Мб )
Я
пока не рекомендую вам использовать более новый CVAVR-2
- Симулятор AVR и электроники
VMLAB
( 4,2 Мб )
Установите эти программы
на ПК в папки С:\CVAVR
и C:\VMLAB и сделайте
копии папок.
Теперь у вас
на ПК есть
качественное и удобное программное
обеспечение для
ПОЛНОГО цикла разработки устройств
на МК (микроконтроллерах)
AVR
- реальных и виртуальных.
От
интерактивного помошника для создания теста программы, кода,
скелета программы - инструмент бесценен
для начинающего ! - это мастер
CVAVR CodeWizard.
До
написания
и отладки полной программы с постоянным контролем её
работы на всех этапах создания на компьютерной модели
нужного
вам микроконтроллера AVR
совместно с популярными электронными
компонентами подключенными к нему виртуально.
А при желании
и в реальном микроконтроллере в устройстве.
|
|
Вам не
нужно пока тратить деньги и время
на поиски
и покупку радио
деталей и микроконтроллеров
пока вы не убедитесь
в работоспособности
устройства
которое вы делаете !
Вы не
сожжете по неопытности что либо !
Не
попадете в спешке, в азарте отладки
устройства
под
высокое напряжение !
Это очень важно для начинающего
электронщика
техника безопасности - ТБ !
Это важно.
|
Компилятор CVAVR - имеет встроенный
программатор для
загрузки готовой программы в реальный
микроконтроллер.
Даже DEMO версия
позволят прошивать
программы
любого размера!
Шаг 2.
Попробуйте - всё
ОЧЕНЬ просто !
Лучше один раз увидеть как
работают программы-инструменты для AVR чем сто раз услышать.
Сейчас вы попробуете установленные программы в деле, возможно не все
сразу понимая - не волнуйтесь, читая и выполняя курс далее, вы во всём
постепенно разберетесь.
1. Загрузите файлы к задаче
упражнению
8 (там для CVAVR и
для CVAVR 2)
и распакуйте
файлы архива в папку -
c:\VMLAB\z8
2. Запустите VMLAB и
через меню Project -> open project
откройте проект
c:\vmlab\z8\vmlab.prj
3.
Сверните мешающее окно vmlab.prj и подправьте "мышкой" остальные окна
чтобы получить такую картинку :
click -
полная картинка экрана
Вы видите
- 8 светодиодов,
- 3 переменных резистора,
- клавиатуру на 16 кнопок которые можно
использовать и раздельно,
- виртуальный ЗАПОМИНАЮЩИЙ осциллограф
- виртуальный терминал с записью данных
- просмотр портов МК
- слежение за содержанием переменных
- отладка по коду программы на Си
-
просмотр и редактирование памяти AVR
- диаграмма PD1
- передача по USART
Весь
богатейший набор компонентов VMLAB
будет
рассмотрен позже
в упражнениях курса и конечно описан в его
HELP.
Полная картинка экрана тут !
|
4.
Теперь в
меню "Project" кликните "Re-build
all" - проект всегда нужно перекомпилировать
при открытии и при
внесении каких либо изменений. В окне
"Messages" появится
сообщение "Success!
All ready to run"
Это значит ошибок
нет и все готово к моделированию микроконтроллера
AVR , а конкретно
модель - ATmega16. Вверху загорелся зеленым
светом светофор.
Можно запускать
симуляцию ... Т.е. начать
выполнение программы загруженной в компьютерную модель микроконтроллера
AVR.
|
Если появилось сообщение об
ошибке и светофор не загорелся - вы допустили
ошибку на каком то этапе.
Проделайте Шаг 2 сначала и более внимательно.
|
Шаг 3.
Симуляция - моделирование
работы МК.
Переводчик
он-лайн
www.Translate.ru <-
ИСПОЛЬЗУЙТЕ !
1. Нажмите мышкой светофор - это аналогично включению устройства, подаче
питания на МК - программа зашитая в него (загруженная в память программ
AVR - "во флэш") начинает выполняться
...
И
тут же остановка! Дело в том что VMLAB
контролирует правильность работы
МК и содержимое программы. Если ему что-то не
нравится то симуляция
прерывается и в окне Messages
появляется сообщений о причине остановки.
Подробнее это будет обсуждаться позже, а пока ...
2. Нажмите светофор еще
пару раз или столько раз сколько
потребуется до начала непрерывной симуляции.
Понаблюдайте внимательно
что происходит на экране.
В окне
SCOPE (это виртуальный осциллограф)
вы видите как меняются напряжения
на ножках МК указанных в файле проекта - vmlab.prj Верхняя
осциллограмма - это сигнал на ножке TXD (PD1)
по которой МК передает данные на COM
порт ПК - что передает МК мы видим в
виртуальном терминале TTY в панели
Control Panel
Там выводится значение
ШИМ (PWM) сигнала создаваемого на
ножке PD5 - а сам сигнал виден в окне
SCOPE - посмотрите как он
меняется в соответствии с сообщаемыми числовыми значениями
...
В файле проекта - vmlab.prj
к ножке PD5 подключен простейший
фильтр
нижних частот (ФНЧ) из резистора и конденсатора - он преобразует ШИМ
в постоянное напряжение которое можно увидеть в окне
SCOPE сигнал DAC
(ЦАП по-русски).
Подробнее о фильтрации и
усилении сигналов читайте там.
3.
Остановите программу красной кнопкой
STOP. В
окне Messages появится
сообщение о том
что программа остановлена пользователем -
User break
4.
Разверните окно Code - в нем
отображается исходный код программы которая скомпилирована компилятором
CVAVR и затем "прошита" в
модель МК и выполняется
при симуляции. Вы увидите что некоторые строки программы подсвечиваются
желтым цветом - длина подсветки пропорциональна времени которое
программа находится на этой строке.
5. Найдите строку в
программе:
pwm_val = ((1023 * (u32)pwm)/100);
Щелкните по квадратику с зеленой вставочкой перед этой строкой - он превратится в красный знак
STOP вы поставили "точку останова" (Break point)
- теперь программа автоматически остановится перед выполнением этой
строки.
6. Сверните окно
Code и нажмите
светофор для продолжения симуляции.
Дождитесь остановки программы на отмеченой строке (на этой точке останова) -
при остановке строка программы подсветится голубым цветом. Посмотрите на панели внизу
справа текущее
"чистое" время (без учета остановок) прошедшее с запуска программы -
запомните, запишите на бумажку.
Я
рекомендую вам вести рабочую тетрадь -
это очень помогает в обучении.
7. Теперь продолжите
симуляцию - надеюсь вы уже знаете как это сделать!
(нажать зеленый светофор)
Через некоторое время
программа опять остановится на этой строке
но время уже будет другим.
Вычтите из него время прошлой остановки и вы получите время выполнения
этого участка программы.
О более точном измерении интервалов
в VMLAB я расскажу вам позже.
|
Информация об остановках программы
отображается и в окне Messages.
|
Шаг 4.
Как изменить программу ?
Вам предстоит многократно менять
создаваемые
программы - в процессе отладки,
пока они не начнут
работать так как вы хотите.
Не выключая
VMLAB ...
1. Запустите компилятор CodevisionAVR (CVAVR)
и через меню File -> Open
откройте файл проекта CVAVR -
c:\vmlab\z8\cv.prj
2.
Разверните окно с текстом программы. Вы видите что программа
начинается
с оформленного в виде комментария краткого описания того что она делает
и некоторых технических параметров. Программа написана на языке Си -
который является пожалуй самым популярным и удобным для начинающих и
профессионалов работающих с микроконтроллерами.
|
Не пытайтесь
сразу понять что
написано
в этой программе.
Сейчас это вам не
нужно !
Понимать программы и уметь их создавать
вы будете после освоения всего курса.
|
Пока просто внесем изменение в программу
и утвердим их новой компиляцией.
3. Найдите в тексте программы в компиляторе CVAVR строки:
putchar('P');
// вывод в USART символа P
putchar('W');
putchar('M');
Давайте заменим выводимое этими строками слово PWM
на слово WOW
(типа вау! получилось!) - вот так:
putchar('W');
// вывод в USART символа W
putchar('O');
putchar('W');
4. После внесения
изменений в исходный текст программы ее нужно cкомпили-
ровать.
Компилятор должен превратить вашу программу в файл "прошивку" .hex
который можно прошить (загрузить) в реальный МК или использовать в
симуляторах.
5. Для выполнения
компиляции нажмите кнопку "Make the project"
После компиляции появится
информационное окно в котором
сообщается
что наша программа содержит целых 5 ошибок !
В чем же
дело?
Где найдены ошибки и
каковы они написано красным цветом в левой
части экрана в окне Navigator
- навигации по проекту CVAVR
При наведении курсора можно увидеть
описание ошибок.
6. Первая ошибка - "не могу открыть файл
m8_128.h"
Все ясно. Этот файл
я включил в исходный текст программы строкой:
#include
<m8_128.h>
Этот файл я создал для
возможности прямой вставки примеров на Си из даташита
(технического паспорта)
ATmega8 -16 -32 -64 -128 в текст программы
в CVAVR.
В инсталяции компилятора
CVAVR его нет. Но
в тексте программы
написано где можно взять этот файл -
скачайте
m8_128.h
Скачав, поместите его в папку INC компилятора
CVAVR. Этот
файл уже есть в архиве с используемым примером.
Аналогичные определения битов ВСЕХ
AVR я выложил в архиве
bitsavr.rar
7.
Снова
компилируем программу кнопкой "Make the project"
- теперь получаем сообщение об отсутствии ошибок и о размере
программы и о том сколько это %
от максимального размера программы для данного МК.
Посмотрите внимательно -
хотя ошибок нет - есть "вонинг" - это замечание от компилятора. Вонинги
не критичны, но можно посмотреть в навигаторе о чем они.
Закройте информационное
окно кнопкой "ОК".
Вы выполнили всего 4 не
сложных шажка.
|
Но уже знаете, что
Моделировать работу МК
можно на компьютере не имея самого
МК и электронной схемы вокруг него.
При этом видеть не только
то что происходит на ножках
МК но и
видеть о что происходит внутри
МК !!!
с помощью нижних частей
меню View и Window
симулятора VMLAB.
Вы уже знаете как
открыть проект в компиляторе, внести
изменения, скомпили-ровать
программу, увидеть ошибки,
исправить их. Вы теперь знаете, что не нужно
пытаться
исправлять все ошибки сразу, а нужно начинать с первой
и
возможно
после ее исправления другие ошибки тоже пропадут.
|
Шаг 5.
Симуляция после правки
1. Разверните окно симулятора VMLAB -
выскочит сообщение о том что файл с текстом симулируемой программы
изменен. Мы же его меняли в компиляторе.
Закройте сообщение кликнув - "ОК".
2. Сделайте "глубокий
рестарт" симуляции кнопкой с круговой темно-синей
стрелкой и перекомпилируйте весь проект как в Шаге 2 пункт 4 или нажав
комбинацию: Shift+F9 значит
"Ребилд ол". В окне "Messages" должно появится
сообщение "Success!
All ready to run"
Все готово к симуляции нового
варианта программы AVR.
3. Нажмите светофор 3 раза
- начнется непрерывная симуляция и вы увидите в окне виртуального
терминала симулятора VMLAB
-
результат правки программы
сделанной в компиляторе CVAVR - вот он:
Обратите внимание на то
что симулятор показывает примерный расчетный
ток потребления МК. Скорость симуляции можно снизить регулятором
Speed.
А частоту кварца можно поменять кнопками Clock.
Кроме того указаны текущие
параметры настройки терминала которые можно
изменить нажав кнопку "Set parameters".
Кнопки "Clear" очищают окна.
Вы можете набирать текст в окне TX и он
будет передаваться в МК (см. пример к симулятору C:\VMLAB\AVR_demo\UART.PRJ)
а можно передать в МК текстовый файл кнопкой
"TX File". Если
отметить чек-бокс "RX to
file" то данные поступившие от МК будут записываться в файл на
ПК.
Вы не
покупали МК ATmega16 - у вас его нет !
Вы ни чего не паяли и не подключали !
Но вы
увидели как работает МК и программы.
Получили
осциллограммы работающего устройства.
Могли
записать в файл то что передавал МК.
Вступление закончено.
Далее собственно ...
Краткий курс AVR
на примерах.
Краткий курс
AVR
на примерах.
Цель курса - помочь вам быстро начать использовать
микроконтроллеры семейства AVR
Даже с
абсолютного нуля знаний о микропроцессорах
и о программировании вообще.
В курсе даны кратко ключевые моменты
устройства МК
и показано как МК взаимодействует с
окружающими
его в электронном устройстве
компонентами и с
другими устройствами, например с ПК.
Для использования микроконтроллеров, в
том числе и
МК AVR, вам не нужно
досконально знать электронику
и языки
программирования.
Курс поможет вам научится искать и творчески использовать информацию в объеме необходимом
для реализации конкретного
проекта, устройства .
Содержание.
Краткий курс -
самоучитель - AVR начинающим.
Заглавная страница курса -
avr123.nm.ru
Запасная страница курса -
proavr.narod.ru
pid.by.ru
стр.
1. Ключевая страница курса - ИЗУЧИТЕ
ЕЁ ! она
ГЛАВНАЯ в курсе !
стр.
2. Что такое МК и AVR в частности. Как
работает МК.
стр.
3. Возможности МК. Что и как подключать к
МК. Регистры и
программа.
Прерывания в AVR.
стр.
4. Компиляторы и Симуляторы для МК AVR.
стр.
5. Си для МК - очень малая часть языка
достаточна для работы с МК.
стр.
6. Задачи-упражнения
по курсу - это практические занятия по
работе
с МК и необходимые теоретические
сведения и комментарии.
Макетные платы, изготовление плат, пайка.
стр. 7. Как и чем
прошить (прожечь, загрузить) программу в
МК AVR, ATmega
Как сделать программатор 5-проводков или сложнее.
стр.
8. Дополнительные, полезные материалы
стр.
9. О великолепных МК серии PIC12,
PIC16, PIC18 от компании MicroChip
Курс не
имеет навигации - просто в конце каждой
страницы
есть линки на
следующую и предыдущую страницы.
Я очень советую
вам читать курс последовательно,
так как изложен материал.
Поверьте,
это важно и правильно !
Можно скачать весь курс архивом
около 5 Мб -
Курс
AVR
|
Вы уже
запустили МК и
увидели как
он
работает виртуально !
Вы видите что это
просто,
доступно, не дорого и безопасно
!
|
Программа примера была создана в
отличном, и очень удобном
для начинающих
компиляторе CodeVisionAVR.
Этот
компилятор является достаточным инструментом
для полного цикла
разработки вплоть до
прошивки МК (дополнительно потребуются лишь
интерфейс для электрического соединения МК и ПК - если у вас
есть LPT
то нужны всего 5 проводков - см. стр. 7) и
отладки устройства. Там же есть
программаторы на COM-порт и
USB.
Ссылки на дополнительные материалы
:
- FAQ
- ответы на частые вопросы по AVR и по электронике
- Проекты телесистем - это различные устройства на МК
на русском языке
- Проекты
на AVR студентов Корнельского
университета - великолепные
-
Проекты очень
интересного, талантливого человека Элм-Чена
- Конференция
русскоязычная по МК спрашивайте - вам
помогут.
- Книги по AVR и
электронике для скачивания <-
ЧИТАТЬ !!!
Библиотека книг для скачивания.
... хотя бы список
КНИГ сохраните у себя на
ПК !
-
Книги по
электронике и технике для скачивания и чтения
GOOGLE находит всё !
Вводите
интересующие вас ключевые
слова.
Translate.ru
переведет то что вы нашли на корявый
русский язык.
|
Присылайте
отзывы, пожелания
замечания и дополнения !
e-mail
чуть ниже !
|
Читать курс дальше -> на 1-ю
страницу
Страницы курса : 1
2
3
4
5
6
7
8
9
Задачи-упражнения курса по AVR
-
там
Скачать весь курс по
AVR одним архивом
© 2004-2010 by Termo
Переводчик
он-лайн
www.Translate.ru <-
ИСПОЛЬЗУЙТЕ !
Интересное ниже -
в
"подвале" - не пропустите ...
|
Используйте
PROTEUS
Симулятор
электронных устройств ПРОТЕУС,
поддерживает микроконтроллеры AVR
, 8051,
PIC10, PIC16, PIC18, ARM7,
Motorola MC68HC11
Полная
система сквозного
проектирования электроники !
От идеи до
результатов работы устройства
и файлов для изготовления платы.
Быстрый
старт в PROTEUS - самые первые шаги ...
Конечно с
картинками !
|
|