Курс AVR123.nm.ru |
|
||
- стр. 4 - Краткий курс - Самоучитель - AVR - быстрый старт с нуля.
ПРОГРАММА для МК Компиляторы и Симуляторы
Книги и учебники по микроконтроллерам AVR тут
Это уже 4-я
страница краткого курса ! 5) какие напряжения на своих выводах может создавать МК AVR 6) с чего нужно начать разработку эл. устройства 7) какая документация по МК особенно полезна и необходима 8) где найти книги и дополнительные материалы
Иначе понимание дальнейшего материала курса может оказаться затруднительным.
Итак ... -
вы определились с тем какое
электронное - понимаете что оно должно делать, -
нарисовали схему устройства физически способную
выполнить вашу задумку ! -
например слепили из кусочков взятых в ДШ, АпНоутах,
опираясь на аналогичные
проекты других электронщиков найденные
в интернете и по
советам других радио Губителей. Пора создавать программу которая, будучи загруженной (зашитой, прожженной) в МК, будет изменять физическое состояние его внутренностей и ножек делая записи в регистры МК и узнавать о физическом состоянии содержимого МК читая его регистры.
Регистры... регистры... регистры...
и у вас все получится...
Программу
для МК удобно создавать в специальных программах
- называются
Компилятор
позволяет написать программу для МК на универсальном языке программирования
- одинаковом и для ПК и для различных
МК (кстати для МК
требуется всего 3-5% всех возможностей
языка программирования). Компилятор
по вашей команде проверяет отсутствие ошибок в набранном исходнике и, если
ошибок нет, преобразует исходник (компилирует
его) в
специальный файл обычно с расширением .hex
- его называют "прошивка".
Очень
трудно написать программу поэтому Важнейшим этапом разработки электронного устройства является его отладка и особенно отладка программы МК (программа МК называется - firmware).
Для
отладки вы : И
так до победного конца - т.е. до тех
пор
Не всегда допустимо включить устройство не зная наверняка правильно ли работает программа МК - в некоторых случаях могут произойти серьезные и дорогостоящие повреждения обвязки МК и другой аппаратуры. Иногда
требуется проверить работу МК не имея
его и
В этих
случаях я рекомендую использовать
Симулятор моделирует на ПК работу "прошитого" вашей программой МК и его обвязки - т.е. электронных компонентов окружающих МК по схеме устройства. Кроме того симуляторы позволяют вам: -
останавливать программу когда нужно -
в ручную и автоматически - делать еще много полезного !
Теперь подробнее ...
Компиляторы Си для AVR
Я сам
начинал изучать и применять МК сразу
Считаю, что : Для начинающих наиболее удобен в работе компилятор Си для AVR CodeVisionAVR ( или CVAVR) Вам
нужно скачать и установить эту
программу! Полную версию можно спросить в интернет конференциях по МК.
Именно для начинающих ! - Компилятор содержит очень понятный и очень мощный генератор начального кода программы по вашим потребностям в конфигурации периферии МК AVR - называется он : CodeWizardAVR
Затем мастер ("визад") создаст файл проекта .prj и файл исходного текста программы на языке Си с расширением .c - в нем уже будет содержаться код на Си конфигурирующий МК по сделанному вами "заказу". Вам нужно будет добавить лишь код реализующий нужный вам алгоритм работы устройства. Используйте этот мастер и далее по ходу работы программы - точно так же как и в начале, но не генерируйте новые файлы а просто откройте меню "файлы - просмотр" и посмотрите нужный кусок программы на Си, возьмите что вам нужно и вставьте в вашу программу.
Обязательно читайте Help к компилятору - по сути это одновременно и учебник по Си для AVR и именно в нужном вам объеме ! Это относится и к другим используемым вами программам. Читайте инструкцию и помощь
!
Компилятор CodeVisionAVR имеет и встроенный программный модуль для прошивки МК и конфигурирования фьюзов прямо в схеме.
AN
AVR033 "Getting Started with the CodeVisionAVR C Compiler" Кстати это один из
АпНоутов Atmel - надеюсь вы их
уже скачали.
Для полного цикла разработки устройства достаточно только одного компилятора CodeVisionAVR. Однако, я рекомендую вам, скачать ICC AVR от компании Imagecraft
Работая
в паре, два мастера конфигурирования МК -
идеально дополняют друг друга! Atmel
- подсказывает как начать работать и с
этим AN
AVR031 "Getting Started with ImageCraft C for AVR"
Существуют и другие компиляторы.
Создает очень правильный и компактный код! Есть версия и под Linux. Этот
компилятор хорошо интегрируется Вы ставите на ПК WinAVR и забываете о нем! Вся работа
идет из симулятора VMLAB - в нем C:\VMLAB\WinAVRdemo
Работать с
WinAVR без VMLAB мне не нравится
- потому что
AtmanAvr
C/C++ Compiler AVRGCC -
он как и WinAVR основан на GCC но и кнопку КОМПИЛИРОВАТЬ !
Самый лучший и дорогой ! IAR - требует несколько замысловатой настройки, не имеет множества примеров в инсталляции и не имеет генератора начального кода. Хотя компания IAR явно считает генератор полезным, так как продает его в виде отдельного программного продукта. Компилятор
IAR генерирует самый Demo
версия на 30 дней - полностью рабочая
без ограничений, нет только
исходников включенных в пакет библиотек.
Вы можете скачать DEMO с сайта производителя - примерно
65 Мб.
Скачивать большие файлы рекомендую программой ReGet (~ 1,5 Мб) - эта качалка позволяет докачивать файлы после обрыв соединения, в несколько приемов.
Средства
отладки программ
Симуляторы для AVR
Естественно вы
хотите узнать - будет ли прошивка, а
значит ваша программа работать в МК так
как вам нужно.
Без риска спалить что либо ! Вы можете проверить работу не только программы загруженной в модель МК но и работу модели целого электронного устройства! Записать на диск результат его работы для последующего анализа, поиска недочетов.
В
задачах-упражнениях курса я
использую
Бесплатный симулятор-эмулятор Несмотря
на небольшой размер (около 4.2 Мб),
программа является самостоятельным
средством разработки ПО на ассемблере
для МК сразу двух производителей: ATMEL.com и
ST.com !!!
Я
сделал упражнение -
задачу 3 в
которой очень
подробно рассмотрел симуляцию программы на
VMLAB с картинками.
Есть пример
работы VMLAB с CodeVisionAVR ! C:\VMLAB\AVR_demo\codevisi.prj и по-симулируйте ! При симуляции вы увидите движение по исходному тексту программы на Си, и можете расставлять точки останова программы, наблюдать за изменениями значений в регистрах МК, посмотреть осциллограммы сигналов на ножках МК и многое другое ...
Вся
работа от написания кода на Си до
отладки выполняется C:\VMLAB\WinAVRdemo\файлы.prj захотите попробуете ...
Скачав рекомендованные
программы -
установите CVAVR ICCv7avr VMLAB тогда рабочие файлы будут находятся по тем же адресам что и в задачах-примерах. Значит
будет проще помочь, ответить на ваши
вопросы.
Не
обязательный для курса Пакет
для разработки электронных устройств Действительно
супер ! Во первых PROTEUS может симулировать несколько МК в одном устройстве, причем не только AVR но и PIC и Motorola и 8051 и даже ARM7 вперемешку ! Во вторых в поставку PROTEUS входит очень много моделей компонентов. В третьих
вы можете симулировать любые электронные
устройства и не
Вам нужно проверить
какую то идею Вы можете не паять, не искать детали, запоминающий осциллограф и другие измерительные приборы, а Просто
"соберите" вашу схему в PROTEUS и
посмотрите как PROTEUS - симулирует очень реалистично ! И
главное наглядно видна работа
устройства, В четвертых PROTEUS
- по сути справочник электронных компонентов Для поиска компонента вам достаточно ввести в окно несколько символов из его марки или описания и затем выбрать из предложенных категорий.
в
пакет включены отличные примерно 60 устройств готовых к симуляции. Это : - дата
логер
на жесткий диск (есть модель IDE HDD ! ) - радиочастотные схемы, трансформаторы, линии передачи. - конечно кнопки, индикаторы, светодиоды, связь с ПК, разные датчики, память - конечно есть виртуальные приборы. - отладка интерфейсов UART i2c TWI SPI ... Короче все примеры "весят" 16 Мб в распакованном виде ! Вы можете скачать DEMO версию (около 26 Мб) - она полностью рабочая ! Только одно ограничение - не позволяет вам сохранить результат вашей работы. Можно
конечно захватывать изображение экрана
кнопкой "PrtSc" Кто реально ищет - тот находит всегда !
Читайте Краткий Курс Самоучитель PROTEUS Симулятор электронных устройств ПРОТЕУС, поддерживает микроконтроллеры AVR , 8051, PIC10, PIC16, PIC18, ARM7, Motorola MC68HC11 Полная система проектирования ! От идеи до
результатов работы устройства Быстрый старт, самые первые шаги ...
А
если нет модели нужного
Вам необходимы две программы - CVAVR
и VMLAB
|
ключевые слова:
программирование микроконтроллеров,
как написать программу для
микроконтроллера, обучение
программированию микроконтроллеров,
микроконтроллеры atmega128, как
запрограммировать микроконтроллер,
как прошить микроконтроллер, отладка
программы для AVR, моделирование работы
электронных схем, электронные проекты,
хобби, язык си для микроконтроллеров,
язык программирования си Основы
программирования (кнопочки, светодиоды)
Работа с портами. Прерывания и таймеры.
Основы ШИМ, программная и аппаратная
реализация. Сервоприводы. Работа с АЦП
Настройка и программирование UART Работа
с I2C Связь (UART, I2C, SPI) AT76C712 , AT76C713 , AT90CAN128 , AT90CAN128 Automotive , AT90CAN32 , AT90CAN64 , AT90PWM2 , AT90PWM3 , AT90S1200 , AT90S2313 , AT90S2323 , AT90S2343 , AT90S4433 , AT90S8515 , AT90S8535 , ATmega128 , ATmega1280 , ATmega1281 , ATmega16 , ATmega161 , ATmega162 , ATmega163 , ATmega164 , ATmega165 , ATmega168 , ATmega168 Automotive , ATmega169 , ATmega2560 , ATmega2561 , ATmega32 , ATmega323 , ATmega324 , ATmega325 , ATmega3250 , ATmega329 , ATmega3290 , ATmega406 , ATmega48 , ATmega48 Automotive , ATmega64 , ATmega640 , ATmega644 , ATmega645 , ATmega6450 , ATmega649 , ATmega6490 , ATmega8 , ATmega8515 , ATmega8535 , ATmega88 , ATmega88 Automotive , ATtiny11 , ATtiny12 , ATtiny13 , ATtiny15L , ATtiny2313 , ATtiny25 , ATtiny26 , ATtiny28L , ATtiny45 , ATtiny85 |
МикроКонтроллеры AVR Начинающим "с нуля" |