Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

mikroPascal for AVR. Урок 1. Введение

MikroPascal for AVR - удобная и достаточно функциональная среда программирования для микроконтроллеров. Она содержит собственно IDE (оболочку), компилятор, большой набор библиотек и готовых примеров. На данный момент она поддерживает практически все микроконтроллеры производства компании Atmel.

Но есть и минус - программа платная. При использовании не активированной версии максимальный размер кода 2КБ. Как с этим бороться в просторах интернета найти можно.

Скачать среду можно с оф. сайта http://mikroe.com. Процесс скачивания идет около 2 минут (скорость с их сервера низкая). Инсталляция несколько меньше.

И вот наконец, через 5 минут мучений мы увидели главное окно программы.

Кнопку "New Project", которую сразу хочется нажать мы пока что трогать не будем. А разберемся лучше с настройками среды. Что бы не лазить по вкладкам, просто нажмем "F12" и мы в настройках!

Для тех, у кого с английским "не очень" я подписал опции на скрине. Это стандартные настройки редактора кода. В принципе, я привык работать на таких настройках, а вы выбирайте как вам удобнее.

Следующая вкладка - "Editor Colors". В этой вкладке можно изменить цвета редактора (подсветки синтаксиса) и вообще всю цветовую схему редактора. 

Вкладка "Auto Correct" нам особо не интересна - она отвечает за автоматическое исправление элементарных ошибок в коде, которые мы можем допустить.

Вкладка "Auto Complete" отвечает за автоподстановку, так что там вообще ничего интересного нет.

Ну и наконец, последняя вкладка - "Style". В ней можно настроить показ сообщений во время компиляции, стиль IDE, вкл./выкл. стартовую страницу и т.п.

Закончив рассматривать настройки мы направляемся..... опять во вкладку "Tools". Но на этот раз будет более интересное занятие,  а точнее - познакомимся с утилитами, входящими  в состав mikroPascal for AVR.

Итак, утилиты во вкладке "Tools":

1.mE programmer - фирменная утилита mikroE для прошивки контроллеров. Увы (а может и "Ура"), на данный момент поддерживает далеко не все микроконтроллеры.

2.Active Comment Editor - утилитка, которая создает что-то на подобии справки к проекту. Если вы планируете создать операционную систему для МК, то вам сюда!

3.Ascii Chart - таблица символов и их ANCII кодировка. Очень нужная вещь, когда передаете данные по UART.

4.EEPROM Editor - позволяет отредактировать память "виртуального" МК и сохранить в файл для последующей прошивки.

5.Export code to HTML. Зачем было делать что-то подобное, я так и не понял. Возможно вам данная функция пригодится в разработке. Я ей воспользовался только один раз - когда записывал видеоурок к данной статье:)

6.GLCD Bitmap Editor. Вот это уже очень полезная вещь! С помощью этой утилиты можно создавать "рисунки" для графических LCD дисплеев.

7.Interrupt Assistant - помогает создавать прерывания. Тоже полезная штука.

8.LCD Custom Char Generator - делает то же что и  GLCD Bitmap Editor, но только для алфавитно - цифровых дисплеев. Часто ей пользуюсь, полезная программа.

9.mikroBootloader - как вы догадались из названия, он служит для загрузки .hex файлов в МК через bootloader.

10.Seven Segment Editor - создает коды для семисегментного индикатора.

11.UDP терминал он и есть UDP терминал. Эта программа используется для связи с МК (и не только) по сети Enternet.

12. И последним в списке "вкусностей" выступает USART терминал. Вот что хорошо, то хорошо. Этот терминал, в отличии от своего собрата из Arduino IDE умеет многое. По ближе мы с ним познакомимся в статье, посвященной связи по UART.

Закончив с обзором средств для упрощения процесса написания кода, мы наконец-то можем приступить к написанию первой программы.

Для начала создадим новый проект, для этого жмем "File" - "New" - "New Project".

Перед нами всплывает такое окно:

Далее вводим название проекта, путь (куда его создать), микроконтроллер и частоту генератора МК.

На следующем этапе нас просят подключить к проекту еще файлы, но мы пропускаем этот шаг, так как подключать нам нечего.

Предпоследний шаг - подключение библиотек. По-умолчанию подключены все библиотеки. Так как среда сама решает какие библиотеки подключить, в зависимости от кода который мы напишем, я оставляю галочку на "All".

Ну и финиш в создании нового проекта.

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

На скрине выше я подписал основные элементы управления проектом. Ну на это настройки закончились окончательно, переходим к написанию программы.

Вот текст программы, которая просто мигает светодиодом:

program myfirstproject;     // Название программы
//////////////////////////////
begin                       //
  DDRB:=0xFF;               // Конфигурируем порт B как выход
  While TRUE do begin       // Запускаем бесконечный цикл
        PORTB:=0x01;        // Отправляем в порт "1"
        delay_ms(1000);     // Ставим задержку в 1с
        PORTB:=0x00;        // Отправляем в порт "0"
        delay_ms(1000);     // Опять задержка 1с
  end;                      //
end.                        //

Вот что у нас вышло:

Ну вот, первый урок подошел к концу. В заключение хотелось бы сказать, что нажимать "F1" бывает очень полезно, а так же непосредственно в редакторе кода "Cntrl+Space".

До встречи в следующей части! Если вы хотите увидеть конкретные примеры, пишите в комментариях.

Теги:

Опубликована: 0 2
Я собрал 0 3
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 3.4 Проголосовало: 3 чел.

Комментарии (19) | Я собрал (0) | Подписаться

-3
ut1wpr #
Кто знает Си - тому Паскаль не нужен. Кто не знает Си - не тратьте время на изучение Паскаля. Тупик в приложениях с МК.
Ответить
+2

[Автор]
zeconir #
Паскаль для МК Си ничем не уступает.
Ответить
0
PataNATOm #
На Си для микроконтроллеров есть гора готовых библиотек и законченных проэктов. Зачем изобретать велосипед и портировать это на Паскаль?
Ответить
0

[Автор]
zeconir #
Я уже писал, все библиотеки для С не сами появились, их кто то написал. То же и паскалем - библиотеки со временем появятся.
И при чем тут порт? А если учесть, что паскаль появился раньше С... то что, все библиотеки С портированы?
Отредактирован 15.02.2014 13:57
Ответить
0
trengtor #
Справедливости ради отмечу, что сообщество пользователей mP для PIC как-то поактивнее выглядит, чем для AVR. Что на форумах микроЕ, что на их Либстоке.
Ответить
0
Ask #
Урок 1 - полная туфта!
Потому что между
Вот текст программы, которая просто мигает светодиодом:
и
Вот что у нас вышло:
явно пропущено какое-то действие.
Нужно либо что-то выбрать в меню, либо загрузить полученный код в AVR - само оно не заводится, и новичку приходится только догадываться и чесать репу.
Ответить
+1
nikdemars #
Молодец! Очень полезный урок, сделай пожалуйста в том же жанре: обработка события кнопки, пример работы с таймером, вывод на семисегментный индикатор, потом пример работы с АЦП. Особенно интересует работа с таймером в данной среде и АЦП
Ответить
+2

[Автор]
zeconir #
Как раз уже начал писать статью, так что следующий урок - АЦП, Кнопки и вывод на lcd. Таймеры позже так как там прерывания. На семь сегментов не знаю, посмотрю....
Отредактирован 10.02.2014 09:41
Ответить
0
ktoj #
Интересно сравнить размер кода например с размером кода такой же программы написанной на Bascom. На Ваш взгляд какие могут быть преимущества этой программы перед Bascom? Только начинаю изучать AVR, СИ слишком сложно, а вот с паскалем и бэйсиком попроще.
Ответить
0

[Автор]
zeconir #
В просторах инета видел сравнение, но там версия компилятора еще 3.ххх, так что не знаю. Да, там код в баском меньше кажется был.
Ответить
+1
дмитрий #
А есть такие же уроки, но на языке СИ?
Ответить
0

[Автор]
zeconir #
К сожалению, я не знаю. Посмотрите в сети, вроде на каком-то сайте видел..
Отредактирован 13.02.2014 15:02
Ответить
+1
Дмитрий #
Нашел одну я ссылку изучил почти все, но сожалению не чего не сохранилось и сайт свой форум удалил, но благодаря этому в этой статье я половино материала сразу понял....
Ответить
0

[Автор]
zeconir #
Если что-то еще не понятно, пишпте. Я после всех уроков вынесу в отдельный урок "повторение", и там можно осветить некоторые моменты.
Ответить
0
Gunslinger #
На мой взгляд, выбор языка программирования должен основываться на универсальности его и наличии готовых библиотек, исходников. Это позволяет работать с различными типами контроллеров и избавляет от "изобретения велосипеда". К сожалению microPascal, microBasic для PIC и AVR не обладает таким набором сопутствующей информации, как CodeVision AVR, WinAVR, IAR, Bascom AVR и другие. Это проявляется уже при разработке достаточно сложных и емких прошивок.
Ответить
0

[Автор]
zeconir #
Да, в некоторой степени вы правы. Но вот скажите - под вышеупомянутые студии сразу взяли и появились примеры, библиотеки и др. ? Нет, не сразу. И mikroE тоже пополняет новые версии mikroPascal и др. примерами, библиотеками и т.д.
Ответить
0
aleks_nn #
А можете в уроке разобрать работу с датчиком температуры DS1820?
Ответить
0

[Автор]
zeconir #
Можно будет. Кстати, в стандартных примерах есть.
Ответить
0
Александр #
Действительно, а как прошивается?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется напряжение?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
Набор для сборки - УНЧ 2х60 Вт на TDA7294 Сатфайндер
вверх