Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Семейство микроконтроллеров STM32
Семейство микроконтроллеров STM32 построено с использованием 32-рязрядного ядра Cortex различных версий (в микроконтроллере, установленном на плате используется ядро Cortex-M4). Некоторые основные характеристики ядра микроконтроллеров STM32 представлены в табл. 1.1.
Таблица 1.1. Основные характеристики ядра микроконтроллеров STM32
Микроконтроллеры данного типа построены на гарвардской архитектуре и имеют 3-ступенчатый конвейер, который минимизирует время выполнения команд. Они разработаны для построения систем с максимальной энергоэффективностью и имеют несколько режимов управления энергопотреблением. В них используются внутренние интерфейсы памяти шириной больше, чем средняя длина инструкции. Это минимизирует число доступов к шине памяти, а, следовательно, и потребление электроэнергии, связанное с операциями по шине и чтением энергонезависимой памяти. Технология непрерывной обработки прерываний с исключением внутренних операций над стеком (tail chaining) сокращает время реакции на прерывания и исключает лишние операции со стеком.
На рис. 1.2 представлено упрощенное представление цифрового периферийного устройства. Периферийный узел может быть разделен на два главных блока. Первый блок – это ядро, которое
содержит конечные автоматы, счетчики и любой вид комбинаторной или последовательной логики. Оно предназначено для выполнения задач, не требующих участия процессора, таких как простые задачи передачи данных, управления аналоговыми входами или выполнения функций, привязанных к синхросигналам. Ядро периферийного узла связывается с внешним миром через порты ввода/вывода МК. Внешние соединения могут состоять из нескольких сигналов или сложных шин. Второй блок – настройка и управление периферией, которые осуществляются приложением через регистры, соединенные с внутренней шиной, разделяемой с другими ресурсами МК.
Рис. 23. Представление цифрового периферийного устройства
Плата STM32F4 Discovery оснащена:
- микроконтроллером STM32F407VGT6 с ядром Cortex-M4F тактовой частотой 168 МГц, 1 Мб Flash-памяти, 192 кб RAM в корпусе LQFP100;
- отладчиком ST-Link/V2 для отладки и программирования МК; - питанием платы через USB или от внешнего источника питания 5 В; - датчиком движения ST MEMS LIS302DL и выходами цифрового акселерометра по трем осям; - датчиком звука ST MEMS MP45DT02;
- звуковым ЦАП CS43L22; - восемью светодиодами: LD1 (красный/зеленый) для USB-подключения, LD2 (красный) для
питания 3.3 В, четыре пользовательские светодиода: LD3 (оранжевый), LD4 (зеленый), LD5 (красный), LD6 (синий) и два светодиода для USB On-The-Go – LD7 (зеленый) и LD8 (красный)$
- двумя кнопками (для программирования пользователем и для перезапуска).
Лекция 3,4. Многофункциональные УВВ (устройство ввода – вывода). В данном разделе будет представлена общая информация об устройствах ввода-вывода (УВВ), которые доступны пользователю в различных версиях микроконтроллеров STM32. Для удобства УВВ разделяются на две группы: микроконтроллерные УВВ общего назначения и коммуникационные УВВ. Все УВВ микроконтроллеров STM32 отличаются высокой степенью сложности и очень плотно связаны с блоком ПДП. Каждое УВВ обладает избыточными схемными блоками, которые позволяют минимизировать участие ЦПУ в выполнении каждым конкретным УВВ задач. На первый взгляд набор встроенных УВВ, в т. ч. два АЦП, таймеры общего назначения, I2C, SPI, CAN, USB и часы реального времени (ЧРВ), кажется идентичным самым простым микроконтроллерам. Но если детально рассмотреть каждое из этих УВВ, то выяснится, что они гораздо более сложные. Например, 12-битный АЦП оборудован датчиком температуры и поддерживает несколько режимов преобразования, а МК с двумя АЦП могут использовать их совместно еще в девяти режимах преобразования. По аналогии с этим, каждый из четырех таймеров, оснащенных блоками захвата и сравнения, могут использоваться как отдельно, так и совместно, образую более сложные массивы таймеров. У расширенного таймера (advanced timer) добавлена поддержка управления электродвигателями. Для этого у него предусмотрено 6 комплементарных ШИМ-выходов с программируемой паузой не перекрытия и вход экстренного останова, который переводит ШИМ-выходы в предварительно запрограммированное безопасное состояние. У интерфейса SPI предусмотрен аппаратный генератор CRC для 8 и 16 слов, что упрощает реализацию интерфейса карт Flash памяти SD и MMC.
В отличие от простых микроконтроллеров, у STM32 также предусмотрен 7-канальный блок прямого доступа к памяти (ПДП). Каждый канал может использоваться для передачи данных между регистрами любого из УВВ и запоминающими устройствами 8/16 или 32-битными словами. Каждое из УВВ может выполнять роль потокового контроллера ПДП, при необходимости отправляя данные или посылая запрос на их получение. Арбитр внутренней шины и матрица шин минимизируют потребность в арбитраже доступа к шинам со стороны ЦПУ и каналов ПДП. Это означает, что блок ПДП является универсальным, простым в применении и реально автоматизирует передачу потоков данных внутри микроконтроллера. Микроконтроллеры STM32 отличаются, казалось бы, невозможным сочетанием характеристик малого энергопотребления и высокой производительности. Они способны работать от 2В-ого источника питания на тактовой частоте 72МГц и потреблять, при этом, ток, с учетом нахождения в активном состоянии всех встроенных ресурсов, всего лишь 36 мА. Если же использовать поддерживаемые ядром Cortex экономичные режимы работы, то потребляемый ток можно снизить до ничтожных 2 мкА в режиме STANDBY. Для быстроты возобновления активной работы микроконтроллера используется внутренний RC-генератор на частоту 8 МГц. Его активность сохраняется на время запуска внешнего генератора. Благодаря быстроте перехода в экономичный режим работы и выхода из них результирующая средняя потребляемая мощность еще больше снижается. УВВ общего назначения микроконтроллеров STM32 состоят из портов ввода-вывода (ПВВ) общего назначения, контроллера внешних прерываний, аналогово-цифровых преобразователей, таймеров общего назначения, расширенного таймера и часов реального времени с энергонезависимыми (за счет резервирования питания) регистрами и входом обнаружения вмешательства. У МК STM32 предусмотрено до 80 двунаправленных линий ввода-вывода. Все линии ввода-вывода разделены на 5 портов по 16 линий ввода-вывода в каждой.
После завершения настройки портов, конфигурационные параметры можно защитить. Для этого необходимо выполнить запись в регистр блокировки конфигурации. В этом регистре для каждого вывода предусмотрен бит блокировки. После его установки блокируется возможность записи в соответствующие поля конфигурации и режима. После установки всех требуемых бит блокировки, необходимо в бит 16 регистра блокировки записать последовательность 1, 0, 1. Этим будет активизирована блокировка. Убедиться в активизации блокировки можно, если сразу после записи выполнить подряд два считывания этого же бита. Считывание значений 0, 1 свидетельствует об успешной активации блокировки. Доступ к линиям ввода-вывода осуществляется через регистры ввода и вывода данных. Для выполнения действий над отдельными битами можно использовать либо поддерживаемый ядром Cortex способ "bit banding" применительно к регистрам ввода и вывода, либо воспользоваться двумя специальными регистрами битовой обработки. Регистр установки/сброса бит - 32-битный регистр. Верхние 16 бит связаны с каждой из линий ПВВ. Запись в них логической 1 приводит к сбросу соответствующей линии ввода-вывода. Идентично этому, запись логической 1 в любой из младших 16 бит приведет к установке соответствующей линии ввода-вывода. Второй регистр битовой обработки - регистр сброса бит. Этот регистр 16-битный. Запись в его биты логических 1 приводит к сбросу соответствующих линий ввода-вывода. Сочетание регистров ПВВ, способа "bit banding" и регистров битовой обработки предоставляют пользователю отличные возможности управления всеми линиями ввода-вывода МК STM32 и могут чрезвычайно эффективно использоваться в применениях с интенсивным использованием линий ввода-вывода.
Безопасность. Многие современные применения, помимо высокой производительности и многофункциональных УВВ, должны обладать инструментами, обеспечивающие безопасность. Данное требование было учтено у МК STM32. В них интегрирован ряд аппаратных блоков, отвечающих за безопасность работы микроконтроллера, в т.ч. маломощный супервизор питания, система защиты синхронизации и два отдельных сторожевых таймера. Первый сторожевой таймер относится к оконному типу (windowed watchdog). Его необходимо обновлять только в пределах отведенных временных рамок. Если это сделать слишком рано или слишком поздно, то он сгенерирует сигнал срабатывания. Другой сторожевой таймер полностью независим от первого. Он синхронизируется от отдельного внутреннего генератора, который не связан с главной системной синхронизацией. У МК также используется система защиты синхронизации, которая может выявлять перебои в работе основного внешнего генератора и безопасно переключаться на работу от внутреннего RC-генератора частоты 8 МГц.
Альтернативные функции Регистры альтернативных функций управляют переключением линии ввода-вывода между ПВВ и одним из встроенных УВВ. Чтобы схемотехническое проектирование было более гибким, линии ввода-вывода УВВ могут быть связаны с одним из нескольких выводов МК.
Опоздавшее высокоприоритетное прерывание отложит выполнение низкоприоритетного прерывания, не выполняя при этом каких-либо дополнительных операций над стеком Альтернативные функции у МК STM32 управляются через регистр переназначения
и отладки. Каждое из цифровых УВВ (УСАПП, CAN, таймеры, I2C и SPI) имеет одно- или двухбитное поле, которое позволяет назначить работу с различной комбинацией выводов. После выбора альтернативных функций выводов, необходимо в конфигурационных регистрах ПВВ переключить назначение вывода с линии ввода-вывода на альтернативную функцию. Регистр переназначения также управляет конфигурацией выводов отладочного JTAG-порта. Сразу после сброса, порт JTAG активизируется с отключенной функцией трассировки данных. JTAG можно переключить в режим двухпроводного отладочного интерфейса, а неиспользуемые выводы использовать в качестве линий ввода-вывода общего назначения. АЦП В зависимости от модели, в микроконтроллеры STM32 может быть встроено один или два аналогово-цифровых преобразователя. АЦП питаются отдельным напряжением, которое в зависимости типа корпуса может находиться в пределах 2.4┘3.6В. Источник опорного напряжения (ИОН) АЦП соединен либо внутренне с напряжением питания АЦП, либо со специальными внешними выводами. АЦП характеризуется 12-битной разрешающей способностью и частотой преобразования 1МГц. У него имеется до 18 мультиплексированных каналов, 16 из которых можно использовать для измерения внешних сигналов. Оставшиеся два канала связаны со встроенным датчиком температуры и внутренним ИОН.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2019-12-14; просмотров: 280; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 35.172.231.232 (0.026 с.) |