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


Назначение

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

На сегодняшний день количество различных микроконтроллеров огромно: в производстве участвуют более 40 фирм-производителей, создано более 500 различных семейств микросхем. В стенде рассмотрены 5 наиболее распространённых типов микроконтроллеров, каждый из которых обладает своими достоинствами и областью применения.

Изучаемый микроконтроллерСложность програм-мированияПериферийные устройстваПроизво-дительностьОсобенностиОбласть применения
PIC16F877 (Microchip)Низкая (всего 40 ассемблерных команд)АЦП, таймеры, встроенная энерго-независимая памятьНизкаяПовсеместная распространенностьМикро-контроллер общего назначения
ADuC812(Analog Devices)Низкая (простая система команд MCS-51)АЦП, ЦАП, таймерыНизкаяТочные АЦП и ЦАПИзмерительное оборудование, метрология
STM32F100(ST)Средняя(ядро Cortex M3)Огромное количество периферии, прямой доступ к памятиВысокаяОгромная номенклатура семейства, высокая производительностьВысокопроизводительные системы с низким энергопотреблением
AT91SAM7S256 (Atmel)Высокая(ядро ARM7)Огромное количество периферии, прямой доступ к памятиВысокаяДвойная система команд, огромная номенклатура семейства, высокая производительностьВысокопроизводительные системы с низким энергопотреблением
ATmega32(Atmel)Средняя(ядро AVR)большое количество периферии, встроенная энергонезависимая памятьВысокаяПовсеместная распространенность, огромная номенклатура семейства, довольно высокая производительностьМикро-контроллер общего назначения

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

Состав стенда

Стенд представляет собой несколько модулей, один из которых является основным (блок периферийных устройств), а также четыре вспомогательных модуля, в каждом из которых смонтирован какой-либо из микроконтроллеров с необходимой обвязкой (включая программатор и/или отладчик). Ниже приведён состав базовой настольной комплектации:

  1. Базовый модуль периферийных устройств (1 шт.)
  2. Блок «Микроконтроллер Atmega32» включает в себя (опционально любое количество):
  • модуль «Микроконтроллер Atmega32» (1 шт.)
  • соединительные провода для коммутации гнёзд на лицевых панелях модулей (20 шт.)
  • кабель USB-BF (1 шт.)
  1. Блок «Микроконтроллер PIC16F877A» включает в себя (опционально любое количество):
  • модуль «Микроконтроллер PIC16F877A» (1 шт.)
  • соединительные провода для коммутации гнёзд на лицевых панелях модулей (20 шт.)
  • кабель USB-BF (1 шт.)
  1. Блок «Микроконтроллер STM32F103» включает в себя (опционально любое количество):
  • модуль «Микроконтроллер STM32F103» (с ядром Cortex M3) (1 шт.)
  • соединительные провода для коммутации гнёзд на лицевых панелях модулей (20 шт.)
  • кабель USB-BF (1 шт.)
  1. Блок «Микроконтроллер ADuC812» включает в себя (опционально любое количество):
  • модуль «Микроконтроллер ADuC812» (с ядром MCS-51) (1 шт.)
  • соединительные провода для коммутации гнёзд на лицевых панелях модулей (20 шт.)
  • кабель USB-BF (1 шт.)
  1. Блок «Микроконтроллер AT91SAM7S256» включает в себя (опционально любое количество):
  • модуль «Микроконтроллер AT91SAM7S256» (1 шт.)
  • соединительные провода для коммутации гнёзд на лицевых панелях модулей (20 шт.)
  • кабель USB-BF (1 шт.)
  1. Компакт-диск с программным обеспечением (1 шт.).

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

Варианты поставки

Название комплектацииСостав
МКСодержит базовую комплектацию, настольный вариант
МК-КДополнительно к базовой комплектации МК содержит комплект персонального компьютера
МК-НДополнительно к базовой комплектации МК содержит ноутбук

Настольный вариант с компьютером, МК-К

Стол не включен в поставку.

Функциональность стенда и его структура

Модуль периферийных устройств

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

Модуль периферийных устройств содержит в себе:

  1. Жидкокристаллический четырехстрочный цифро-буквенный дисплей.
  2. Семисегментный четырехразрядный индикатор.
  3. Пьезоизлучатель.
  4. Модуль связи с компьютером (виртуальный COM-порт).
  5. 4 кнопочных выключателя.
  6. 4 светодиода.
  7. 2 потенциометра для генерации аналогового напряжения.
  8. Цифровой вольтметр.
  9. Матричная клавиатура.
  10. Фильтры низких частот с различными параметрами.
  11. Микросхемы DS1307Z (часы реального времени) и 24LC64 (EEPROM-память объемом 64 кБит), соединенные в соответствии со спецификацией интерфейса I2C.
  12. Микросхема Data Flash AT45DB161 (Flash c объемом 16 Мбит) с интерфейсом SPI.
  13. Микросхема DS18B20 с интерфейсом 1-wire.

Модуль подключается к компьютеру по интерфейсу USB, оттуда же он получает необходимое для работы питание.

Модуль «Микроконтроллер ATmega32»

Модуль содержит в себе микроконтроллер ATmega32, некоторые из портов ввода-вывода которого доступны на лицевой панели. Модуль включает в себя отладчик/программатор, который позволяет программировать и отлаживать целевой микроконтроллер через интерфейс JTAG. Модуль соединяется с ПК через интерфейс USB, разъем которого расположен на задней панели. Модуль имеет кнопку сброса целевого микроконтроллера, и светодиоды состояния отладчика. Программирование может осуществляться в средах AVR Studio и Eclipse.


Характеристики микроконтроллера:

  • Высокопроизводительный RISC-процессор;
  • Тактовая частота до 16 МГц;
  • FLASH память программ объемом 32 Кбайт;
  • 1024 байт энергонезависимой памяти EEPROM;
  • 2 КБайт внутренней памяти данных SRAM;
  • Внешние и внутренние источники прерываний;
  • 4 раздельных порта ввода-вывода с настраиваемыми линиями;
  • Аппаратные модули USART, TWI (I2C), SPI;
  • 10-разрядный аналогово-цифровой преобразователь с 8-разрядным мультиплексором входных сигналов;

Питание и обмен данными осуществляется через интерфейс USB (напряжение питания не менее 5 вольт, потребляемый ток не более 450 мА).

Модуль «Микроконтроллер PIC16F877A»

Модуль содержит в себе микроконтроллер PIC16F877A фирмы Microchip, некоторые из портов ввода-вывода которого доступны на лицевой панели. Также модуль включает в себя внутрисхемный отладчик/программатор ICD2, который позволяет программировать и отлаживать целевой микроконтроллер с помощью специального ПО. Модуль соединяется с ПК при помощи интерфейса USB. Модуль также содержит кнопку сброса целевого микроконтроллера и светодиоды состояния отладчика.

Характеристики микроконтроллера:

  • высокопроизводительный RISC-процессор;
  • тактовая частота до 20 МГц;
  • FLASH память программ до 8K x 14 слов;
  • память данных (ОЗУ) до 368 x 8 байт;
  • ЭСППЗУ память данных до 256 x 8 байт;
  • механизм прерываний (до 14 внутренних/внешних источников прерываний);
  • восьмиуровневый аппаратный стек;
  • 5 раздельных портов ввода-вывода с настраиваемыми линиями.

Питание и обмен данными осуществляется через интерфейс USB (напряжение питания не менее 5 В, потребляемый ток не более 350 мА).

Модуль «Микроконтроллер ADuC812»

Модуль содержит микроконтроллер ADuC812 фирмы Analog Devices, некоторые из портов ввода-вывода которого доступны на лицевой панели. В модуле выполнена вся необходимая аналоговая обвязка, все входные и выходные аналоговые порты защищены буферными операционными усилителями Rail-To-Rail. На лицевой панели выведена кнопка PSEN, предназначенная для входа в режим программирования микроконтроллера. Загрузка программы осуществляется через виртуальный СОМ-порт. Для программирования используется среда, допускающая программирования микроконтроллеров с ядром MCS-51. Модуль имеет кнопку сброса целевого микроконтроллера и светодиоды состояния.

Характеристики микроконтроллера:

  • совместимость с 8051/8052;
  • тактовая частота до 12МГц;
  • встроенный 8-ми канальный 12-ти разрядный АЦП с быстродействием 200Квыб/c;
  • встроенный источник опорного напряжения Uоп=2.5В, 40ppm/°C ;
  • два 12-ти разрядных ЦАП с Uвых, время установления 10мкс;
  • флэш-память: 8Кбайт программ, 640байт данных;
  • встроенное ОЗУ: 256байт данных;
  • объём адресуемой внешней памяти: 16Мбайт ;
  • DMA режим;
  • порт последовательного ввода/вывода UART2;
  • 3-х проводной порт совместимый с I2C и SPI.

Питание и обмен данными осуществляется через интерфейс USB (напряжение питания не менее 5 В, потребляемый ток не более 350 мА).

Модуль «Микроконтроллер STM32F100»

Модуль содержит в себе микроконтроллер STM32F100, некоторые из портов ввода-вывода которого доступны на лицевой панели. Также модуль включает в себя внутрисхемный отладчик/программатор, который позволяет программировать и отлаживать целевой микроконтроллер с помощью специального ПО через интерфейс SWD. Модуль соединяется с ПК через интерфейс USB. На лицевой панели находится также кнопка сброса целевого микроконтроллера и светодиоды состояния отладчика.

Характеристики микроконтроллера:

  • максимальная тактовая частота 24 МГц (30 DMIPS);
    • умножение и деление за 1 такт;
    • от 4 до 8 Кб ОЗУ;
    • от 16 до 128 Кб флэш-памяти;
    • два встроенных и откалиброванных тактовых генератора на 40 КГц и 8 МГц;
    • 7-канальный DMA контроллер;
    • 16-канальный 12-битный АЦП (1.2 мкс) с датчиком температуры;
    • два 12–битных ЦАП;
    • до 80 быстрых портов ввода – вывода;
    • до 16 внешних прерываний;
    • два сторожевых таймера (IWDG и WWDG);
    • до 10 таймеров общего и расширенного назначений;
    • до 2х I2C(SMBus/PMBus);
    • до 3х USART (Lin, IrDa, modem control);
    • до 2 SPI(2 Мбит/с).

Питание и обмен данными осуществляется через интерфейс USB (напряжение питания не менее 5 В, потребляемый ток не более 350 мА).

Модуль «Микроконтроллер AT91SAM7S256»

Модуль содержит в себе микроконтроллер AT91SAM7S256, некоторые из портов ввода-вывода которого доступны на лицевой панели. Модуль включает в себя внутрисхемный отладчик/программатор, который позволяет программировать и отлаживать целевой микроконтроллер через интерфейс JTAG. Модуль соединяется с ПК через интерфейс USB. Модуль имеет кнопку сброса целевого микроконтроллера, и светодиоды состояния отладчика. Также на задней панели расположен USB-разъем, соединенный с аппаратным интерфейсом микроконтроллера, что дает возможность изучать интерфейс USB. Программирование может осуществляться в средах Atollic TrueStudio и Eclipse.


Характеристики микроконтроллера:

  • Ядро процессора ARM7TDMI® ARM® Thumb®;
  • Внутренняя высокоскоростная флэш-память размером 256 кбайт и организацией 1024 страниц по 256 байт в каждой;
  • 64 кбайт внутреннего высокоскоростного СОЗУ, однотактный доступ при максимальном быстродействии;
  • Контроллер памяти (MC);
  • Контроллер сброса (RSTC);
  • Контроллер управления энергопотреблением (PMC);
  • Усовершенствованный контроллер прерываний (AIC);
  • Интервальный таймер (PIT);
  • Сторожевой таймер (WDT);
  • Таймер реального времени (RTT);
  • Один контроллер параллельного ввода/вывода (PIOA);
  • 11 канальный контроллер периферийных данных (PDC);
  • Один полноскоростной контроллер USB 2.0 (12 Мбит/сек), режим устройства;
  • Два универсальных синхронно-асинхронных приемопередатчиков (УСАПП);
  • Последовательный периферийный интерфейс SPI с режимами ведущий/подчиненный;
  • Один трехканальный 16-разр. таймер-счетчик (TC);
  • Один четырехканальный 16-разр. ШИМ-контроллер (PWMC);
  • Один двухпроводной интерфейс (TWI);

Питание и обмен данными осуществляется через интерфейс USB (напряжение питания не менее 5 вольт, потребляемый ток не более 450 мА).

Учебно-методическая часть

Стенд характеризует также и хорошо продуманная методическая часть. Предполагается использование стенда для проведения лабораторных работ по дисциплинам «Микропроцессорные системы», «Архитектура ЭВМ» и «Встраиваемые системы». Лабораторные работы заключаются в сборке устройства на базе какого-либо микроконтроллера, написании программы (на языке С, С++, а также ассемблер), её отладке и проверки работы готового устройства. Таким образом, проведение лабораторных работ позволяет не только изучить микроконтроллеры, но и повысить уровень алгоритмического мышления и уровень программирования в целом. Также рассматриваются некоторые распространенные интерфейсы периферийных устройств, такие как 1-wire, I2C и SPI.

Лабораторный практикум

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

  1. Знакомство со стендом, изучение программного и аппаратного обеспечения модуля периферийных устройств.
  2. Изучение способов управления портами ввода-вывода. Написание программы «бегущий огонь» на светодиодах, подключение кнопочных переключателей к микроконтроллеру.
  3. Матричная клавиатура. Способы опроса, подавление дребезга контактов. Написание программы, считывающей нажатую клавишу и отображающей код клавиши на светодиодах.
  4. Динамическая индикация. Режимы работы, способы программной генерации таких режимов. Написание программы-счетчика входных импульсов с отображением на семисегментном индикаторе.
  5. ЖКИ-дисплей. Инициализация, работа в различных режимах. Написание программы вывода на дисплей пользовательской информации.
  6. ЖКИ-дисплей. Задание пользовательских символов. Написание программы рисования графических изображений на индикаторе при помощи определенных пользователем символов.
  7. Изучение универсального синхронно-асинхронного приемопередатчика (USART). Задание режимов обмена, скорости обмена, прерывания по приему и передаче. Программа, отображающая принятые символы на ЖКИ-индикаторе.
  8. Цифро-аналоговое преобразование. Режимы R2R, ШИМ, ШИМ с обратной связью по АЦП. Использование фильтров нижних частот в режиме ШИМ. Написание программы генерации синусоидального сигнала.
  9. Генерация звука микроконтроллером. Режимы программной генерации, ШИМ. Режимы работы пьезоизлучателя. Написание программы – музыкальной шкатулки.
  10. Интерфейс I2C. Адресация, доступ, режимы обмена. Режимы программной и аппаратной реализации I2C интерфейса. Написание программы, обеспечивающей формирование необходимых интерфейсу последовательностей.
  11. Интерфейс I2C. Микросхема часов реального времени DS1307. Режимы работы, установка даты и времени, считывание. Написание программы, считывающей текущее время и выводящей на ЖКИ-дисплей.
  12. Интерфейс I2C. Микросхема EEPROM 24LC64. Чтение, запись, адресация блоков. Написание программы – «энергонезависимого хранилища», обеспечивающей прием по UART массива данных, запись этого массива в EEPROM, а по запросу с компьютера выдающей их обратно.
  13. Интерфейс SPI. Адресация, режимы обмена, программная и аппаратная реализация. Написание программы, обеспечивающей формирование необходимых интерфейсу последовательностей.
  14. Интерфейс SPI. Микросхема Data Flash AT45DB161. Режимы работы, стирание, запись, использование внутренних буферов ввода-вывода. Написание программы, хранящей в памяти микросхеме RAW звуковой файл, а при нажатии кнопки воспроизводящей его с использованием ЦАП на основе ШИМ.
  15. Интерфейс 1-wire. Адресация, режимы обмена, режимы питания, реализация. Границы временных интервалов, требуемая точность их соблюдения. Написание программы, обеспечивающей формирование необходимых интерфейсу последовательностей.
  16. Интерфейс 1-wire. Микросхема температурного датчика DS18B20. Режимы измерения температуры, зависимость точности преобразования от времени преобразования. Написание программы, считывающей текущую температуру и отображающей ее на семисегментных индикаторах.

Отдельно следует отметить, что данный стенд совместим с другими стендами нашей компании: «Сети сотовой связи GSM», «Сенсорные сети ZigBee», «Системы спутниковой навигации GPS/ГЛОНАСС», «Интерфейсы периферийных устройств» и «Программируемые логические интегральные схемы». Это означает, что если в лаборатории установлены эти стенды, у обучаемых появляется возможность комбинировать модули из разных стендов, создавая разнообразные сложные системы. В качестве примеров таких систем можно привести, GPS-трекер, систему сбора данных с удаленных датчиков по беспроводным интерфейсам, систему «умный дом» и многое другое. Таким образом, появляется база для курсового и дипломного проектирования студентам технических специальностей.