Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






НА ЯЗЫКЕ СИ, КОМПИЛЯТОРЫ И СИМУЛЯТОРЫ




 

При проектировании микропроцессорного устройства вы определились с тем, что оно должно делать, нарисовали схему устройства, физически способную выполнить вашу задачу. Программу для микроконтроллера (МК) удобно создавать с помощью специальных программных средств – компиляторов. Компилятор позволяет написать программу для МК на универсальном языке программирования Си (кстати, для МК требуется всего 3-5% всех его возможностей).

Текст программы, набранный в компиляторе, называют исходным кодом. Компилятор проверяет отсутствие ошибок в набранном исходнике и, если ошибок нет, преобразует исходник (компилирует его) в специальный файл обычно с расширением.hex – его называют "прошивка".

Прошивку с помощью программатора (для AVR это, например, пять проводков с параллельного порта ПК) помещают во FLASH-память программ МК и при необходимости частично в его EEPROM.

Очень трудно написать программу сразу правильно и без ошибок. Поэтому важнейшим этапом разработки электронного устройства является отладка программы МК.

Для отладки вы включаете устройство с прошитым МК, находите отклонения от требуемого алгоритма, выявляете ошибки, вносите соответствующие изменения в исходный текст программы и опять компилируете, прошиваете новый.hex в МК и так до победного конца – т.е. до тех пор, пока устройство не заработает так, как вам нужно.

Не всегда допустимо включить устройство, не зная наверняка, правильно ли работает программа МК – в некоторых случаях могут произойти серьезные и дорогостоящие повреждения обвязки МК и другой аппаратуры. Иногда требуется проверить работу МК, не имея вообще реально спаянной схемы и самого МК. В этих случаях рекомендуется использовать специальные программные средства – симуляторы.

 

 

Симулятор приблизительно моделирует на персональном компьютере (ПК) работу "прошитого" вашей программой МК и его обвязки – т.е. электронных компонентов, окружающих МК по схеме устройства.

Кроме того, симуляторы позволяют:

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

электронные компоненты и устройства;
- виртуально обмениваться информацией с терминалом на ПК;

- делать еще много полезного!

Для начинающих наиболее удобен в работе компилятор Си для AVR CodeVisionAVR (или CVAVR). Компилятор содержит очень понятный и мощный генератор начального кода программы по вашим потребностям в конфигурации периферии МК AVR – называется он CodeWizardAVR (будем называть его мастером).

 

 

Рисунок 1 – Окно мастера создания нового проекта

 

Вам нужно просто выбрать МК, частоту тактирования, затем открыть ярлыки тех устройств МК, которые будете использовать, и установить нужные параметры их работы.

Затем мастер создаст файл проекта.prj и файл исходного текста программы на языке Си с расширением.c – в нем уже будет содержаться код на Си, конфигурирующий МК по сделанному вами "заказу". Вам нужно будет добавить лишь код, реализующий нужный вам алгоритм работы устройства.

Используйте этот мастер и далее по ходу работы программы – точно так же как и в начале, но не генерируйте новые файлы, а просто откройте меню "Program Preview" и посмотрите нужный кусок программы на Си, возьмите, что вам нужно и вставьте в вашу программу.

Компилятор CodeVisionAVR имеет и встроенный программный модуль для прошивки МК и конфигурационных ячеек (Fuse Bits - фьюзов) прямо в схеме. Фьюзы расположены в отдельном адресном пространстве, доступном только при программировании.

Для полного цикла разработки устройства достаточно только одного компилятора CodeVisionAVR. В компиляторах есть отличные примеры программ на Си для наиболее часто встречающихся задач на МК. В CodeVisionAVR примеры находятся в папке CVAVR\Examples. Примеры – это исходные тексты программ на Си для управления периферией МК и интерфейса с популярными внешними устройствами. Исходники снабжены подробными комментариями. Комментарии – это то, что написано
после двух косых черточек // – в одну строку, либо между /* и */ – в одну или несколько строк.

Вы получили файл-прошивку для МК. Естественно, хотите узнать – будет ли прошивка, а значит ваша программа, работать в МК так, как вам нужно. Для этой цели будем использовать симулятор для AVR – Visual Micro Lab (VMLAB). В поставку VMLAB включено множество примеров программ и прошивок для немедленной симуляции-эмуляции устройства с МК. Примеры находятся в папках: Tutorial и AVR_demo.

Есть пример работы VMLAB с CodeVisionAVR. Откройте файл проекта C:\VMLAB\AVR_demo\codevisi.prj и посимулируйте. При симуляции вы увидите движение по исходному тексту программы на Си, и можете расставлять точки останова программы, наблюдать за изменениями значений в регистрах МК, посмотреть осциллограммы сигналов на ножках МК и многое другое.

На симуляторе VMLAB мы будем проверять работу программы для разрабатываемого устройства. Файл-прошивку для МК (расширение.hex), созданный в компиляторе, будем прогонять в симуляторе МК с внешними компонентами и смотреть, что работает, что нет, и как работает. При необходимости будем корректировать исходный текст программы на Си, опять компилировать, и так по кругу до достижения правильной работы устройства. Этот процесс и называется отладкой программы.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных