СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Микроконтроллерная платформа stm32

Категория: Информатика

Нажмите, чтобы узнать подробности

МИКРОКОНТРОЛЛЕРНАЯ ПЛАТФОРМА STM32

Просмотр содержимого документа
«Микроконтроллерная платформа stm32»

МИКРОКОНТРОЛЛЕРНАЯ  ПЛАТФОРМА STM32   Срывкин В.А.

МИКРОКОНТРОЛЛЕРНАЯ ПЛАТФОРМА STM32

Срывкин В.А.

32- БИТНЫЕ МИКРОКОНТРОЛЛЕРЫ STM  Современный уровень развития технологии обеспечил возможность создания микроконтроллеров с 32- битной архитектурой, цена которых сопоставима с 8-битными микроконтроллерами. 32-х битное ядро для реализации требует несколько десятков тысяч транзисторов, в то время как 256Кб Flash-памяти — это 2 млн транзисторов . Соответственно, основное место площади современного контроллера занимает память, порты ввода/вывода и периферийные модули.

32- БИТНЫЕ МИКРОКОНТРОЛЛЕРЫ STM

Современный уровень развития технологии обеспечил возможность

создания микроконтроллеров с 32- битной архитектурой, цена которых сопоставима с 8-битными микроконтроллерами.

32-х битное ядро для реализации требует несколько десятков тысяч транзисторов, в то время как 256Кб Flash-памяти — это 2 млн транзисторов . Соответственно, основное место площади современного контроллера занимает память, порты ввода/вывода и периферийные модули.

32- БИТНЫЕ МИКРОКОНТРОЛЛЕРЫ STM  Компания ST разрабатывала 32 - битные  микроконтроллеры на основе ядер ARM7 и ARM 9. Новое поколение  32- битных микроконтроллеров компании ST использует ядро CORTEX M3 Микроконтроллеры STM32 изначально выпускались в 14 различных вариантах, разделенные на две группы: Performance Line, в которую вошли микроконтроллеры с тактовой частотой ЦПУ до 72 МГц, и Access Line (тактовая частота до 36 МГц). 

32- БИТНЫЕ МИКРОКОНТРОЛЛЕРЫ STM

Компания ST разрабатывала 32 - битные микроконтроллеры на основе ядер ARM7 и ARM 9.

Новое поколение 32- битных микроконтроллеров компании ST использует ядро CORTEX M3

Микроконтроллеры STM32 изначально выпускались в 14 различных вариантах, разделенные на две группы: Performance Line, в которую вошли микроконтроллеры с тактовой частотой ЦПУ до 72 МГц, и Access Line (тактовая частота до 36 МГц). 

  Архитектура микроконтроллеров STM 32 Микроконтроллеры семейства STM32 выполнены на основе  ядра Cortex- M 3, которое подключено к Flash памяти по шине инструкций I-bus .   Шина данных D-bus и системная шина System Cortex подключены к матрице высокоскоростных шин AHB.   Внутреннее статическое ОЗУ подключено напрямую к матрице шин AHB, с которой также связан блок прямого доступа к памяти (ПДП).  

  Архитектура микроконтроллеров STM 32

Микроконтроллеры семейства STM32 выполнены на основе ядра

Cortex- M 3, которое подключено к Flash памяти по шине инструкций I-bus .

Шина данных D-bus и системная шина System Cortex подключены к матрице высокоскоростных шин AHB.

Внутреннее статическое ОЗУ подключено напрямую к матрице шин AHB,

с которой также связан блок прямого доступа к памяти (ПДП).

 

Энергопотребление  Микроконтроллеры работают от 2В-ого источника питания на тактовой частоте 72МГц и потребляют с учетом нахождения в активном состоянии всех встроенных ресурсов, всего лишь 36 мА. Если же использовать поддерживаемые ядром Cortex экономичные режимы работы, то потребляемый ток можно снизить до 2 мкА в режиме STANDBY. Для быстроты возобновления активной работы микроконтроллера используется внутренний RC-генератор на частоту 8 МГц. Его активность сохраняется на время запуска внешнего генератора. Благодаря быстроте перехода в экономичный режим работы и выхода из них результирующая средняя потребляемая мощность еще больше снижается.

Энергопотребление

Микроконтроллеры работают от 2В-ого источника питания на тактовой частоте 72МГц и потребляют с учетом нахождения в активном состоянии всех встроенных ресурсов, всего лишь 36 мА.

Если же использовать поддерживаемые ядром Cortex экономичные режимы работы, то потребляемый ток можно снизить до 2 мкА в режиме STANDBY.

Для быстроты возобновления активной работы микроконтроллера используется внутренний RC-генератор на частоту 8 МГц. Его активность сохраняется на время запуска внешнего генератора. Благодаря быстроте перехода в экономичный режим работы и выхода из них результирующая средняя потребляемая мощность еще больше снижается.

СТРУКТУРА ПЛАТФОРМЫ STM32  В настоящее время платформа состоит, по крайней мере,  из 10 линеек микроконтроллеров :

СТРУКТУРА ПЛАТФОРМЫ STM32

В настоящее время платформа состоит, по крайней мере,

из 10 линеек микроконтроллеров :

АРХИТЕКТУРА   Контроллер вложенных прерываний ( NVIC)  Контроллер поддерживает до 240 прерываний и до 256 уровней приоритета,   Вход в обработчик прерывания занимает 12 тактов (сохранение стекового фрейма и регистров) и  Прерывания могут быть вложенными: если во время обработки прерывания возникает прерывание с меньшим приоритетом, то второе будет обработано через 6 тактов после обработки первого.   Кроме того, существуют немаскируемые прерывания — NMI ( N on- M asked  I nterrupts), которые невозможно сбросить, не обработав, и которые прерывают выполнение программы независимо от каких-либо условий. Такие прерывания генерируются при сбое внешнего источника тактирования (кварца, керамического резонатора) и при обнаружении некорректной инструкции.

АРХИТЕКТУРА

Контроллер вложенных прерываний ( NVIC)

  • Контроллер поддерживает до 240 прерываний и до 256 уровней приоритета,
  • Вход в обработчик прерывания занимает 12 тактов (сохранение стекового фрейма и регистров) и
  • Прерывания могут быть вложенными: если во время обработки прерывания возникает прерывание с меньшим приоритетом, то второе будет обработано через 6 тактов после обработки первого.
  • Кроме того, существуют немаскируемые прерывания — NMI ( N on- M asked  I nterrupts), которые невозможно сбросить, не обработав, и которые прерывают выполнение программы независимо от каких-либо условий. Такие прерывания генерируются при сбое внешнего источника тактирования (кварца, керамического резонатора) и при обнаружении некорректной инструкции.
Шинная матрица ( Bus matrix) Шинная матрица — это развитие идеи простого контроллера шины: здесь шины соединены так, что устройства могут взаимодействовать напрямую, не через ядро. Также она управляет доступом к не-выровненным данным (адреса которых не кратны 4, как принято в 32-битных архитектурах) и атомарным доступом к отдельным битам в специально выделенном диапазоне (технология bit-banding) AHB — это относительно новая спецификация для более производительных шин, так что шины этого типа используют, в основном, для связи высокоскоростных внутренних компонентов, а APB, как более медленную — для периферии типа GPIO, UART  

Шинная матрица ( Bus matrix)

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

Также она управляет доступом к не-выровненным данным (адреса которых не кратны 4, как принято в 32-битных архитектурах) и атомарным доступом к отдельным битам в специально выделенном диапазоне (технология bit-banding)

AHB — это относительно новая спецификация для более производительных шин, так что шины этого типа используют, в основном, для связи высокоскоростных внутренних компонентов, а APB, как более медленную — для периферии типа GPIO, UART  

Ядро CORTEX- M 3  Гарвардская архитектура и трёхступенчатому конвейер.   Ядро Cortex-M3 поддерживает набор инструкций Thumb-2, который содержит как 32-битные, так и 16-битные инструкции для сокращения объёма кода за счёт менее дальнобойных переходов;  Имеет 13 регистров общего назначения, снижая потребность в частом доступе к памяти.

Ядро CORTEX- M 3

  • Гарвардская архитектура и трёхступенчатому конвейер.
  • Ядро Cortex-M3 поддерживает набор инструкций Thumb-2, который содержит как 32-битные, так и 16-битные инструкции для сокращения объёма кода за счёт менее дальнобойных переходов;
  • Имеет 13 регистров общего назначения, снижая потребность в частом доступе к памяти.
ARM Cortex – M3  Cortex – полнофункциональный процессор, включающий в себя ядро и системную периферию Ядро Cortex – M3 Гарвардская архитектура  3х уровневый конвейер с модулем прогнозирования ветвлений  Поддержка Thumb и Thumb – 2 АЛУ с аппаратным делением(2 – 7 тактов) и умножением за 1 такт Cortex – M3 процессор Ядро Cortex – M3. Конфигурируемый контроллер вложенных прерываний Матрица шин Дополнительные компоненты отладки

ARM Cortex – M3 Cortex – полнофункциональный процессор, включающий в себя ядро и системную периферию

Ядро Cortex – M3

Гарвардская архитектура

3х уровневый конвейер с модулем прогнозирования ветвлений

Поддержка Thumb и Thumb – 2

АЛУ с аппаратным делением(2 – 7 тактов) и умножением за 1 такт

Cortex – M3 процессор

Ядро Cortex – M3.

Конфигурируемый контроллер вложенных прерываний Матрица шин

Дополнительные компоненты отладки

 Архитектурой Cortex-M3 предусмотрены 4 шины, подключенных к матрице: ICode, для выборки инструкций и векторов прерываний -для пользовательского кода. 32-битная шина AHB-Lite типа.  DCode, для выборки/записи данных и отладочного доступа — для пользовательского кода. 32-битная шина AHB-Lite типа.  System, для выборки инструкций и векторов прерываний, а также выборки/записи данных и отладочного доступа в системном пространстве — для внутренних компонентов МК. 32-битная шина AHB-типа.  PPB ( P rivate  P eripheral  B us), для выборки/записи данных и отладочного доступа — для периферии. 32-битная шина APB-типа.

Архитектурой Cortex-M3 предусмотрены 4 шины, подключенных к матрице:

  • ICode, для выборки инструкций и векторов прерываний -для пользовательского кода. 32-битная шина AHB-Lite типа.
  • DCode, для выборки/записи данных и отладочного доступа — для пользовательского кода. 32-битная шина AHB-Lite типа.
  • System, для выборки инструкций и векторов прерываний, а также выборки/записи данных и отладочного доступа в системном пространстве — для внутренних компонентов МК. 32-битная шина AHB-типа.
  • PPB ( P rivate  P eripheral  B us), для выборки/записи данных и отладочного доступа — для периферии. 32-битная шина APB-типа.
СИСТЕМНОЕ ПРОГРАММИРОВАНИЕ БИБЛИОТЕКА ПОДДЕРЖКИ ЯДРА Ядро ARM Cortex-M3 выходит за рамки обычного понятия ядра микроконтроллера и представляет собой мини-микроконтроллер с периферией - встроенные системный таймер, контроллер прерываний и т.д.  Стандартная библиотека поддержки ядра - CMSIS разработана  компанией ARM . CMSIS предоставляет собой файлы определения констант и определения символьных имен, библиотеку функций доступа к регистрам и периферийным модулям ядра и интерфейса пользовательского ПО для операционных систем реального времени (RTOS). .

СИСТЕМНОЕ ПРОГРАММИРОВАНИЕ

БИБЛИОТЕКА ПОДДЕРЖКИ ЯДРА

  • Ядро ARM Cortex-M3 выходит за рамки обычного понятия ядра микроконтроллера и представляет собой мини-микроконтроллер с периферией - встроенные системный таймер, контроллер прерываний и т.д.

Стандартная библиотека поддержки ядра - CMSIS разработана

компанией ARM .

CMSIS предоставляет собой файлы определения констант и определения символьных имен, библиотеку функций доступа к регистрам и периферийным модулям ядра и интерфейса пользовательского ПО для операционных систем реального времени (RTOS).

.

СТРУКТУРА CMSIS   CMSIS состоит из трех файлов: core_m3.h - вспомогательные функции доступа к регистрам ядра;  startup_stm32f10x_xx.s- набор файлов для каждой линейки семейства  STM32 , обеспечивающие инициализацию стека и таблицу векторов прерываний;  system_stm32f10x.h- файл начальной инициализации тактовой частоты микроконтроллера

СТРУКТУРА CMSIS

CMSIS состоит из трех файлов:

  • core_m3.h - вспомогательные функции доступа к регистрам ядра;
  • startup_stm32f10x_xx.s- набор файлов для каждой линейки семейства  STM32 , обеспечивающие инициализацию стека и таблицу векторов прерываний;
  • system_stm32f10x.h- файл начальной инициализации тактовой частоты микроконтроллера
СТАНДАРТНАЯ БИБЛИОТЕКА STM32 Стандартная библиотека для работы с периферийными модулями написана в соответствии со стандартом ANSI C и может использоваться  с любым стандартизованным компилятором. Библиотека состоит из двух взаимодополняющих составляющих :  - заголовочных файлов и файлов реализации всей периферии микроконтроллеровSTM32 - STM32F10x_StdPeriph_Driver ;  - заголовочных файлов и файлов реализации ядра ARM Cortex-M3.

СТАНДАРТНАЯ БИБЛИОТЕКА STM32

Стандартная библиотека для работы с периферийными модулями написана в соответствии со стандартом ANSI C и может использоваться

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

Библиотека состоит из двух взаимодополняющих составляющих :

- заголовочных файлов и файлов реализации всей периферии микроконтроллеровSTM32 - STM32F10x_StdPeriph_Driver ;

- заголовочных файлов и файлов реализации ядра ARM Cortex-M3.

ОСВОЕНИЕ ПЛАТФОРМЫ Отладочная плата STM32VLDiscovery   Отладочная плата STM32VLDiscovery  предназначена для освоения платформы Плата реализована на микроконтроллере линейки «Value Line» STM32F100RBT6. Имеет программатор-отладчик ST-Link с выведенным разъемом SWD. Свободные ножки микроконтроллера выведены на внешние разъемы.

ОСВОЕНИЕ ПЛАТФОРМЫ

Отладочная плата STM32VLDiscovery  

Отладочная плата STM32VLDiscovery  предназначена для освоения платформы

Плата реализована на микроконтроллере линейки «Value Line» STM32F100RBT6.

Имеет программатор-отладчик ST-Link с выведенным разъемом SWD.

Свободные ножки микроконтроллера выведены на внешние разъемы.

STM32W – области применения  Устройства управления зданиями  Интеллектуальные энергосистемы  Беспроводные датчики для ZigBee Pro  Охранные системы и системы сигнализации  Изделия в стандарте RF4CE  Реализация протокола 6LoWPAN  Системы домашней автоматики и управления  Потребительская электроника

STM32W – области применения

Устройства управления зданиями

Интеллектуальные энергосистемы

Беспроводные датчики для ZigBee Pro

Охранные системы и системы сигнализации

Изделия в стандарте RF4CE

Реализация протокола 6LoWPAN

Системы домашней автоматики и управления

Потребительская электроника

Заключение  Передовой 32 – разрядный МК ARM Cortex – M3  Прекрасные характеристики энергопотребления  Первоклассная периферия  Максимальная интеграция  Широкая линейка совместимых продуктов  Простая архитектура  Широчайший диапазон применения

Заключение

Передовой 32 – разрядный МК ARM Cortex – M3

Прекрасные характеристики энергопотребления

Первоклассная периферия

Максимальная интеграция

Широкая линейка совместимых продуктов

Простая архитектура

Широчайший диапазон применения