«Бегущая строка» на микроконтроллере pic с помощью flowcode | Статья в журнале «Молодой ученый»

Библиографическое описание:

Тлеубергенов А., Казагачев В. Н., Тлеуова У. С. «Бегущая строка» на микроконтроллере pic с помощью flowcode // Молодой ученый. — 2015. — №21. — С. 222-225. — URL https://moluch.ru/archive/101/22967/ (дата обращения: 14.08.2018).

 

В статье рассматривается взаимодействие светодиодов с микроконтроллером pic и программирование «бегущей строки» с помощью Flowcode.

Ключевые слова: микроконтроллер, программирование, flowcode.

 

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

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

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

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

Повышенный интерес к программированию МК привело к необходимости разработки соответствующих методов и средств обучения. Естественно, обучение программированию МК, кроме персонального компьютера, потребует наличия аппаратно-программного и методического обеспечения. Поэтому, мы поставили задачу: разработка и сборка лабораторного стенда по программированию МК производства Microchip или AVR, также включающего в себя 8–10 практикумов, с решенными примерами и упражнениями. [1,2]

Программирование МК (рис.1) состоит из этапов:

создание программного кода на компьютере — с помощью редактора и компилятора, (например, PicBasic — язык высокого уровня для программирования МК PIC, среда разработки MicroCode Studio и др.) создается программа в двоичных кодах, которая сохраняется на компьютере в формате.hex;

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

Рис. 1. Программирование микроконтроллера

 

В данной статье мы перейдем непосредственно к разработке программы «Бегущая строка на микроконтроллере», с использованием микроконтроллера PIC16F877А. В этом микроконтроллере имеется все необходимое для решения наших задач. Хотя Вы можете взять и другие микроконтроллеры, имеющие в своем составе необходимые аппаратные средства.

Наша программа «бегущий огонь» поочередно зажигает восемь светодиодов, имитируя бегущий огонь. Для управления этими восемью светодиодами используются все выводы порта PORTB. Эта программа может служить хорошим примером того, как можно управлять всеми восемью светодиодами, организовав только один бесконечный цикл. На рис. 2 приведена схема этого устройства.

Рис. 2. Принципиальная схема «Бегущий огонь» с микроконтроллером PIC16F877A и диодами

 

Возможно создание программы самостоятельно, но обратимся на сайт [4], где имеются готовые примеры и воспользуемся им, слегка модифицируя программу.

  1. Построение алгоритма.

        Очистка порта. Это означает, что на всех выводах PORTB в начале работы программы будет логический 0. Отправляем 0 в порт В

        Присвоение переменной k значения 1. В самом начале основной программы мы увеличиваем значение переменной k на единицу. Это значит, что на выводе 0 PORTB появится логическая единица и первый светодиод зажжется.

        Начало бесконечного цикла

        Проверка равна ли переменная k нулю, если да, присваиваем переменной единицу.

        Если нет, отправляем переменную в порт В

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

        Умножаем переменную на 2 (k = k * 2)

        Возврат к началу цикла. Вернувшись в начало, программа снова увеличивает значение переменной k и тогда загорается второй светодиод, а первый гаснет. Таким образом, программа, работая в цикле, постоянно увеличивает значение указанной переменной.

  1. Реализация блок-схемы в Flowcode.

 

Рис. 3. Блок-схема Flowcode с микроконтроллером PIC16F877A и диодами

 

Программа Flowcode позволяет перевести «блок-схему» на языке С и ASM. Полученный в результате компиляции файл с расширением *.hex, можно записать с помощью программатора в микроконтроллер.

Изменяя константу команды Задержка, можно подстраивать временные интервалы и заставлять «бегущий огонь» бегать быстрее или медленнее.

Мы видим, что создание программы для микроконтроллера на Flowcode, для новичков, намного проще, чем на ассемблере или С. Достаточно знать базовые алгоритмические конструкции.

 

Литература:

 

  1. Абдулгалимов Г. Л. Лабораторный стенд для программирования микроконтроллеров. // Техника и технология. 2013. № 5–6 (59). С. 26–28
  2. Абдулгалимов Г. Л., Казагачев В. Н., Гибадулин Р. Я. Программно и аппаратно-методическое обеспечение учебного процесса как средство оценки компетентностной модели специалиста. Материалы V-й Международной научно-практической конференции «Технологии построения систем образования с заданными свойствами». МГГУ им. М. А. Шолохова. Москва, 2014. С. 38–41.
  3. Хилинский В. Н. Учимся программировать микроконтроллеры PIC на PicBasic Pro. 2007 г,- 186 с.
  4. Flowcode.info.
Основные термины (генерируются автоматически): PORTB, программирование МК, программа, микроконтроллер, обработка информации, высокий уровень, бесконечный цикл, PIC, AVR, ASM.


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

Особенности изучения линейного алгоритма на flowcode

Полезная информация. Спецвыпуски.

Рис. 2. Микроконтроллер PIC 16F877. Рис. 3. Блок-схема и программа «Мигающий диод».

Основные термины (генерируются автоматически): VSM, PROTEUS, программа, PORTB, ASM, микроконтроллер, HEX, FLOWCODE, DSP...

Лабораторный стенд для отладки периферийных схем...

Высокая скорость выполнения команд в PIC-контроллерах достигается за счет использования двухшинной

Рис. 1. Лабораторный стенд на базе МК PIC 16F876A.

Помимо этого, имеется интерфейс для программирования микроконтроллера через программатор PicKit.

Сравнительный обзор распространённых языков... | Молодой ученый

язык ассемблера, язык программирования, язык, AVR, высокий уровень, PORTB, программный код, микроконтроллер фирмы, программа, программирование.

Микроконтроллеры интеллектуальных систем управления

‒ устройств, выполняющих передачу данных на высокой скорости; ‒ устройств, выполняющих криптографические операции, систем защиты информации.

Основные термины (генерируются автоматически): ARM, AVR, ПЛИС, микроконтроллер, VHDL, PIC, IDE, устройство...

Разработка робота для транспортировки малогабаритных...

2.2 Обнаружение объекта. Как уже упоминалось выше, благодаря тому, что робот обладает двумя

Шпак Ю. А. Программирование микроконтроллеров на языке СИ. — К.: «МК-Пресс», СПб.

Белов А. В. Самоучитель разработчика устройств на микроконтроллерах AVR.

Генератор сигналов произвольной формы на микроконтроллере...

Полезная информация. Спецвыпуски.

МК-Экспресс, 2009. — 320 с. Соммер У. Программирование микроконтроллерных плат Arduino/Freeduino.

«Бегущая строка» на микроконтроллере pic с помощью flowcode.

Устройство автоматического контроля состояния изоляции в сетях...

Производимое Atmel семейство 8-разрядных AVR-микроконтроллеров с RISC–архитектурой обеспечивает быстродействие выполнения программы и обработки данных

AVR-архитектура оптимизирована под язык высокого уровня Си, а большинство представителей семейства...

Linux implementation of AVR program assembling | Статья в журнале...

Indeed, C-based applications are debugging with rather superior quality. Atmel AVR microcontroller implementation of GDB accepts a remote debugging with, amidst the purposes of this article, SimulAVR software.

OUT PORTB, R16.

Обсуждение

Социальные комментарии Cackle

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

Особенности изучения линейного алгоритма на flowcode

Полезная информация. Спецвыпуски.

Рис. 2. Микроконтроллер PIC 16F877. Рис. 3. Блок-схема и программа «Мигающий диод».

Основные термины (генерируются автоматически): VSM, PROTEUS, программа, PORTB, ASM, микроконтроллер, HEX, FLOWCODE, DSP...

Лабораторный стенд для отладки периферийных схем...

Высокая скорость выполнения команд в PIC-контроллерах достигается за счет использования двухшинной

Рис. 1. Лабораторный стенд на базе МК PIC 16F876A.

Помимо этого, имеется интерфейс для программирования микроконтроллера через программатор PicKit.

Сравнительный обзор распространённых языков... | Молодой ученый

язык ассемблера, язык программирования, язык, AVR, высокий уровень, PORTB, программный код, микроконтроллер фирмы, программа, программирование.

Микроконтроллеры интеллектуальных систем управления

‒ устройств, выполняющих передачу данных на высокой скорости; ‒ устройств, выполняющих криптографические операции, систем защиты информации.

Основные термины (генерируются автоматически): ARM, AVR, ПЛИС, микроконтроллер, VHDL, PIC, IDE, устройство...

Разработка робота для транспортировки малогабаритных...

2.2 Обнаружение объекта. Как уже упоминалось выше, благодаря тому, что робот обладает двумя

Шпак Ю. А. Программирование микроконтроллеров на языке СИ. — К.: «МК-Пресс», СПб.

Белов А. В. Самоучитель разработчика устройств на микроконтроллерах AVR.

Генератор сигналов произвольной формы на микроконтроллере...

Полезная информация. Спецвыпуски.

МК-Экспресс, 2009. — 320 с. Соммер У. Программирование микроконтроллерных плат Arduino/Freeduino.

«Бегущая строка» на микроконтроллере pic с помощью flowcode.

Устройство автоматического контроля состояния изоляции в сетях...

Производимое Atmel семейство 8-разрядных AVR-микроконтроллеров с RISC–архитектурой обеспечивает быстродействие выполнения программы и обработки данных

AVR-архитектура оптимизирована под язык высокого уровня Си, а большинство представителей семейства...

Linux implementation of AVR program assembling | Статья в журнале...

Indeed, C-based applications are debugging with rather superior quality. Atmel AVR microcontroller implementation of GDB accepts a remote debugging with, amidst the purposes of this article, SimulAVR software.

OUT PORTB, R16.

Задать вопрос