Микроконтроллер - микросхема, предназначенная для управления различными электронными устройствами.
Отличается от микропроцессора тем, что объединяет на одном кристалле (в одном корпусе) процессор, память (ОЗУ и/или ПЗУ) и периферийные устройства (порты ввода/вывода, таймеры/счетчики, аналого-цифровые и цифроаналоговые преобразователи, широтно-импульсные модуляторы и другие).
ЦИФРОВАЯ И МИКРОПРОЦЕССОРНАЯ ТЕХНИКА В УПРАВЛЕНИИ
По существу представляет собой однокристальную микро-ЭВМ (сейчас термин «однокристальная микро-ЭВМ» практически не используется), рассчитанную для решения задач управления.
Термин контроллер (controller) используется в технике для обозначения управляющих устройств.
Работой микроконтроллера управляет программа — последовательность команд, заранее загруженная в память.
CORTEX
Семейство процессоров ARM
Различные изменяющиеся данные, используемые программой во время ее выполнения, хранятся в оперативной памяти (RAM), она же память данных (ОЗУ). Эта память не является энергонезависимой. Данные в ней сохраняются только при включенном питании микроконтроллера.
Для хранения постоянных данных (редко изменяющихся) используется память EEPROM. Эта память энергонезависимая. В некоторых микроконтроллерах (в частности ARM Cortex) она не имеет своего физического носителя. В этом случае она эмулируется программно, а в качестве физического носителя используется flash память.
ROM
RAM
EEPROM
Защита, выполненная на полевых транзисторах, не имеет указанных выше недостатков. Получила наибольшее распространение в различных электронных системах, в том числе и микропроцессорных. По отношению к первому варианту является более дорогостоящей как по элементной базе, так и по разработке.
Защита, выполненная на реле, не имеет недостатков первого варианта. Главным недостатком по отношению к первым двум защитам является ограниченный срок жизни реле (количество циклов замыкания/размыкания). Может оказаться не приемлемой к использованию в слаботочных малогабаритных устройствах.
Если пин сконфигурирован как ввод, то он находится в высокоимпедансном состоянии.
Если пин сконфигурирован как вывод, то он находится в низокоимпедансном состоянии.
Если к входу не подключены внешние цепи (не поступают нужные сигналы), то он окажется в неопределенном состоянии и будет воспринимать случайные значения (электрические помехи). Чтобы исключить это, входу нужно задать определенное состояние – подключить либо к питанию (+5В/3.3В) либо к земле через подтягивающие (pull-up)/стягивающие (pull-down) резисторы (рекомендуется 10 кОм).
Аппаратная реализация:
Подтягивающий резистор
Стягивающий резистор
Подтягивающий резистор удерживает вход в состоянии логической единицы, пока внешняя цепь разомкнута, стягивающий - в состоянии нуля.
Программная реализация:
На некоторых отладочных платформах, например Arduino, для загрузки программ используется дополнительный контроллер Atmega 8U2/16U2, служащий интерфейсом между портом USB и портом USART основного контроллера. Некоторые основные контроллеры имеют встроенный контроллер USB. В качестве программатора можно использовать другую платформу Arduino запрограммированную на работу в режиме программатора.
Если из среды IDE команда не поступила, то запускается последняя загруженная программа, находящаяся в памяти микроконтроллера.
Если из среды IDE команда поступила, то вспомогательный контроллер произведет сброс основного контроллера. После этого среда программирования IDE (находящаяся на компьютере) произведет загрузку программы в основной контроллер через его порт USART.
Таким образом, загрузчик обеспечивает удобство программирования микроконтроллера без использования внешнего программатора. Однако он занимает часть памяти микроконтроллера. Кроме того, начало выполнения программы пользователя будет произведено с некоторой задержкой (время на обработку запроса на программирования, сброс контроллера). Пользователь может удалить загрузчик и использовать только внешний программатор.
Для 32 битных МК используется используется SWD (правый/нижний ряд), а для 8 битных SWIM (левый/верхний ряд).
Зеленая перемычка должна стоять как на рисунке.
На платах микроконтроллеров, как правило, всегда есть ножки BOOT0 и BOOT1. Эти ножки можно замкнуть либо на землю (подключить к нулю), либо подключить к плюсу (подключить к 1) питания МК (3.3В или 5В в зависимости от конкретного МК) с помощью перемычек.
Комбинации перемычек и их установка дается в схемах к МК в «оригинальной» документации.
Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:
Email: Нажмите что бы посмотреть