Только в этом месяце - скидки на паяльники и электронику с нашими кодами (123avr.com) :
![]() |
|
Совет - умейте правильно находить информацию!
|
Добавить страницу в закладки: - стр. 4 -
ПРОГРАММА для МК
|
|
Вам нужно просто
выбрать МК, частоту тактирования, затем
открыть ярлыки тех устройств МК которые вы будете использовать и
установить нужные параметры их работы.
Затем мастер ("визад") создаст
файл проекта .prj и файл исходного текста программы на
языке Си с расширением .c - в нем уже будет содержаться код на Си
конфигурирующий МК по сделанному вами "заказу". Вам нужно будет добавить
лишь код реализующий нужный вам алгоритм работы устройства.
Используйте этот мастер и далее по ходу работы программы
- точно так же как и в начале, но не генерируйте новые файлы а просто
откройте меню "файлы - просмотр" и посмотрите нужный кусок программы на
Си, возьмите что вам нужно и вставьте в вашу программу.
Подробно и с картинками работу с КодВизадом - мастером начального кода CodeVisionAVR я описал в задаче 1 |
||
Обязательно читайте Help к компилятору - по сути это одновременно и учебник по Си для AVR и именно в нужном вам объеме ! Это относится и к другим используемым вами программам. Читайте инструкцию и помощь ! Смотрите пробуйте изучайте ПРИМЕРЫ к программе !
Компилятор CodeVisionAVR имеет и встроенный программный модуль для прошивки МК и конфигурирования фьюзов прямо в схеме Компания Atmel подсказывает как начать работать с этим компилятором Си для AVR: AN AVR033 "Getting Started with the CodeVisionAVR C Compiler".
Это АпНоуто Atmel - надеюсь вы уже скачали хотя бы их список ! Если нет то скачайте обязательно их перечень.Они ВСЕ нужны ВАМ !!! как справочник конкретно по AVR.
Для
полного цикла разработки устройства достаточно только одного компилятора
CodeVisionAVR.
Однако, я рекомендую вам,
скачать
еще один компилятор: ICC
AVR от компании
Imagecraft
Я использую
и его генератор начального кода на Си - конфигуратор периферии AVR - в
паре с CodeWizardAVR.
Работая в паре, два мастера
конфигурирования МК - идеально дополняют друг друга! Например
конфигурация Таймеров МК по моему лучше, понятней и наглядней сделана в
мастере ICC.
Atmel - подсказывает как начать
работать и с этим компилятором Си для AVR в Апликейшн Ноуте: AN
AVR031 "Getting Started with ImageCraft C for AVR"
В компиляторах есть отличные примеры программ на Си для наиболее часто встречающихся задач на МК в CodeVisionAVR
примеры в папке - CVAVR\Examples Не забывайте и вы комментировать тексты ваших программ. Иначе, буквально через пару месяцев, вам будет очень затруднительно понять, что делает тот или иной кусок даже ВАШЕЙ программы! |
||
Существуют и другие
компиляторы. БЕСПЛАТНЫЙ
и великолепный
WinAVR
(размер 25 Mb) - по честному бесплатный пакет на
основе
компилятора GCC - о нем очень хорошие отзывы.
Создает очень правильный и компактный код!
Есть версия и под Linux. Есть вариант
WinAVR в USB-флэшке.
Этот компилятор хорошо интегрируется с симулятором VMLAB
и фирменным симулятором Atmel -
AVRstudio
(о симуляторах ниже и в самом низу страницы)
Вы ставите на ПК
WinAVR
и забываете о нем! Вся работа идет из
симулятора VMLAB - в нем есть пример такой интеграции, находится
в папке: C:\VMLAB\WinAVRdemo
Работать с самим WinAVR тоже очень просто.
Компиляция проекта в WinAVR
- запустите "пуск" -> "WinAVR" -> "Programmers NotePad"
- откройте демо проект C:\WinAVR\examples\demo\demo.c
- затем меню "Tools"
и "Make All"
Проект
откомпилируется и в папке C:\WinAVR\examples\demo\ появятся:
demo.hex - файл для прошивки в МК st
demo.lst - это листинг на ассемблере с привязкой к Си коду программы
demo.elf - файл содержит информацию для отладки программы в симуляторе. Например в PROTEUS.
Подробней о WinAVR читайте в низу этой страницы.
AtmanAVR C/C++ Compiler AVRGCC - он как и WinAVR основан на GCC но имеет отладчик и ГЛАВНОЕ для начинающего: прекрасный генератор начального кода !
Самый лучший и дорогой - IAR - требует несколько замысловатой настройки, не имеет множества примеров в инсталляции и не имеет генератора начального кода. Хотя компания IAR явно считает генератор полезным, так как продает его в виде отдельного программного продукта. Компилятор IAR генерирует самый быстрый и компактный код. Demo версия на 30 дней - полностью рабочая без ограничений, нет только не нужных начинающему исходников включенных в пакет библиотек. Вы можете скачать DEMO с сайта производителя - примерно 65 Мб.
Примеры программ на Си подходят с незначительными изменениями для любых компиляторов и для любых МК ! Так как язык Си машино не зависимый - т.е. программы мало зависят от того для какого процессора они написаны. Огромное количество НУЖНЫХ исходников (примеры программ) для AVR на Си здесь - AVRLib можно скачать все одним ZIP-архивом. |
||
Попробуйте поискать полезную инормацию в Гугле - ее там море ! Учитесь искать!
Вы скачали компилятор
Си для AVR
CodeVisionAVR и
АпНоуты инсталлировали его и получили файл прошивку для
МК. Естественно вы хотите узнать -
будет ли прошивка, а значит ваша программа работать в МК так как вам
нужно. Для этого удобно использовать специальные
программы для ПК называемые симуляторами.
Не имея МК, не покупая эл. компонентов и без пайки. Без
риска спалить что либо
Вы можете проверить работу
не только программы загруженной в модель МК но и работу модели целого
электронного устройства. Записать на диск результат его работы для
последующего анализа, поиска недочетов.
В задачах-упражнениях курса я использую Бесплатный симулятор-эмулятор для AVR - VMLAB (скачайте и установите на ПК)
Несмотря на небольшой размер (около 4.2 Мб), программа является
самостоятельным средством разработки ПО на ассемблере для МК сразу двух
производителей: ATMEL.com и ST.com.
Мультипроцессорность
- это эмуляция двух МК в устройстве, у
каждого своя прошивка и они работают не зависимо - это очень мощно если
правильно этим воспользоваться!
Юзер дефайн компонентс - в общем если
вам нужен какой либо электронный компонент отсутствующий в списке VMLAB,
вы можете создать его сами! в соответствии с ДШ или по вашим
потребностям - даже не существующий в природе!
Я
сделал упражнение - задачу 3 в которой очень
подробно рассмотрел симуляцию программы на VMLAB с картинками.
В поставку VMLAB включено множество примеров программ и прошивок для немедленной симуляции - эмуляции устройства с МК. Примеры находятся в папках: Tutorial и AVR_demo Запустите их и освойтесь, поиграйте с симулятором на досуге ... |
||
Есть пример работы VMLAB с CodeVisionAVR.
откройте файл проекта C:\VMLAB\AVR_demo\codevisi.prj
и по-симулируйте ! При
симуляции вы увидите
движение по
исходному тексту программы на Си, и можете расставлять точки останова
программы, наблюдать за изменениями значений в регистрах МК, посмотреть
осциллограммы сигналов на ножках МК и многое другое ...
Уже упоминал: пример работы VMLAB с WinAVR вы устанавливаете winavr в папку по умолчанию и больше ни когда не заглядываете в неё Вся работа от написания кода на Си до отладки выполняется из VMLAB - это очень удобно. C:\VMLAB\WinAVRdemo\файлы.prj -захотите попробуете ...
Совет ! Скачайте мою заготовку (Шаблон, "РЫБА" - всего 6 Кб) для быстрого старта в совместном использовании компилятора CodeVisionAVR и симулятора VMLAB с МК ATmega16 Распакуйте файлы
из архива в папку:
С:\VMLAB\WORK В общем качайте ! - это нужно ВАМ ! |
||
повторю
:
На софт-эмуляторе симуляторе VMLAB
мы будем проверять работу программы для разрабатываемого устройства.
Файл-прошивку для МК
(расширение .hex)
созданный в компиляторе будем прогонять в симуляторе МК с внешними
компонентами и смотреть что работает, что нет, и как работает...
При необходимости будем корректировать исходный текст программы на Си,
опять компилировать, и так по кругу до достижения правильной
работы устройства. Этот процесс называется -
отладка программы или дебагинн - очистка от всякой нечисти - "тараканов"
и "жучков"...
Скачав рекомендованные
программы - установите
их на диск С:\ в каталоги :
CVAVR ICCv7avr VMLAB
тогда рабочие файлы будут
находятся по тем же адресам что и в задачах-примерах. Значит будет
проще помочь, ответить на ваши вопросы.
Сделайте архивы установленных программ целиком
- это поможет восстановить, случайно испорченные при опробовании программ,
файлы примеров и помощи, без переИнсталляции.
Хелпы во всех рекомендуемых программах качественные и подробные! НЕ забывайте их читать! |
||
Не обязательный для курса
но ВЕЛИКОЛЕПНЫЙ
Пакет для разработки
электронных устройств от схемы до печатной платы
PROTEUS
Действительно супер !
Во первых
PROTEUS
может симулировать несколько МК
в одном устройстве, причем не только AVR но и PIC и Motorola и 8051 и даже
ARM7 вперемешку !
Во вторых
в поставку PROTEUS входит очень много моделей компонентов.
В третьих вы можете
симулировать любые электронные устройства и не содержащие МК и очень
сложные и электро-механические системы - это очень полезно, Вам
нужно проверить какую то идею или вариант реализации чего либо ? Вы
можете не паять, не искать детали, запоминающий осциллограф и другие
измерительные приборы, а Просто "соберите" вашу схему в PROTEUS и
посмотрите как она будет работать, каковы будут выходные
параметры. PROTEUS - симулирует очень реалистично ! И главное
наглядно видна работа устройства, напряжения и токи в нем.
В четвертых PROTEUS
- по сути справочник электронных компонентов
Когда вы просматриваете библиотеки для добавления компонента на схему -
вам сразу показываются его основные свойства и корпус компонента -
какова его площадка на плате. Просто класс ! Для поиска компонента вам
достаточно ввести в окно несколько символов из его марки или описания и
затем выбрать из предложенных категорий.в
пакет включены отличные примеры работы
в PROTEUS примерно
60 устройств готовых к симуляции.
Это :
- дата логер на жесткий диск (есть модель IDE HDD ! )
- можно поиграть в шахматы с ATmega128 !!! (есть модель "точскрина" )
- есть пример работы с графическим LCD дисплеем
- управление шаговым двигателем
- управление электродвигателем
- управление servo
- радиочастотные схемы, трансформаторы, линии передачи.
- конечно кнопки, индикаторы, светодиоды, связь с ПК, разные датчики, память
- конечно есть виртуальные приборы.
- отладка интерфейсов UART i2c TWI SPI
... Короче все примеры "весят" 16 Мб в распакованном виде !
Вы можете скачать DEMO версию (около 26 Мб) - она полностью рабочая ! Только одно ограничение - не позволяет вам сохранить результат вашей работы. Читайте Краткий Курс Самоучитель PROTEUS
А если нет модели нужного вам компонента ? Вот что я придумал -
Если вы не
находите модели нужного вам компонента, то вы можете изобразить
ее с помощью еще одного МК и возможно некоторых существующих
компонентов. Дело
в том что симуляторы не против не реально высокой частоты
работы симулируемого МК - я пробовал 500 МГц в PROTEUS и все
работает. Думаю вычислительная мощность МК в таком режиме
позволит вам изобразить что угодно.
Преимущество моего
метода - Вам
не нужно изучать методику и иметь инструментарий для создания
моделей для VMLAB или PROTEUS
стандартным способом. Вы лишь лишний раз поупражняетесь в
программировании МК с которым работаете.
Кроме того теперь
PROTEUS не работает с моделями созданными без специально
полученного кода для создания модели ! А по моему
методу вы сможете делать модели и при желании продавать их не
имея такой лицензии и законно! |
||
Вам необходимы
две программы - CVAVR и VMLAB для усвоения дальнейшего материала
курса.
Попробуйте поискать полезную инормацию в Гугле - ее там море ! Учитесь искать!
Добавить страницу в закладки:
Copyright 2009-2019 123avr.com