Разное

Какие бывают микроконтроллеры: О микроконтроллерах / Хабр

Содержание

Программируемые логические контроллеры, их функции и виды

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

ПЛК — что это такое?

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

История создания

В 60 годах 20 века для управления телефонными станциями, промышленным оборудованием использовались сложные схемы с реле. Они не отличались повышенной надежностью или ремонтопригодностью. Инженерам одной из компаний, американской General Motors, была поставлена цель по созданию нового оборудования. Задачи, на которые оно было рассчитано, выглядели так:

  1. Упрощение отладки, замены.
  2. Относительная дешевизна.
  3. Гибкость, удобство модернизации.
  4. Снижение риска отказов.

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

Терминология, объясняющая, что такое ПЛК (PLC), внесена в международные и европейские стандарты качества МЭК, EN.

Структура и устройство ПЛК

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

  • вход;
  • центр;
  • выход.

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

Принцип работы ПЛК

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

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

Для управления ПЛК, его программирования используется бытовой ПК. Несколько отдельных микроконтроллеров образуют каскад с усложненными задачами. Системы «умный дом», автоматика включения двигателя насоса для закачки воды в накопительный бак давно содержат в себе подобные блоки.

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

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

Для простоты восприятия рабочий, шаговый режим ПЛК разбит на типовые циклы. Они повторяются во время функционирования устройства. В каждом цикле, «маршрутной карте» заключаются 3 действия:

Сканирование, обращение к внешним датчикам. Запись значений (состояния) в ячейки памяти.

Анализ действующей программы. Внесение требуемых корректив на основании данных предыдущего шага.

Передача результата вычислений на блоки выхода.

Завершается цикл быстрым переходом к первому этапу «урока».

Типы ПЛК

Все ПЛК, выпускаемые Schneider Electric, Mitsubishi, Beckhoff, Omron, Segnetics или Unitronics, четко разделяются по типам. Это же относится к классификации российской продукции, представленной компаниями «Овен», «Контар», «Текон» и другими. Конструктивно устройства принято обозначать как моноблочные и модульные.

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

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

Главное достоинство такой конструкции — компактность. При этом полностью завершенная конструкция платы, блока контроллера оборудуется дисплеем и устройством ввода-вывода, кнопочной панелью. Типичный пример — «умный» автоматный моноблок, отвечающий за стабилизацию напряжения.

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

Ограничения ПЛК

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

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

Роль каналов обмена данными играют кабельные медные шины, оптоволоконная связь. Успешно используются варианты стандартизированных интерфейсов RS-232, RS-485 (кабель), промышленных Profibus или CAN. Не возбраняется коммутация по беспроводным линиям (Wi-Fi).

Место ПЛК в системе управления

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

До создания миниатюрных интегральных схем рука оператора буквально не успевала переключать режимы на пульте цепи управления. Использование контроллерных блоков «Сегнетикс», «Дельта» и подобных способствовало снятию нагрузки с человека.

Ее переложили «на плечи» машин с выводом на экран данных мониторинга, отображенных в виде мнемосхем и изменяемых параметров. На ПЛК возлагаются задачи по опросу датчиков и регистров, обработке поступающей информации.

Без микроконтроллеров не было бы РСУ, АСУ, сложных автоматных комплексов управления технологическими процессорами. Используя сетевой трафик, ПЛК анализируют данные, успевая проверять состояние портов входа. Главный недостаток, особенность микроконтроллеров состоит в необходимости прошивки, создания программы для работы.

Впрочем, его следует воспринимать двояко: индивидуально создаваемое ПО позволяет проектировать узкоспециализированные изделия под конкретные задачи.

Назначение переменных в ПЛК

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

Подобная ситуация возникает при отключении электроэнергии. Зафиксированная переменная позволяет пропустить обмен сигналами, ускорить инициализацию ПЛК.

Основы программирования ПЛК. Реле и контроллер‌‌

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

На профессиональном языке такой метод обозначается аббревиатурой LD (logo LAD). В дальнейшем работа ПЛК представляется как взаимодействие отдельных логических элементов. Они выполняют действия таймеров, релейных ячеек, счетчиков. Считается, что благодаря подобной унификации, освоить принципы программирования может каждый. Причем независимо от профильной профессии.

Среда программирования

Программисты предпочитают использовать для создания прикладных комплексов среду Си, Кодесис, как наиболее универсальную. Применение регламентируется стандартом IEC 61131. На базе Codesys пишутся языки программирования для ПЛК: LD, SFC, FBD, IL, STL.

Языки программирования ПЛК

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

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

Удаленное управление и мониторинг

Различные интерфейсы управления встраиваются в контролеры уже на стадии проектирования. Предусмотрена синхронизация с АСУ (SCADA и подобные). Оператор контактирует с ПЛК посредством интегрированной панели, устройства ввода-вывода, либо удаленно. Для этого по помехозащищенному каналу, кабельной сети к блоку подключается HMI, специализированный интерфейс взаимодействия между человеком и машиной.

Каким из доступных способов выполнить реализацию, с помощью простейшего клавиатурного модуля или сенсорной панели — решать заказчику. В последнее время активно используются «облачные» хранилища, виртуальные серверы. Не остаются в стороне и стандартные, Intranet (локальные) и Internet (внешние) подключения.

Реализация веб-интерфейса допускается также и без проводов, в сети Wi-Fi. Описанные методы невероятно расширяют возможности оператора. Упрощают контроль работающего комплекса ПЛК.

Применение контроллеров

Современный ПЛК, недорогой и надежный, находит применение в ПИД-регуляторах, счетчиках типа «Меркурий», промышленных устройствах серии DVP. Компактность блоков позволяет встраивать их в бытовую технику, монтировать в щитах и шкафах совместно с прочим электрооборудованием.

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

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

Производители ПЛК

На рынке представлены компании из России, США, ФРГ, Японии. Это Texas Instruments, Carel, Delta Electronics, Schneider Electric, Mitsubishi, Beckhoff, Omron, Segnetics, Unitronics. Отечественную продукцию представляют марки «Овен», «Контар», «Текон».

Выбор конкретного решения зависит от предъявляемых заказчиком требований, условий работы. А чтобы разобраться, чем ПЛК100, ПЛК110 отличается от ПЛК160, ПЛК323 потребуется обладание квалификацией, возможно — консультации специалистов.

На что обращать внимание при покупке 

До приобретения ПЛК нужно кое-что уточнить. Вот эти факторы:

Универсальность программной среды. Единые языки для всех аппаратных платформ.

Наличие контролеров с распределенным, интегрированным вводом-выводом.

Реализация связи ПЛК со стационарным компьютером.

Специализированное оборудование. Это микросистемы, ориентированные на работу с облачным сервисом (вариант оповещения по мобильной связи, почте).

Открытая архитектура отдельных ПЛК.

Данный перечень создает направление для движения как покупателей, так и производителей. Какой из перечисленных критериев окажется в приоритете, решает заказчик. С дружественным ПО эксплуатация станет удобнее. Так утверждают опытные инженеры-наладчики.

Что же выбрать

ПЛК 110 «Овен» или Simatic s7 производства «Сименс», Modicon m340, Segnetics trim5 четко подчинены встроенной инструкции. Работают по разработанному производителем алгоритму. Программное обеспечение разных марок не всегда совместимо, это учитывается при модернизации (замене) или комплектации технологических цепочек средствами автоматизации.

Кому-то термины step7, ms4, opc, pixel ни о чем не говорят. Разобраться с каталогом, обилием информации помогут специалисты. Расшифровка обозначения микроконтроллера, выбор программы ПЛК для человека неосведомленного станут непосильной задачей. Отличие, оценка, сравнение представленных решений также достаточно сложны, чтобы приступать к ним без подготовки.

Выбрать свой прибор помогут отзывы, обзоры, опыт эксплуатации владельцев контроллеров. Нужный микронтролллер — не обязательно дорогой. Цена определяется выполняемыми функциями, маркой прибора. Описание, настройка параметров приводятся в паспорте устройства.

Там же находится перечень портов ввода-вывода, краткое пособие как подключать изделие. Для отдельных типов может понадобиться преобразователь напряжения, его характеристики производитель обязан указать в руководстве по эксплуатации. А хороший контроллер — тот, который справляется с поставленными задачами.

Какой выбрать микроконтроллер?

Радиоэлектроника, схемы, статьи и программы для радиолюбителей.

  • Схемы
    • Аудио аппаратура
      • Схемы транзисторных УНЧ
      • Схемы интегральных УНЧ
      • Схемы ламповых УНЧ
      • Предусилители
      • Регуляторы тембра и эквалайзеры
      • Коммутация и индикация
      • Эффекты и приставки
      • Акустические системы
    • Спецтехника
      • Радиомикрофоны и жучки
      • Обработка голоса
      • Защита информации
    • Связь и телефония
      • Радиоприёмники
      • Радиопередатчики
      • Радиостанции и трансиверы
      • Аппаратура радиоуправления
      • Антенны
      • Телефония
    • Источники питания
      • Блоки питания и ЗУ
      • Стабилизаторы и преобразователи
      • Защита и бесперебойное питание
    • Автоматика
      • На микроконтроллерах
      • Управление и контроль
      • Схемы роботов
    • Для начинающих
      • Эксперименты
      • Простые схемки
    • Фабричная техника
      • Усилители мощности
      • Предварительные усилители
      • Музыкальные центры
      • Акустические системы
      • Пусковые и зарядные устройства
      • Измерительные приборы
      • Компьютеры и периферия
      • Аппаратура для связи
    • Измерение и индикация
    • Бытовая электроника
    • Автомобилисту
    • Охранные устройства
    • Компьютерная техника
    • Медицинская техника
    • Металлоискатели
    • Оборудование для сварки
    • Узлы радиаппаратуры
    • Разные схемы
  • Статьи
    • Справочная информация
    • Аудиотехника
    • Для начинающих
    • Микроконтроллеры
    • Автоматика и управление

Классификация и выбор микроконтроллеров

 

Все микроконтроллеры можно условно разделить на 3 класса в соответствии с их разрядностью:

  • 8-разрядные
  • 16-разрядные
  • 32-разрядные

8-разрядные микроконтроллеры имеют относительно низкую производительность, которая вполне достаточна для решения широкого круга задач управления различными объектами. Это простые и дешевые микроконтроллеры, ориентированные на использование в относительно несложных устройствах массового выпуска. Основными областями их применения являются бытовая и измерительная техника, промышленная автоматика, автомобильная электроника, теле-, видео- и аудиоаппаратура, средства связи. Для этих микроконтроллеров характерна реализация Гарвардской архитектуры, где используется отдельная память для хранения программ и данных. Внутренняя память программ обычно имеет объем от нескольких единиц до десятков килобайт. Для хранения данных используется регистровый блок, организованный в виде нескольких регистровых банков, или внутреннее ОЗУ. Объем внутренней памяти данных составляет от нескольких десятков байт до нескольких килобайт. Ряд микроконтроллеров этой группы позволяет, в случае необходимости, дополнительно подключать внешнюю память команд и данных, объемом до 64…256 килобайт. Микроконтроллеры этой группы обычно выполняют относительно небольшой набор команд (30-100), использующих наиболее простые способы адресации. Такие микроконтроллеры обеспечивают выполнение большинства команд за один такт машинного времени.

16-разрядные микроконтроллеры во многих случаях являются усовершенствованной модификацией своих 8-разрядных прототипов. Они характеризуются не только увеличенной разрядностью обрабатываемых данных, но и расширенной системой команд и способов адресации, увеличенным набором регистров и объемом адресуемой памяти, а также рядом других дополнительных возможностей. Обычно эти микроконтроллеры позволяют расширить объем памяти программ и данных до нескольких мегабайт путем подключения внешних микросхем памяти. Во многих случаях реализуется их программная совместимость с более младшими 8-разрядными моделями. Основная сфера применения таких микроконтроллеров – сложная промышленная автоматика, телекоммуникационная аппаратура, медицинская и измерительная техника.

32-разрядные микроконтроллеры содержат высокопроизводительный процессор, соответствующий по своим возможностям младшим моделям микропроцессоров общего назначения. В ряде случаев процессор, используемый в этих микроконтроллерах, аналогичен CISC- или RISC-процессорам, которые выпускаются или выпускались ранее в качестве микропроцессоров общего назначения. Например, в 32-разрядных микроконтроллерах компании Intel используется процессор i386, в микроконтроллерах компании Motorola широко применяется процессор 68020, в ряде других микроконтроллеров в качестве процессорного ядра служат RISC-процессоры типа PowerPC. На базе данных процессоров были реализованы различные модели персональных компьютеров. Введение этих процессоров в состав микроконтроллеров позволяет использовать в соответствующих системах управления огромный объем прикладного и системного программного обеспечения, созданный ранее для соответствующих персональных компьютеров. Кроме 32-разрядного процессора на кристалле микроконтроллера размещается внутренняя память команд емкостью до десятков килобайт, память данных емкостью до нескольких килобайт, а также сложно-функциональные периферийные устройства – таймерный процессор, коммуникационный процессор, модуль последовательного обмена и ряд других. Микроконтроллеры работают с внешней памятью объемом до 16 Мбайт и выше. Они находят широкое применение в системах управления сложными объектами промышленной автоматики (двигатели, робототехнические устройства, средства комплексной автоматизации производства), в контрольно-измерительной аппаратуре и телекоммуникационном оборудовании. Во внутренней структуре этих микроконтроллеров реализуется Принстонская или Гарвардская архитектура. Входящие в их состав процессоры могут иметь CISC- или RISC-архитектуру, а некоторые из них содержат несколько исполнительных конвейеров, образующих суперскалярную структуру.

Цифровые сигнальные процессоры (ЦСП, DSP) представляют особый класс специализированных микропроцессоров, ориентированных на цифровую обработку поступающих аналоговых сигналов. Специфической особенностью алгоритмов обработки аналоговых сигналов является необходимость последовательного выполнения ряда команд умножения-сложения с накоплением промежуточного результата в регистре-аккумуляторе. Поэтому архитектура ЦСП ориентирована на реализацию быстрого выполнения операций такого рода. Набор команд этих процессоров содержит специальные команды MAC (Multiplication with Accumlation), реализующие эти операции. Значения поступившего аналогового сигнала может быть представлено в виде числа с фиксированной или с “плавающей” точкой. В соответствии с этим ЦСП делятся на процессоры, обрабатывающие числа с фиксированной или плавающей точкой. Более простые и дешевые ЦСП с фиксированной точкой обычно обрабатывают 16-разрядные операнды, представленные в виде правильной дроби. Однако ограниченная разрядность в ряде случаев не позволяет обеспечить необходимую точность преобразования. Поэтому в ЦСП с фиксированной точкой, выпускаемых компанией Motorola, принято 24-разрядное представление операндов. Наиболее высокая точность обработки обеспечивается в случае представления данных в формате с «плавающей» точкой. В ЦСП, обрабатывающих данные с «плавающей» точкой, обычно используется 32-разрядный формат их представления. Для повышения производительности при выполнении специфических операций обработки сигналов в большинстве ЦПС реализуется Гарвардская архитектура с использованием нескольких шин для передачи адресов, команд и данных. В ряде ЦПС нашли применение также некоторые черты VLIW-архитектуры: совмещение в одной команде нескольких операций, обеспечивающих обработку имеющихся данных и одновременную загрузку в исполнительный конвейер новых данных для последующей обработки.

Выбор микроконтроллера

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

Основные критерии выбора микроконтроллера представлены ниже в порядке значимости.

  • Пригодность для прикладной системы. Может ли она быть сделана на однокристальном микроконтроллере или ее можно реализовать на основе какой-либо специализированной микросхемы.
  • Имеет ли микроконтроллер требуемое число контактов, портов ввода-вывода, поскольку в случае их недостатка он не сможет выполнить работу, а в случае избытка цена будет слишком высокой.
  • Имеет ли микроконтроллер все требуемые периферийные устройства, такие как аналого-цифровой, цифро-аналоговый преобразователи, интерфейсы связи и т.д.
  • Имеет ли микроконтроллер другие периферийные устройства, которые не потребуются в системе (это зачастую увеличивает стоимость микроконтроллера).
  • Обеспечивает ли ядро микроконтроллера необходимую производительность, т. е. вычислительную мощность, позволяющую обрабатывать системные запросы в течение всей жизни системы на выбранном прикладном языке.
  • Выделено ли в бюджете проекта достаточно средств, чтобы позволить себе использовать данный микроконтроллер. Для ответа на этот вопрос, обычно требуются расценки поставщика. Если данный микроконтроллер не приемлем для проекта, все остальные вопросы становятся несущественными, и разработчик должен начать поиски другого микроконтроллера.
  • Доступность.
    • Существует ли устройство в достаточных количествах.
    • Производится ли оно сейчас.
    • Что ожидается в будущем.
    • Поддержка разработчика.
    • Ассемблеры.
    • Компиляторы.
    • Средства отладки.
    • Внутрисхемные эмуляторы.
    • Информационная поддержка
      • Примеры применения.
      • Сообщения об ошибках.
      • Утилиты, в том числе бесплатные ассемблеры.
      • Примеры исходных текстов.
      • Поддержка применений у поставщика.
      • Квалификация поддерживающего персонала, действительно ли он заинтересован в помощи при решении вашей проблемы.
      • Связь с поддерживающим профессионалом.
    • Надежность фирмы производителя.
      • Компетентность, подтвержденная разработками.
      • Надежность производства, т.е. качество продукции.
      • Время работы в этой области.

Чтобы заставить микроконтроллер выполнять то, что от него требуется, нужно написать программу для него. Это можно делать на разных языках программирования, но чаще всего используются ассемблер и Си. В результате получается выходной файл с шестнадцатеричным кодом (наиболее распространенный стандарт intel-hex c расширением .hex), который и загружается в микроконтроллер.

Вся информация (электрические параметры, габариты, особенности программирования и т.д.) о микроконтроллерах находится в специальных документах – руководствах по использованию (Data Sheet), которые являются своеобразными подробными руководствами для применения микросхем и других электронных приборов. Руководства по использованию обычно можно бесплатно загружать с сайтов производителей, или со специализированных сайтов.

Для уменьшения количества ошибок в программах существуют так называемые примеры использования (Application Note). Эти документы создают производители микроконтроллеров. В них описывается практическое применение микроконтроллеров, приведены схемы устройств, полные тексты или части кода программ, описание работы устройства.

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

В некоторых компиляторах присутствуют отладчики (Debugger), в которых все не так наглядно, но зато найти ошибки в программе гораздо проще. Эти возможности комбинируются в разных средствах разработки.
Отладчики можно разделить на

  • симуляторы
  • эмуляторы.

Симуляторы – совокупность программных средств, моделирующих работу других программ или их отдельных частей.

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

Назад

Назад: Программирование микроконтроллеров

Atmel микроконтроллеры: помощники начинающим программистам

Компания Atmel – производитель популярных семейств микроконтроллеров, каждое из которых имеет свои направления. Интересен этот производитель тем, что микроконтроллеры Atmel семейства AVR очень популярны в среде радиолюбителей. Кроме AVR контроллеров компания выпускает устройства с архитектурой ARM и i8051.

Популярность устройств обусловлена огромным количеством литературы по микроконтроллерам AVR. Каждый может освоить с нуля и писать простые коды с минимальным набором знаний.

Плата Atmel AVR

Какие бывают микроконтроллеры Atmel

Начнем с самого популярного, для освоения микроконтроллеров в целом, – Atmel AVR. Его можно разделить на два направления:

  1. 8-битные микроконтроллеры.
  2. 32-битные микроконтроллеры.

Среди простых проектов для любителей электроники особую популярность снискала именно 8-битная часть семейства. Есть хорошая справочная литература «Микроконтроллеры AVR семейства classic фирмы Atmel», в которой описана вся архитектура, назначение отдельных узлов, регистров и прочего. Не стоит беспокоиться, что она посвящена уже устаревшему семейству AVR Classic – в наши дни оно вытеснено контроллерами Attiny и Atmega, хотя самая маленькая и быстрая модель – AT90S2313 выпускается и по сей день, слегка в модернизированном виде – Attiny 2313.

Современные семейства программно и функционально совместимы с более старыми, а переход с Classic на Mega и Tiny требует минимальных трудозатрат и изменений программного кода. Среди семейства особенную популярность заслужил микроконтроллер с маркировкой Atmega 328p, применяемый во многих популярных платах Arduino. Почти все они имеют небольшое количество энергонезависимой памяти с ограниченным числом циклов записи (до 100 000) – EEPROM.

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

Семейство Atmel Smart базируется на архитектуре ARM. Компания правообладатель ARM свободно продает лицензии на разработку контроллеров со своей архитектурой разным производителям, что ускоряет распространение и популяризацию первых. Стоит отметить яркого представителя – микроконтроллер AT91SAM3X8E, является сердцем Arduino DUE, 32-бита. Это позволяет очень легко начать знакомство с такой архитектурой и разработку устройств энтузиастам электроники. Atmel ARM по характеристикам превосходит большинство микроконтроллеров Atmel AVR

Семейство Atmel 8051 – основано на по-настоящему легендарной архитектуре. Intel 8051 является одним из первых массовых микроконтроллеров с широчайшей сферой применения. Позволяет проектировать высокопрецизионные устройства с огромным быстродействием, практически сравнимым с быстродействием схем на логике. В линейке есть микроконтроллеры, работающие на частотах в 100 МГц, при этом выполняющие 100 миллионов операций в секунду, а это отличные показатели для этой архитектуры. Вы можете добиться быстродействия в долях микросекунд.

Способы связи компьютера и микроконтроллера Atmel

Чаще всего связь с МК устанавливается через COM-порт. На современных компьютерах и ноутбуках последовательного порта нет. Это вызывает необходимость использования USB-UART преобразователь, который распознаётся как виртуальный COM-порт.

Чтобы заливать прошивку в микроконтроллер, нужен либо этот преобразователь, либо специализированный программатор, например, AVRISP MKii – вы можете его собрать сами, но и в его составе есть микроконтроллер.

Происходит «каламбур»: для сборки программатора нужен программатор. Чтобы выйти из этой ситуации, используется специальный чип AT90USB162. Он, в свою очередь, при подключении к USB порту компьютера распознаётся как полноценное USB устройство, прошивку в которое можно загрузить с помощью утилиты Flip от Atmel.

Утилита Flip поддерживает программирование через следующие интерфейсы:

С помощью flip можно загрузить прошивку для программатора микроконтроллеров Атмела без использования COM-порта, а схема AVRISP mk II изображена ниже.

Для работы микроконтроллеров по интерфейсу UART (маркировка интерфейса – rs-232) в Atmel AVR выделен регистр UDR (UART data register), а настройки его работы хранятся в конфигурационных регистрах UCSRA, UCSRB и UCSRС. Настройки битов приемопередатчика Rx, Tx, кстати, хранятся в UCSRA.

Вопросы программирования микроконтроллеров

Для программирования МК ваш код нужно компилировать, для этого есть множество программного обеспечения, пример одного из них – это компилятор IAR. Использование этого компилятора не ограничено одними лишь Atmel. 8051, AVR, AVR32, ARM – это лишь небольшой перечень из более чем 20 поддерживаемых архитектур.

IAR – это универсальное решение для программирования микроконтроллеров различного типа и уровня. Хотя компиляторов есть большое количество, например, WinAVR и CodeVision, но они не осуществляют компилирование программ для тех же АРМов и других архитектур.

IAR Embedded Workbench – полное название этой мощной рабочей среды. Применение ИАРА позволяет добиться меньше размера и большего быстродействия кода; он набирает всё большую популярность из-за своих огромных возможностей.

Пример экрана IAR Embedded Workbench

Работа с микроконтроллерами требует постоянного выполнения одинаковых действий, таких как компиляция, прошивка, сброс к заводским установкам; для автоматизации этих процессов нужно использовать Makefile – набор инструкций для компилятора, в нём записаны обозначения действий с файлами программного кода и другие команды.

Для отладки готовых программ был разработан Atmel ice. Он нужен для внутрисхемной отладки программирования и прошивки устройств. Имеет два разъёма:

  1. Универсальный AVR, поддерживающий любой интерфейс;
  2. ARM.

Судя по отзывам реальных пользователей, работает он быстрее аналогов – AVR Dragon, например, при этом захватывает архитектуру АРМов и имеет больше функций.

Выводы

Фирма Atmel сейчас принадлежит Microchip’у, но продолжает выпускать свои семейства микроконтроллеров. Их популярность не угасала за многие годы, однако в последнее время наблюдается активная конкуренция с STM. Пока рано говорить, кто из них вырвется вперед, рассуждения об этом – тема отдельной статьи.

Выбор семейства зависит только от разработчика и поставленных перед ним задач, а AVR контроллеры помогли многим разработчикам «войти» в программирование микроконтроллеров.

Микроконтроллер | Электроника для всех

Почти все микроконтроллеры имеют на борту последовательный порт — UART. Работает он по стандартному последовательному протоколу, а значит его можно без проблем подключить к компу на COM порт. Но есть тут одна проблема — дело в том, что комповый RS232 он за логические уровни принимает +/- 12 вольт, а UART работает на пятивольтовых уровнях. Как их совместить? Для этого существует несоколько вариантов схем преобразователей уровня, но самая популярная это все же на специальном преобразователе RS232-TTL. Это микросхема MAX232 и ее аналоги.
Практически каждая фирма делает свой преобразователь, так что тут сгодится и ST232, и ADM232, и HIN232. Схемка простая как три копейки — вход, выход, питание и обвязка из пяти конденсаторов. Конденсаторы обычно ставятся 1uF электролиты, но в некоторых модификациях ставится 0.1uF керамика. Я везде впаивал 0.1uF керамику и обычно этого хватало. 🙂 Работает как часы. Если же на высоких скоростях будет глючить, то надо будет повышать емкость.
 

 

Кстати, существует еще и MAX3232 это то же самое, но на выходе у него не 5вольт TTL, а 3.3 вольта TTL. Её используют для низковольтных контроллеров.
 

Я себе сделал один такой универсальный шнурочек, чтобы к контроллерам цепляться было удобно по UART. Для общей компактности всю схему запихал прям в разъем, благо у меня были ST232 в soic корпусе. Получилась платка не больше рублевой монеты. Так как под рукой не было мелких SMD конденсаторов, то пришлось напаять кондеры сверху, кто во что горазд. Главное работает, хоть и не очень красиво вышло.
 

 

Если сомневаешься, что у тебя получится столь мелкий монтаж, то я тебе развел плату на стандартный PDIP корпус. Размером она будет со спичечный коробок, зато мельчить не надо.
 

 

После сборки проверяется просто:
Втыкается в разъем COM порта. Подается 5 вольт питания на схему, а затем замыкаешь Rx на Tx (у меня это зеленый и желтый провода).
 
Дальше открваешь любую терминалку, хоть Hyper Terminal, цепляешься к порту и начинаешь посылать байты, они должны тотчас возвращаться обратно. Если этого не произошло — проверяй схему, где то косяк.
 

Если работает, то дальше все просто. Тот провод который идет от ножки 9 микросхемы MAX232 это передающий вывод, его заводи на ногу RxD контроллера. А тот который с ножки 10 — принимающий, его смело сажай на вывод TxD контроллера.
 

 

Плата сделана была методом ЛУТ, в одном месте по моему недосмотру толщина просвета оказалась 0.05мм, протравилась, но со спайками, пришлось процарапывать. А в целом с первого раза ать и никаких проблем. Аж сразу захотелось сделать что нибудь маленькое маленькое, нафаршированное нафаршированное 🙂
 

 

Все, аппаратная часть для связи микроконтроллера с компом готова. Ждите следующего поста в котором я расскажу как конфигурировать и использовать UART в микроконтроллерах AVR. В будущем я буду через UART осуществлять отладочную связь с компом. Может быть даже ради этого соберу отдельный модуль с LCD экранчиком. Для отладки в железе. Посмотрим как попрет.
 

Печатная плата в формате Sprint Layout. Два варианта маленький и большой
 

Та же бодяга, но для работы через USB
 

Read More »

Как выбрать правильный микроконтроллер для вашего приложения

Добавлено 17 сентября 2019 в 18:14

Сохранить или поделиться

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

В предыдущей статье я представил основные характеристики микроконтроллеров, объяснил основные аспекты их внутренней структуры и дал некоторые общие идеи о том, как можно использовать микроконтроллер в различных типах встраиваемых систем.

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

Выбор производителя

Список производителей полупроводниковых устройств, продающих микроконтроллеры, довольно длинный. Тем не менее, я настоятельно вам рекомендую начать с производителя, который уделяет большое внимание своей линейке микроконтроллеров. Это обеспечит вам доступ к множеству полезных ресурсов по разработке – примечания к применению, примеры кода, качественная интегрированная среда разработки (IDE), удобные инструменты программирования, и так далее.

Simplicity Studio, бесплатная IDE от Silicon Labs, предоставляет вам одну среду разработки, которая поддерживает множество различных микроконтроллеров.

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

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

Если ваш опыт разработки на микроконтроллерах всё еще довольно ограничен, я рекомендую выбрать одного из следующих производителей: Texas Instruments, STMicroelectronics, Silicon Labs или Microchip. (Atmel также определенно должен быть включен в этот список, но он был приобретен Microchip в 2016 году.)

Критические параметры

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

В следующих подразделах приведены некоторые примеры «менее стандартных» функций, которые помогут вам сузить список микроконтроллеров, которые могут подходить для заданного проекта.

Цифро-аналоговый преобразователь (ЦАП)

У вас не возникнет проблем с поиском микроконтроллера с аналого-цифровым преобразователем, но ЦАП встречается значительно реже. Тем не менее, в определенных приложениях они очень полезны, и встроенный ЦАП, безусловно, гораздо удобнее, чем внешний ЦАП.

Синусоида, сгенерированная 12-разрядным ЦАП, встроенным в микроконтроллер SAM4S от Atmel.

Аналого-цифровой преобразователь (АЦП)

Я только что сказал, что АЦП распространены, и это правда, но стоит отметить, что производительность многих микроконтроллерных АЦП находится в диапазоне от низкого до среднего уровня. Если вам нужен АЦП с необычно высоким разрешением или необычно высокой частотой дискретизации, вам придется сделать это приоритетом в процессе выбора. Несколько лет назад я оказался в подобной ситуации, и, если я правильно помню, ничто не могло сравниться с C8051F060 от Silicon Labs (у него есть два встроенных АЦП, которые могут выполнять 16-разрядное преобразование со скоростью один миллион выборок в секунду).

Тактовая частота

Если вам нужен микроконтроллер, который более совместим с интенсивными вычислительными функциями DSP (цифрового сигнального процессора), вам нужно отдать приоритет устройствам, которые поддерживают высокие частоты процессора. У Silicon Labs есть два 8-разрядных семейства, работающих на частоте 100 МГц, а у STMicroelectronics и Microchip есть высокопроизводительные 32-разрядные микроконтроллеры, работающие на частоте 120 МГц.

Универсальная последовательная шина (USB)

Интерфейс USB является доминирующей формой последовательной связи. Я обнаружил, что это очень эффективный способ передачи данных между встраиваемым устройством и компьютером, и в контексте бытовой электроники он незаменим. Если вы ищете компактный, простой метод включения USB соединения в вашу систему, я рекомендую вам сосредоточиться на микроконтроллерах, которые включают в себя USB модуль. Я использовал EFM8 Universal Bee от Silicon Labs, а Microchip предлагает 8-разрядные, 16-разрядные и 32-разрядные USB микроконтроллеры.

Емкостной датчик прикосновения

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

Интерфейс на емкостных датчиках на базе микроконтроллера MSP430 от Texas Instruments

Стоимость и размер корпуса

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

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

Оценка аппаратного обеспечения

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

Заключение

Надеюсь, что данная статья поможет вам ориентироваться в иногда пугающем процессе выбора одного микроконтроллера из числа тысяч, доступных на рынке. После того, как мы выбрали микроконтроллер, пришло время начать чтение технического описания (datasheet, «даташит») и проектирование системы, и мы рассмотрим эти темы в следующих статьях.

Оригинал статьи:

Теги

MCUMicrochip TechnologySilicon LabsSTMicroelectronicsTexas InstrumentsВстраиваемые системыМикроконтроллерПроектирование встраиваемых систем

Сохранить или поделиться

Поставщики и ресурсы беспроводной связи RF

О компании RF Wireless World

Веб-сайт RF Wireless World является домом для поставщиков и ресурсов радиочастотной и беспроводной связи.
На сайте представлены статьи, руководства, поставщики, терминология, исходный код (VHDL, Verilog, MATLAB, Labview), тестирование и измерения,
калькуляторы, новости, книги, загрузки и многое другое.

Сайт RF Wireless World охватывает ресурсы по различным темам, таким как RF, беспроводная связь, vsat, спутник, радар, волоконная оптика, микроволновая печь, wimax, wlan, zigbee,
LTE, 5G NR, GSM, GPRS, GPS, WCDMA, UMTS, TDSCDMA, bluetooth, Lightwave RF, z-wave, Интернет вещей (IoT), M2M, Ethernet и т. Д.Эти ресурсы основаны на стандартах IEEE и 3GPP. В нем также есть академический раздел, который охватывает колледжи и университеты по инженерным дисциплинам и MBA.

Статьи о системах на основе Интернета вещей

Система обнаружения падений для пожилых людей на основе Интернета вещей : В статье рассматривается архитектура системы обнаружения падений, используемой для пожилых людей.
В нем упоминаются преимущества или преимущества системы обнаружения падений Интернета вещей.
Узнать больше➤
Также обратитесь к другим статьям о системах на основе Интернета вещей следующим образом:
• Система чистоты туалетов самолета.
• Система измерения столкновения
• Система отслеживания скоропортящихся продуктов и овощей
• Система помощи водителю
• Система умной торговли
• Система мониторинга качества воды
• Система Smart Grid
• Система умного освещения на базе Zigbee
• Система интеллектуальной парковки на основе Zigbee.
• Система интеллектуальной парковки на основе LoRaWAN


RF Статьи о беспроводной связи

В этом разделе статей представлены статьи о физическом уровне (PHY), уровне MAC, стеке протоколов и сетевой архитектуре на основе WLAN, WiMAX, zigbee, GSM, GPRS, TD-SCDMA, LTE, 5G NR, VSAT, Gigabit Ethernet на основе IEEE / 3GPP и т. Д. .стандарты.
Он также охватывает статьи, относящиеся к испытаниям и измерениям, по тестированию на соответствие, используемым для испытаний устройств на соответствие RF / PHY. УКАЗАТЕЛЬ СТАТЬИ ДЛЯ ССЫЛКИ >>.


Физический уровень 5G NR : Обработка физического уровня для канала 5G NR PDSCH и канала 5G NR PUSCH рассмотрена поэтапно.
Это описание физического уровня 5G соответствует спецификациям физического уровня 3GPP.

Читать дальше➤


Основы повторителей и типы повторителей :
В нем объясняются функции различных типов ретрансляторов, используемых в беспроводных технологиях.Читать дальше➤


Основы и типы замирания : В этой статье рассматриваются мелкомасштабные замирания, крупномасштабные замирания, медленные, быстрые замирания и т. Д., Которые используются в беспроводной связи.
Читать дальше➤


Архитектура сотового телефона 5G : В этой статье рассматривается блок-схема сотового телефона 5G с внутренними модулями 5G.
Архитектура сотового телефона.
Читать дальше➤


Основы помех и типы помех: В этой статье рассматриваются помехи в соседнем канале, помехи в одном канале,
ЭМ помехи, ICI, ISI, световые помехи, звуковые помехи и т. Д.Читать дальше➤


5G NR Раздел

В этом разделе рассматриваются функции 5G NR (New Radio), нумерология, диапазоны, архитектура, развертывание, стек протоколов (PHY, MAC, RLC, PDCP, RRC) и т. Д.
5G NR Краткий указатель ссылок >>
• Мини-слот 5G NR
• Часть полосы пропускания 5G NR
• 5G NR CORESET
• Форматы DCI 5G NR
• 5G NR UCI
• Форматы слотов 5G NR
• IE 5G NR RRC
• 5G NR SSB, SS, PBCH
• 5G NR PRACH
• 5G NR PDCCH
• 5G NR PUCCH
• Эталонные сигналы 5G NR
• 5G NR m-последовательность
• Золотая последовательность 5G NR
• 5G NR Zadoff Chu Sequence
• Физический уровень 5G NR
• Уровень MAC 5G NR
• Уровень 5G NR RLC
• Уровень 5G NR PDCP


Учебные пособия по беспроводным технологиям

В этом разделе рассматриваются учебные пособия по радиочастотам и беспроводной связи.Он охватывает учебные пособия по таким темам, как
сотовая связь, WLAN (11ac, 11ad), wimax, bluetooth, zigbee, zwave, LTE, DSP, GSM, GPRS,
GPS, UMTS, CDMA, UWB, RFID, радар, VSAT, спутник, WLAN, волновод, антенна, фемтосота, тестирование и измерения, IoT и т. Д.
См. УКАЗАТЕЛЬ Учебников >>


Учебное пособие по 5G — Это руководство по 5G также охватывает следующие подтемы по технологии 5G:
Учебное пособие по основам 5G
Полосы частот
руководство по миллиметровым волнам
Волновая рамка 5G мм
Зондирование волнового канала 5G мм
4G против 5G
Тестовое оборудование 5G
Сетевая архитектура 5G
Сетевые интерфейсы 5G NR
канальное зондирование
Типы каналов
5G FDD против TDD
Разделение сети 5G NR
Что такое 5G NR
Режимы развертывания 5G NR
Что такое 5G TF


Этот учебник GSM охватывает основы GSM, архитектуру сети, элементы сети, системные спецификации, приложения,
Типы пакетов GSM, структура кадров GSM или иерархия кадров, логические каналы, физические каналы,
Физический уровень GSM или обработка речи, вход в сеть мобильного телефона GSM, установка вызова или процедура включения питания,
MO-вызов, MT-вызов, VAMOS, AMR, MSK, модуляция GMSK, физический уровень, стек протоколов, основы мобильного телефона,
Планирование RF, нисходящая линия связи PS-вызова и восходящая линия связи PS.
➤Подробнее.

LTE Tutorial , охватывающий архитектуру системы LTE, охватывающий основы LTE EUTRAN и LTE Evolved Packet Core (EPC).
Он обеспечивает связь с обзором системы LTE, радиоинтерфейсом LTE, терминологией LTE, категориями LTE UE, структурой кадра LTE, физическим уровнем LTE,
Стек протоколов LTE, каналы LTE (логические, транспортные, физические), пропускная способность LTE, агрегация несущих LTE, передача голоса по LTE, расширенный LTE,
Поставщики LTE и LTE vs LTE продвинутые.➤Подробнее.


RF Technology Stuff

Эта страница мира беспроводной радиосвязи описывает пошаговое проектирование преобразователя частоты RF на примере преобразователя RF UP диапазона 70 МГц в C.
для микрополосковой платы с использованием дискретных радиочастотных компонентов, а именно. Смесители, гетеродин, MMIC, синтезатор, опорный генератор OCXO,
колодки аттенюатора. ➤Подробнее.
➤Проектирование и разработка радиочастотных трансиверов
➤Конструкция RF фильтра
➤VSAT Система
➤Типы и основы микрополосковой печати
➤Основы работы с волноводом


Секция испытаний и измерений

В этом разделе рассматриваются контрольно-измерительные ресурсы, испытательное и измерительное оборудование для тестирования DUT на основе
Стандарты WLAN, WiMAX, Zigbee, Bluetooth, GSM, UMTS, LTE. ИНДЕКС испытаний и измерений >>
➤ Система PXI для T&M.
➤ Генерация и анализ сигналов
➤Измерения слоя PHY
➤Тест устройства на соответствие WiMAX
➤ Тест на соответствие Zigbee
➤ Тест на соответствие LTE UE
➤Тест на соответствие TD-SCDMA


Волоконно-оптическая технология

Оптоволоконный компонент , основы, включая детектор, оптический соединитель, изолятор, циркулятор, переключатели, усилитель,
фильтр, эквалайзер, мультиплексор, разъемы, демультиплексор и т. д.Эти компоненты используются в волоконно-оптической связи.
Оптические компоненты INDEX >>
➤Учебник по оптоволоконной связи
➤APS в SDH
➤SONET основы
➤SDH Рамочная конструкция
➤SONET против SDH


Поставщики и производители беспроводных радиочастотных устройств

Сайт RF Wireless World охватывает производителей и поставщиков различных компонентов, систем и подсистем RF для ярких приложений,
см. ИНДЕКС поставщиков >>.

Поставщики радиочастотных компонентов, включая радиочастотный изолятор, радиочастотный циркулятор, радиочастотный смеситель, радиочастотный усилитель, радиочастотный адаптер, радиочастотный разъем, радиочастотный модулятор, радиочастотный трансивер, PLL, VCO, синтезатор, антенну, генератор, делитель мощности, сумматор мощности, фильтр, аттенюатор, диплексер, дуплексер, микросхема резистора, микросхема конденсатора, микросхема индуктивности, ответвитель, оборудование ЭМС, программное обеспечение для проектирования радиочастот, диэлектрический материал, диод и т. д.Производители RF компонентов >>
➤Базовая станция LTE
➤RF Циркулятор
➤RF Изолятор
➤Кристаллический осциллятор


MATLAB, Labview, встроенные исходные коды

Раздел исходного кода RF Wireless World охватывает коды, связанные с языками программирования MATLAB, VHDL, VERILOG и LABVIEW.
Эти коды полезны для новичков в этих языках.
ИНДЕКС ИСХОДНОГО КОДА >>
➤3-8 декодер кода VHDL
➤Код MATLAB для дескремблера
➤32-битный код ALU Verilog
➤T, D, JK, SR триггеры labview коды

* Общая информация о здоровье населения *

Выполните эти пять простых действий, чтобы остановить коронавирус (COVID-19).
СДЕЛАЙТЕ ПЯТЬ
1. РУКИ: Часто мойте их.
2. КОЛЕНО: Откашляйтесь.
3. ЛИЦО: не трогайте его
4. НОГИ: держитесь на расстоянии более 3 футов (1 м) друг от друга
5. ЧУВСТВОВАТЬ: Болен? Оставайся дома

Используйте технологию отслеживания контактов >>, соблюдайте >> рекомендации по социальному дистанцированию и
установить систему видеонаблюдения >>
чтобы спасти сотни жизней.
Использование концепции телемедицины стало очень популярным в
таким странам, как США и Китай, остановить распространение COVID-19, поскольку это заразное заболевание.


RF Калькуляторы и преобразователи беспроводной связи

Раздел «Калькуляторы и преобразователи» охватывает ВЧ-калькуляторы, беспроводные калькуляторы, а также преобразователи единиц.
Это касается беспроводных технологий, таких как GSM, UMTS, LTE, 5G NR и т. Д.
СПРАВОЧНЫЕ КАЛЬКУЛЯТОРЫ Указатель >>.
➤ Калькулятор пропускной способности 5G NR
➤5G NR ARFCN против преобразования частоты
➤Калькулятор скорости передачи данных LoRa
➤LTE EARFCN для преобразования частоты
➤ Калькулятор антенны Яги
➤ Калькулятор времени выборки 5G NR


IoT-Интернет вещей Беспроводные технологии

Раздел IoT охватывает беспроводные технологии Интернета вещей, такие как WLAN, WiMAX, Zigbee, Z-wave, UMTS, LTE, GSM, GPRS, THREAD, EnOcean, LoRa, SIGFOX, WHDI, Ethernet,
6LoWPAN, RF4CE, Bluetooth, Bluetooth Low Power (BLE), NFC, RFID, INSTEON, X10, KNX, ANT +, Wavenis, Dash7, HomePlug и другие. Он также охватывает датчики Интернета вещей, компоненты Интернета вещей и компании Интернета вещей.
См. Главную страницу IoT >> и следующие ссылки.
➤ НИТЬ
➤EnOcean
➤Учебник по LoRa
➤Учебник по SIGFOX
➤WHDI
➤6LoWPAN
➤Zigbee RF4CE
➤NFC
➤Lonworks
➤CEBus
➤UPB

СВЯЗАННЫЕ ЗАПИСИ

RF Wireless Учебники

Различные типы датчиков

Поделиться страницей

Перевести

МИКРОКОНТРОЛЛЕРЫ И ВСТРОЕННЫЕ ПРОЦЕССОРЫ

Эта глава начинается с обсуждения роли и значения микроконтроллеров в повседневной жизни.В разделе 1.1 мы также обсуждаем критерии, которые следует учитывать при выборе микроконтроллера, а также использование микроконтроллеров на рынке встраиваемых систем. В разделе 1.2 рассматриваются различные члены семейства 8051, такие как 8052 и 8031, а также их особенности. Кроме того, мы обсуждаем различные версии 8051, такие как 8751, AT89C51 и DS5000.

РАЗДЕЛ 1.1: МИКРОКОНТРОЛЛЕРЫ И ВСТРОЕННЫЕ ПРОЦЕССОРЫ

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

Микроконтроллер в сравнении с микропроцессором общего назначения

В чем разница между микропроцессором и микроконтроллером? Под микропроцессором подразумеваются микропроцессоры общего назначения, такие как семейство Intel x86 (8086, 80286, 80386, 80486 и Pentium) или семейство Motorola 680 × 0 (68000, 68010, 68020, 68030, 68040 и т. Д.)). Эти микропроцессоры не содержат ОЗУ, ПЗУ и портов ввода-вывода на самом чипе. По этой причине их обычно называют микропроцессорами общего назначения .

Рисунок 1-1. Микропроцессорная система в отличие от микроконтроллерной системы

Разработчик системы, использующий микропроцессор общего назначения, такой как Pentium или 68040, должен добавить RAM, ROM, порты ввода-вывода и таймеры извне, чтобы они работали. Хотя добавление внешнего ОЗУ, ПЗУ и портов ввода-вывода делает эти системы более громоздкими и намного более дорогими, они обладают преимуществом универсальности, так что разработчик может выбрать объем ОЗУ, ПЗУ и портов ввода-вывода, необходимых для соответствуют поставленной задаче.С микроконтроллерами дело обстоит иначе. У микроконтроллера есть ЦП (микропроцессор) в дополнение к фиксированному объему ОЗУ, ПЗУ, портам ввода-вывода и таймеру на одном кристалле. Другими словами, процессор, ОЗУ, ПЗУ, порты ввода-вывода и таймер встроены вместе на одном кристалле; поэтому разработчик не может добавить к нему внешнюю память, ввод / вывод или таймер. Фиксированный объем встроенного ПЗУ, ОЗУ и количество портов ввода-вывода в микроконтроллерах делает их идеальными для многих приложений, в которых критичны стоимость и пространство.

Таблица 1-1: Некоторые встроенные продукты, использующие микроконтроллеры

Во многих приложениях, например, в пульте дистанционного управления телевизором, нет необходимости в вычислительной мощности микропроцессора 486 или даже 8086. Во многих приложениях занимаемое пространство, потребляемая мощность и цена за единицу гораздо более важны, чем вычислительная мощность. Этим приложениям чаще всего требуются некоторые операции ввода-вывода для чтения сигналов и включения и выключения определенных битов.По этой причине некоторые называют эти процессоры IBP, «itty-bitty processors» (см. «Хорошие вещи в маленьких пакетах создают большие возможности для продукта», Рик Грехан, журнал BYTE, сентябрь 1994 г .; www.byte.com, где подробно обсуждается микроконтроллеры).

Интересно отметить, что некоторые производители микроконтроллеров дошли до интеграции АЦП (аналого-цифрового преобразователя) и других периферийных устройств в микроконтроллер.

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

В литературе, посвященной микропроцессорам, мы часто встречаем термин встраиваемая система. Микропроцессоры и микроконтроллеры широко используются во встроенных системных продуктах. Встроенный продукт использует микропроцессор (или микроконтроллер) для выполнения одной задачи и только одной задачи. Принтер является примером встроенной системы, поскольку процессор внутри него выполняет только одну задачу; а именно получение данных и их печать. Сравните это с ПК на базе Pentium (или любым компьютером, совместимым с IBM x86). ПК может использоваться для любого количества приложений, таких как текстовый процессор, сервер печати, терминал кассира банка, проигрыватель видеоигр, сетевой сервер или интернет-терминал.Программное обеспечение для различных приложений может быть загружено и запущено. Конечно, причина, по которой ПК может выполнять множество задач, заключается в том, что у него есть оперативная память и операционная система, которая загружает прикладное программное обеспечение в ОЗУ и позволяет ЦП запускать его. Во встроенной системе есть только одно приложение, которое обычно записывается в ПЗУ. ПК x86 содержит или подключен к различным встроенным продуктам, таким как клавиатура, принтер, модем, контроллер диска, звуковая карта, драйвер CD-ROM, мышь и так далее. Каждое из этих периферийных устройств имеет внутри микроконтроллер, который выполняет только одну задачу.Например, внутри каждой мыши есть микроконтроллер, который выполняет задачу определения положения мыши и отправки его на ПК. В таблице 1-1 перечислены некоторые встроенные продукты.

Встроенные приложения для ПК X86

Хотя микроконтроллеры являются предпочтительным выбором для многих встраиваемых систем, бывают случаи, когда микроконтроллер не подходит для этой задачи. По этой причине в последние годы многие производители микропроцессоров общего назначения, такие как Intel, Freescale Semiconductor Inc.(ранее Motorola), AMD (Advanced Micro Devices, Inc.). и Cyrix (ныне подразделение National Semiconductor, Inc.) нацелили свои микропроцессоры на рынок высокопроизводительных встраиваемых систем. В то время как Intel и AMD продвигают свои процессоры x86 как для встраиваемых, так и для настольных ПК, Freescale намерена сохранить семейство 68000, ориентируясь в основном на высокопроизводительные встроенные системы, поскольку Apple больше не использует 680 × 0 в своих Macintosh. . В начале 1990-х в компьютерах Apple стали использовать микропроцессоры Power PC (604, 603, 620 и т. Д.).) вместо 680 × 0 для Macintosh. Микропроцессор Power PC является совместным предприятием IBM и Freescale и нацелен на рынок высокопроизводительных встраиваемых систем, а также на рынок ПК. Следует отметить, что когда компания нацелена на микропроцессор общего назначения для рынка встраиваемых систем, она оптимизирует процессор, используемый для встраиваемых систем. По этой причине эти процессоры часто называют встроенными процессорами высокого класса . Очень часто термины встроенный процессор и микроконтроллер используются как синонимы.

Одной из наиболее важных потребностей встраиваемой системы является уменьшение энергопотребления и уменьшения занимаемого пространства. Это может быть достигнуто за счет интеграции большего количества функций в микросхему ЦП. Все встроенные процессоры на базе x86 и 680 × 0 имеют низкое энергопотребление в дополнение к некоторым формам ввода-вывода, COM-порта и ПЗУ на одном кристалле. В высокопроизводительных встроенных процессорах наблюдается тенденция интеграции все большего и большего числа функций в микросхему ЦП и позволять разработчику решать, какие функции он / она хочет использовать.Эта тенденция проникает и в дизайн компьютерных систем. Обычно при проектировании материнской платы ПК нам нужен ЦП плюс набор микросхем, содержащий ввод-вывод, контроллер кэш-памяти, флэш-ПЗУ с BIOS и, наконец, вторичная кэш-память. В промышленности появляются новые конструкции. Например, Cyrix объявила, что работает над чипом, который содержит весь ПК, за исключением DRAM. Другими словами, мы увидим целый компьютер на кристалле.

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

Выбор микроконтроллера Существует четыре основных 8-битных микроконтроллера.Это 6811 от Freescale, 8051 от Intel, Z8 от Zilog и PIC 16X от Microchip Technology. Каждый из этих микроконтроллеров имеет уникальный набор команд и набор регистров; следовательно, они несовместимы друг с другом. Программы, написанные для одного, не будут работать на другом. Также существуют 16-битные и 32-битные микроконтроллеры различных производителей микросхем. Какие критерии учитывают дизайнеры при выборе одного из этих разных микроконтроллеров? Три критерия при выборе микроконтроллеров заключаются в следующем: (1) эффективное и экономичное удовлетворение вычислительных потребностей поставленной задачи, (2) наличие инструментов разработки программного обеспечения, таких как компиляторы, ассемблеры и отладчики, и (3) широкая доступность и надежные источники микроконтроллера.Далее мы подробно рассмотрим каждый из вышеперечисленных критериев.

Критерии выбора микроконтроллера

1. Первым и главным критерием при выборе микроконтроллера является
то, что он должен эффективно и экономично решать поставленную задачу. Анализируя потребности
проекта на основе микроконтроллера, мы должны сначала посмотреть, может ли 8-битный, 16-битный,
или 32-битный микроконтроллер наилучшим образом справиться с вычислительными потребностями задачи
наиболее эффективно.Среди других соображений в этой категории:

  1. Скорость. Какую максимальную скорость поддерживает микроконтроллер?

    1. Упаковка. Входит ли он в 40-контактный DIP (двухрядный корпус) или QFP
      (четырехместный плоский корпус) или какой-либо другой формат упаковки? Это важно для
      с точки зрения пространства, сборки и прототипирования конечного продукта.

    2. Потребляемая мощность. Это особенно важно для продуктов
      с батарейным питанием.

  2. Объем ОЗУ и ПЗУ на кристалле.

  3. Количество контактов ввода / вывода и таймер на микросхеме.

    1. Насколько легко перейти на более производительную или более экономичную версию с суммированием
      .

    2. Стоимость за единицу. Это важно с точки зрения конечной стоимости продукта
      , в котором используется микроконтроллер. Например, есть микроконтроллеры
      , которые стоят 50 центов за единицу при покупке 100 000 единиц за раз.

  1. Второй критерий при выборе микроконтроллера — насколько легко разработать на его основе продукты
    op. Ключевые соображения включают наличие сборщика сборки
    , отладчика, компилятора языка C с эффективным кодом, эмулятора, порта технической поддержки
    , а также собственных и внешних знаний. Во многих случаях поддержка чипа со стороны Ven
    dor (то есть поставщика, отличного от производителя чипа) равна
    , если не лучше, чем поддержка со стороны производителя чипа.

  2. Третий критерий выбора микроконтроллера — его готовность в
    необходимых количествах как сейчас, так и в будущем. Для некоторых дизайнеров это даже на
    важнее первых двух критериев. В настоящее время из ведущих 8-битных микроконтроллеров
    семейство 8051 имеет наибольшее количество разнообразных поставщиков (с несколькими источниками
    ). Под поставщиком подразумевается производитель помимо создателя
    микроконтроллера. В случае 8051, который был разработан Intel,
    несколько компаний также в настоящее время производят (или производили в прошлом)
    8051.К этим компаниям относятся: Intel, Atmel, Philips / Signetics, AMD,
    Infineon (ранее Siemens), Matra и Dallas Semiconductor. См. Таблицу 1-2.

Таблица 1-2: Некоторые компании, являющиеся членами семейства 8051

Следует отметить, что Freescale, Zilog и Microchip Technology имеют все выделенные огромные ресурсы для обеспечения широкой и своевременной доступности своего продукта, поскольку их продукт является стабильным, зрелым и поставляется из одного источника.В последние годы также начали продавать библиотечные ячейки ASIC микроконтроллера.

Что такое микроконтроллер? Как работает микроконтроллер? Основы микроконтроллера ~ Wiki For You

В современном мире технологий мы обнаружили микроконтроллеры почти в каждом используемом нами электронном устройстве. Практически все устройства общего назначения, такие как цифровые часы, стиральные машины, CD / DVD-плееры, мобильные телефоны и микроволновые печи, работают на базе микроконтроллеров.
Микроконтроллер похож на персональный компьютер или центральный процессор, но вместо взаимодействия с людьми они взаимодействуют с другими машинами.В основном микроконтроллеры были разработаны для автоматизации процесса. Они используются во встроенных системах. Давайте посмотрим, что такое микроконтроллер и как он работает.
Вам также может понравиться: Введение в микроконтроллер 8051

Что такое микроконтроллер?

Микроконтроллер — это микросхема, которая выполняет программы для управления другими устройствами или машинами. Это микроконтроллер (небольшого размера, поскольку он представляет собой интегральную схему) устройство, которое используется для управления другими устройствами и машинами, поэтому оно называется «микроконтроллер».Это микропроцессор, имеющий ОЗУ, ПЗУ и порты ввода-вывода.

Первым в мире микроконтроллером был TMS 1000, который был разработан в 1971 году и коммерчески выпущен в 1974 году. Он был разработан инженерами Гэри Буном и Майклом Кокраном.

Как работает микроконтроллер?

Хотя существует множество микроконтроллеров и даже больше программ для микроконтроллеров, но большинство из них имеют много общего. Таким образом, если мы сможем изучить один из них, мы сможем справиться и с другими.
Вам также может понравиться: Архитектура и блок-схема 8051

Микроконтроллер — очень быстрое устройство (медленнее, чем компьютер), поэтому каждая инструкция выполняется в микроконтроллере с очень высокой скоростью. Его функционирование приведено ниже:

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

Подробнее о микроконтроллерах :

Что такое микроконтроллер MCU для встраиваемых систем »Электроника

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


Встроенные системы Включает:
Основы встроенных систем
Микроконтроллер, MCU


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

У обоих подходов есть свои достоинства, но обычно они используются в разных приложениях. Обычно микроконтроллер MCU используется в приложениях, где ключевыми требованиями являются размер, низкое энергопотребление и низкая стоимость.

MCU, микроконтроллер отличается от микропроцессора тем, что он содержит больше элементов общего механизма обработки в одном кристалле.

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

Основы микроконтроллера

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

Поскольку микроконтроллеры часто предназначены для приложений с низким энергопотреблением и малой вычислительной мощностью, некоторые микроконтроллеры могут использовать только 4-битные слова, а также могут работать с очень низкими тактовыми частотами — около 10 кГц и меньше для экономии энергии. Это означает, что некоторые микроконтроллеры могут потреблять только милливатт или около того, и они также могут иметь уровни потребления сна в несколько нановатт. С другой стороны, некоторым микроконтроллерам может потребоваться гораздо более высокий уровень производительности и они могут иметь гораздо более высокие тактовые частоты и потребляемую мощность.

Преимущества и недостатки микроконтроллера

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

Обзор преимуществ и недостатков микроконтроллера
Преимущества Недостатки
  • Более низкая стоимость, поскольку многие элементы процессора содержатся в одной микросхеме, что приводит к снижению стоимости микросхемы и платы.
  • Низкое энергопотребление.
  • Интеграция всех компонентов в один чип позволяет оптимизировать процессор для конкретного приложения.
  • Меньшая гибкость, потому что все компоненты интегрированы в одну микросхему.
  • Ограниченная производительность, поскольку размер памяти ограничен тем, что можно разместить на микросхеме.
  • MCU

  • обычно зависят от приложения, поэтому выбор может быть ограничен.

Дополнительные темы по цифровой логике и встраиваемым системам:
Программирование ПЛИС
Встроенные системы
Как работает компьютер

Основы проектирования логических схем
Рекомендации по проектированию логики / схем

Вернуться в меню Цифра / Логика / Обработка. . .

Введение в микроконтроллеры — инженерные проекты

Привет, друзья! Мы здесь, чтобы держать вас в курсе полезной информации, чтобы вы продолжали возвращаться к тому, что мы можем предложить.Сегодня я собираюсь открыть подробности о Introduction to Microcontrollers . Микроконтроллер — это электронное устройство, способное эффективно выполнять различные задачи в системах автоматического управления. Он состоит из памяти, портов ввода / вывода и процессора. Мы используем C и язык ассемблера для программирования микроконтроллера. Это похоже на крошечные компьютеры, которые помогают облегчить наши задачи с помощью программирования, используемого в компактных схемах. Я постараюсь охватить каждый аспект, связанный с микроконтроллером, чтобы вы получили четкое представление о том, что он делает и каковы его основные приложения.Будем надеяться на плату и изучать свойства микроконтроллера один за другим.

Введение в микроконтроллеры

  • Микроконтроллер — это компактный крошечный компьютер, который изготовлен внутри микросхемы и используется в системах автоматического управления, включая системы безопасности, офисные машины, электроинструменты, системы сигнализации, управление светофорами, стиральную машину и многое другое. Больше.
  • Это экономичное программируемое логическое управление, которое может быть сопряжено с внешними устройствами для управления устройствами на расстоянии.
  • Первый микроконтроллер был изготовлен Майклом Кокраном и Гэри Бун .
  • Он был специально построен для встраиваемых систем и состоял из памяти для чтения и записи, постоянной памяти, портов ввода-вывода, процессора и встроенных часов.
  • C и языки ассемблера используются для программирования микроконтроллеров.
  • Существуют также другие языки, доступные для программирования микроконтроллера, но для начала изучение программирования микроконтроллера на языке C и ассемблере — отличный выбор, оба языка просты в изучении и дают четкое представление о микроконтроллере.
  • Технологии были удивительно развиты и сделали нашу жизнь проще, чем когда-либо прежде.
  • Несколько лет назад приведение лифта в рабочее состояние было адской задачей, требующей сложного программирования и схемотехники.
  • Теперь вы можете не только управлять лифтом с микроконтроллера, но и перемещать подводную лодку с помощью соответствующих инструкций, передаваемых в один микроконтроллер.
  • Любое приложение, которое включает в себя измерения, управление и отображение, содержит внутри микроконтроллерный чип.
  • Микроконтроллеры поставляются с широким спектром приложений, но решать, какую задачу вы хотите решить с помощью микроконтроллера, зависит только от вас, потому что он будет принимать только инструкции в форме языка программирования.
  • Вы можете создавать, загружать и запускать любую программу в зависимости от ваших приоритетов.

Сравнение с микропроцессором

  • Некоторые люди думают, что микроконтроллер и микропроцессор одинаковы, но на самом деле они разные.
  • Микропроцессор использует внешнюю схему для установления связи с периферийной средой, но микроконтроллер не включает никаких внешних схем, чтобы привести его в рабочее состояние, поскольку он поставляется с указанной встроенной схемой, которая экономит место и экономит затраты на разработку устройство аналогичных характеристик.
  • По сравнению с микропроцессорами, которые широко используются в ПК, ноутбуках и блокнотах, микроконтроллеры специально созданы для встроенных систем.
  • Когда мы говорим о встроенной системе, мы фактически имеем в виду устройства, которые имеют встроенную схему и нуждаются в загрузке соответствующих инструкций для управления устройствами.
  • Во встроенной системе замечательно то, что она включает в себя индивидуальное программирование, которое напрямую связано с внутренней схемой, которую можно изменять снова и снова, пока вы не достигнете желаемого результата.
  • Тактовая частота микропроцессора намного больше, чем у микроконтроллера, и они способны выполнять сложные задачи. Они могут работать на частоте 1 ГГц.

Сравнение с настольными компьютерами

  • В отличие от нашего настольного компьютера, микроконтроллеры — это крошечные компьютеры, в которых объем памяти намного меньше, чем у настольных компьютеров.
  • Также скорость настольного компьютера намного превышает скорость простого микроконтроллера.
  • Однако микроконтроллеры обладают некоторыми функциями, аналогичными настольным компьютерам, например, они оснащены центральным процессором, который является мозгом микроконтроллера.
  • Эти ЦП в микроконтроллерах имеют разную длину слова, то есть от 4 до 64 бит.
  • Они могут работать на более низких частотах 4 кГц и могут сохранять функциональность до нажатия кнопки сброса или вызова некоторого прерывания.

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

  • В современных технологиях некоторые микроконтроллеры имеют сложную конструкцию и могут иметь длину слова более 64 бит.
  • Микроконтроллер состоит из встроенных компонентов, включая EPROM, EEPROM, RAM, ROM, таймеры, порты ввода / вывода и кнопку сброса.RAM используется для хранения данных, а ROM используется для хранения программ и других параметров.
  • Современные микроконтроллеры спроектированы с использованием архитектуры CISC (компьютер со сложным набором команд), которая включает инструкции типа marco.
  • Инструкция типа одиночного макроса используется для замены количества маленьких инструкций.
  • Современные микроконтроллеры потребляют гораздо меньше энергии по сравнению со старыми.
  • Они могут работать при более низком напряжении от 1.От 8 В до 5,5 В.
  • Флэш-память, такая как EPROM и EEPROM, является очень надежной и продвинутой функцией в последних микроконтроллерах, которая отличает их от старых микроконтроллеров.
  • EPROM быстрее и быстрее, чем память EEPROM. Он позволяет стирать и записывать циклы столько раз, сколько вы хотите, что делает его удобным для пользователя.

Детали микроконтроллера

  • Микроконтроллер состоит из нескольких встроенных частей, что делает его компактным и производительным при меньшем пространстве и меньших затратах.Ниже приведены основные части микроконтроллера.

ЦП

  • ЦП считается мозгом микроконтроллера, который принимает инструкции в форме программирования и помогает их выполнять.
  • Он ведет себя как мост, который обменивается данными с различными компонентами и действиями, происходящими внутри одного чипа.
  • Возможность индивидуального программирования, доступная в микроконтроллере, делает его более надежным и удобным для пользователя.
  • CPU имеет встроенные регистры, которые разделены на регистры данных двух типов и регистры адресации.
  • Регистры данных, также известные как аккумуляторы, используются для логических команд и команд сдвига.
  • Регистры адресации используются для хранения адресов для доступа к данным памяти. Указатель стека называется адресным регистром, который направляет память, используемую для аппаратного стека. Аппаратный стек используется для вызовов и возвратов прерываний, а также для вызовов и возвратов подпрограмм.
  • Конструкция указателя аппаратного стека не является обязательной, некоторые ЦП поставляются с одинарным регистром связи, который ведет себя как глубокий стек на ЦП и помогает в быстрых вызовах и возвратах подпрограмм.
  • ЦП микроконтроллера способен выполнять серию инструкций, некоторые из которых являются инструкциями манипулирования данными, некоторые — логическими инструкциями, а некоторые — инструкциями сдвига.

Ввод / вывод

  • В микроконтроллер встроены различные порты ввода / вывода.
  • Они используются для подключения к микроконтроллеру внешних устройств, таких как принтеры, ЖК-дисплей, светодиоды, внешняя память.
  • В микроконтроллере имеется несколько последовательных портов, которые используются для последовательного подключения периферийных устройств к микроконтроллеру.

Память

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

Таймеры и счетчики

  • Таймеры и счетчики очень удобны для решения различных задач, включая генерацию импульсов, генерацию частоты, измерение, функцию синхронизации и модуляцию.
  • Функции таймера и счетчиков синхронизируются с часами микроконтроллера, используются для измерения временных интервалов между двумя событиями и могут подсчитывать до 255 отсчетов для 8-битного микроконтроллера и 65535 для 16-битного микроконтроллера.

АЦП и ЦАП

  • АЦП — это аналого-цифровой преобразователь, который преобразует аналоговый сигнал в цифровую форму, такую ​​как преобразование аналогового сигнала датчика в цифровую форму.
  • Точно так же ЦАП представляет собой цифро-аналоговый преобразователь, который преобразует цифровой сигнал в аналоговую форму, которая может использоваться для управления двигателем.

Interpret Control

  • Interpret control используется для установки задержки в выполняющейся программе. Эта задержка может быть создана внутренне или внешне.

Специальный функциональный блок

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

Типы микроконтроллеров

В зависимости от памяти, архитектуры и размера слова микроконтроллеры подразделяются на различные типы. Некоторые из них следующие. Классификация

на основе битов

  • Микроконтроллеры бывают 8-битные, 16-битные, 32-битные и 64-битные. Некоторые наиболее продвинутые микроконтроллеры имеют биты более 64, которые способны выполнять определенные функции во встроенных системах.
  • 8-битный микроконтроллер способен выполнять более мелкие арифметические и логические инструкции.Наиболее распространенными 8-битными микроконтроллерами являются atmel 8031 ​​и 8051.
  • В отличие от 8-битных микроконтроллеров, 16-битный микроконтроллер выполняет программу с более высокой точностью и точностью. Наиболее распространенный 16-разрядный микроконтроллер — 8096.
  • 32-разрядный микроконтроллер применяется в системах автоматического управления и робототехнике, где требуется высокая прочность и надежность. Офисные машины и некоторые системы питания и связи используют 32-битный контроллер для выполнения различных инструкций.

Классификация на основе памяти

  • На основе памяти микроконтроллеры делятся на два типа i.д. микроконтроллеры с внешней памятью и микроконтроллеры со встроенной памятью.
  • Когда встроенной системе требуется как микроконтроллер, так и внешний функциональный блок, который не встроен в микроконтроллер, микроконтроллер называется микроконтроллером с внешней памятью. 8031 — отличный пример микроконтроллера с внешней памятью.
  • Когда все функциональные блоки объединены в одну микросхему, которая связана со встроенной системой, микроконтроллер называется микроконтроллером встроенной памяти.8051 — отличный пример микроконтроллеров со встроенной памятью.

Классификация на основе набора команд

  • На основе набора команд микроконтроллеры подразделяются на два типа: CISC-CISC и RISC-RISC.
  • CISC упоминается как компьютер со сложным набором команд. Одной действующей инструкции достаточно, чтобы заменить количество инструкций.
  • RISC упоминается как компьютер с сокращенным набором команд. RISC помогает сократить время выполнения программы.Это достигается за счет сокращения тактового цикла на инструкцию.

Типы микроконтроллеров

Существует множество типов микроконтроллеров, и я подробно остановлюсь на некоторых из них:

8051 Микроконтроллер

  • Наиболее часто используемые микроконтроллеры принадлежат к семейству 8051.
  • 8051 микроконтроллеры считаются идеальным выбором для большинства профессионалов.
  • Изобретенный Intel, микроконтроллер 8051 состоит из двух элементов, включая 8052 и 8031.
  • 8052 состоит из 3-х кратного и 256 байт RAM. Он обладает теми же функциями, что и микроконтроллер 8051.
  • Вы также можете рассматривать 8051 как подмножество микроконтроллера 8052 ..
  • Точно так же 8031 ​​обладает теми же функциями, что и 8051, за исключением ПЗУ.
  • Однако для выполнения инструкций в этот чип может быть встроено внешнее ПЗУ объемом 64 Кбайт.

8051 Архитектура микроконтроллера

  • Микроконтроллер 8051 — это 40-контактный 8-битный микроконтроллер, изобретенный Intel в 1981 году.
  • 8051 поставляется со 128 байтами ОЗУ и 4 КБ встроенного ПЗУ.
  • В зависимости от приоритетов в микроконтроллер может быть встроена внешняя память объемом 64 КБ.
  • В этот микроконтроллер встроен кристаллический генератор с частотой 12 МГц.
  • В этот микроконтроллер интегрированы два 16-битных таймера, которые можно использовать как таймер, а также как счетчик.
  • 8051 состоит из 5 прерываний, включая внешнее прерывание 0, внешнее прерывание 1, прерывание таймера 0, прерывание таймера 1 и прерывание последовательного порта.Он также состоит из четырех 8-битных программируемых портов.

PIC Микроконтроллер

  • Технология микрочипов изобрела контроллер периферийного интерфейса (PIC), который очень распространен среди большинства профессионалов и экспертов.
  • Micro-Chip Technology очень заботится о потребностях и требованиях клиентов, поэтому они постоянно обновляют свои продукты, чтобы обеспечить первоклассный сервис.
  • Низкая стоимость, возможность последовательного программирования и широкая доступность выделяют этот микроконтроллер среди остальных.

PIC Microcontroller Architechture

  • PIC микроконтроллер поддерживает архитектуру Гарварда.
  • Он состоит из ПЗУ, ЦП, последовательной связи, таймеров и счетчиков, генераторов, прерываний, портов ввода / вывода и набора регистров, которые также работают как ОЗУ.
  • Регистры специального назначения также встроены в аппаратное обеспечение микросхемы.
  • Низкое энергопотребление делает этот контроллер идеальным выбором для промышленных целей.
  • Каждый PIC задействует «стек», способный сохранять адреса возврата.
  • В более старых версиях микроконтроллеров PIC доступ к стеку нельзя было получить с помощью программирования, но к более поздним версиям можно было легко получить доступ с помощью программирования.
  • Компьютера с низкими техническими характеристиками достаточно для запуска программного обеспечения, способного программировать схему микроконтроллера PIC.
  • Последовательный порт или порт USB используются для соединения компьютера с микроконтроллером.

AVR Микроконтроллер

  • AVR называется Advances Virtual RISC, который был произведен компанией Atmel в 1966 году.
  • Он поддерживает Гарвардскую архитектуру, в которой программа и данные хранятся в разных пространствах микроконтроллера и к ним легко получить доступ.
  • Считается более ранним типом контроллеров, в которых для хранения программ используется встроенная флэш-память.

Архитектура AVR

  • Архитектура AVR была разработана Вегардом Волланом и Альф-Эгилем Богеном.
  • AT90S8515 был первым контроллером, основанным на архитектуре AVR.
  • Однако AT90S1200 был первым микроконтроллером AVR, который был коммерчески доступен в 1997 году.
  • Флэш-память, EEPROM и SRAM интегрированы в один чип, что исключает возможность объединения любой внешней памяти с контроллером.
  • Этот контроллер имеет сторожевой таймер и множество энергосберегающих спящих режимов, которые делают этот контроллер надежным и удобным для пользователя.

Приложения

  • Периферийный контроллер ПК
  • Робототехника и встроенные системы
  • Биомедицинское оборудование
  • Системы связи и питания
  • Автомобили и системы безопасности
  • Имплантированное медицинское оборудование
  • Устройства обнаружения пожара
  • светочувствительные устройства
  • Устройства промышленной автоматизации
  • Устройства управления технологическим процессом
  • Измерение и контроль вращающихся объектов

Это все на сегодня.Надеюсь, вам понравилась статья. Наша задача — шаг за шагом предоставлять вам полезную информацию, чтобы вы могли ее усвоить без особых усилий. Однако, если вы все еще настроены скептически или сомневаетесь, вы можете спросить меня в разделе комментариев ниже. Я хотел бы помочь вам в соответствии с моим опытом. Следите за обновлениями.

Руководство по микроконтроллерам для начинающих

от Джона Уайлдера

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

Эта статья не пытается рассказать о каком-либо конкретном микроконтроллере / микропроцессоре, но представляет собой скорее учебник, объясняющий общие концепции, применимые ко всем микроконтроллерам / микропроцессорам.

Во-первых, давайте … зададим себе пару вопросов. Первый вопрос —

Что такое микроконтроллер?
Микроконтроллер — это крошечный микрокомпьютер на микросхеме. Он имеет ЦП, ОЗУ (оперативное запоминающее устройство), регистры специальных функций, память ПЗУ программ, память ПЗУ данных, от одного до нескольких портов параллельного ввода / вывода (ввода / вывода) и может иметь множество встроенных периферийных устройств, включая но не ограничиваясь аналого-цифровой преобразователь (АЦП), цифро-аналоговый преобразователь (ЦАП), Serial UART, один или несколько таймеров, / на источник опорного напряжения чипа, захвата / сравнения / ШИМ (широтно-импульсная модуляция) модуля компараторов , Главный синхронный последовательный порт для связи SPI (последовательный периферийный интерфейс) / I2C (меж интегральная схема), порт USB, порт Ethernet, встроенные генераторы, а также множество других периферийных устройств.

Что такое микропроцессор (подождите, вы имеете в виду, что разница действительно есть)?
Микропроцессор — это все, что есть микроконтроллер, но без программного ПЗУ на кристалле. Программный код находится вне кристалла в отдельной внешней микросхеме EPROM.

ПЗУ программ и ПЗУ данных
Встроенная память ПЗУ (постоянное запоминающее устройство) микроконтроллера подобна жесткому диску микроконтроллера. Имеет две перегородки. Один раздел зарезервирован для хранения программного кода, а другой раздел зарезервирован для постоянного хранения данных, которые используются микросхемой во время нормального выполнения программы.На данном микроконтроллере PIC, имеющем, скажем, 8 Кбайт программного пространства, программное пространство будет занимать адреса ПЗУ 0x0000 — 0x1FFF (или 0-8191 в десятичном виде). Пространство данных начнется с адреса ПЗУ программы 0x2100. Если бы пространство ПЗУ данных было 256 байтов, пространство ПЗУ данных занимало бы адреса ПЗУ 0x2100 — 0x21FF (или 8448-8704 в десятичной системе).

ЦП
ЦП означает Центральный процессор. По сути, это «мозг» микроконтроллера. Это то, что извлекает инструкции из памяти кода и выполняет полученные инструкции.

ОЗУ данных
ОЗУ данных (оперативное запоминающее устройство) — это пространство данных, которое используется для временного хранения постоянных и переменных значений, которые используются микроконтроллером во время нормального выполнения программы. Объем физического пространства RAM на данном микроконтроллере варьируется от одного микроконтроллера к другому. ОЗУ данных на микроконтроллере организовано в несколько «регистров», каждый из которых имеет свой уникальный «адрес». Регистр RAM на 8-битном микроконтроллере может содержать всего 8 бит или один байт данных.Типичная спецификация пространства RAM может указывать, что оно составляет 256 x 8. Это означает, что в RAM всего 256 регистров, каждый из которых может содержать 8 бит.

Регистр — это просто место в памяти, в которое вы можете записывать или читать данные. Некоторые из нас называют регистры «местонахождением».

Регистры специальных функций
Регистры специальных функций (или просто SFR) в микроконтроллере аналогичны регистрам в ОЗУ данных. Вы можете записывать в них данные, а также читать из них данные.Они отличаются тем, что некоторые SFR напрямую управляют аппаратным обеспечением микроконтроллера, тогда как другие управляются аппаратным обеспечением микроконтроллера.

Каждый бит в SFR назначается функции. В SFR у вас есть биты управления и биты флагов. Управляющие биты подобны «переключателям», которые включают или выключают функцию в зависимости от того, записываете ли вы 1 или 0 в эту битовую позицию в SFR. Биты флагов похожи на «световые индикаторы», которые указывают, существует ли данное условие, в зависимости от того, равен ли бит флага 1 или 0.Биты управления напрямую управляют оборудованием. Биты флагов контролируются оборудованием. В любой данной программе мы обычно записываем в управляющие биты, пока читаем биты флагов (некоторые биты флагов должны быть очищены вручную путем записи в них, в зависимости от микроконтроллера… подробнее об этом позже).

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

Конфигурационные биты
Большинство микроконтроллеров имеют специальные биты, известные как «конфигурационные биты». Эти биты настраивают специальные параметры микроконтроллера, включая, помимо прочего, —

.

* Тип осциллятора
* Сторожевой таймер Вкл. / Выкл.
* Таймер включения / выключения
* Вкл. / Выкл. Сброса при пониженном энергопотреблении
* Вкл. / Выкл. Программирования низкого напряжения
* Вкл. / Выкл. Аварийного контроля часов
* Внутреннее / внешнее переключение Вкл. / Выкл.

В микроконтроллере PIC есть даже биты конфигурации для защиты программного кода и защиты кода данных.Эти биты предотвращают чтение программы или пространств данных внешним программным оборудованием, чтобы другие не могли украсть ваш код. На микросхеме Atmel AT89S (производной от 8051) это устанавливается так называемыми «битами блокировки».

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

АЛУ (Арифметико-логический блок)
Этот аппаратный компонент по существу отвечает за все математические и логические операции, выполняемые микроконтроллером. На большинстве микроконтроллеров с ALU будет связано 3 битовых флага —

.

* Нулевой бит — Этот бит флага устанавливается в 1 аппаратным обеспечением, когда математическая операция приводит к нулевому результату.Аппаратно сбрасывает его на 0 всякий раз, когда математическая операция дает ненулевой результат.

* Бит переноса / заимствования — этот бит флага работает как бит переноса для операций сложения, а также как флаг заимствования для операций вычитания. «Перенос» происходит, когда результат операции сложения приводит к значению, превышающему то, что регистр может хранить. 8-битный регистр может содержать максимальное значение 255 (FF в шестнадцатеричном формате или 11111111 в двоичном).

Если операция сложения приводит к результату больше 255, флаг переноса устанавливается в 1.Если в результате операции сложения результат меньше 255, перенос не выполняется, поэтому флаг переноса сбрасывается до 0.

Для операций вычитания вместо этого флаг переноса работает как флаг заимствования. Флаг заимствования работает наоборот, чем флаг переноса. Если операция вычитания приводит к отрицательному результату, флаг заимствования сбрасывается до 0. Если операция вычитания дает положительный результат, флаг заимствования устанавливается в 1.

* Бит переноса / заимствования цифр — Этот бит флага выполняет то же действие, что и флаг переноса / заимствования, но работает только для указания того, происходит ли перенос / заимствование только между битами 3 и 4.

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

Нулевой бит — это удобный флаговый бит, который позволяет нам сравнивать два значения, чтобы увидеть, равны ли они / не равны. Если мы возьмем два числа и вычтем их, результат будет равен нулю, если они равны, и ненулевым, если не равны. Итак, чтобы сравнить два значения, чтобы увидеть, равны ли они / не равны, мы вычитаем их, затем читаем / проверяем нулевой бит, чтобы увидеть, является ли бит 1 или 0.Если нулевой бит = 1, результат вычитания равен нулю, что означает, что два значения равны. Если нулевой бит = 0, результат вычитания не равен нулю, что означает, что два значения не равны.

Бит переноса / заимствования — это удобный флаг, который позволяет нам сравнивать два значения, чтобы увидеть, больше или меньше одно значение другого значения. Пример… у нас есть два значения: VALUE1 и VALUE2. В коде выполняем эту операцию —

VALUE1 — VALUE2 = VALUE3

После выполнения операции вычитания мы считываем / проверяем высокое / низкое состояние бита переноса / заимствования.

Если VALUE2 больше VALUE1, результат вычитания будет отрицательным, что сбросит бит переноса / заимствования в 0. Если VALUE2 меньше VALUE1, результат вычитания будет положительным, что установит перенос / одолжить бит 1.

Обратитесь к таблице данных, чтобы узнать, какой SFR содержит эти биты. На микроконтроллерах PIC биты флага ALU находятся в STATUS SFR. В MCS-51 они находятся в PSW SFR (слове состояния программы).

Программный счетчик
Программный счетчик — это «адресный указатель», который сообщает CPU, где найти следующую инструкцию для выполнения в программном ПЗУ.ЦП получит инструкцию, которая находится по адресу ПЗУ программы, загруженному в текущий момент в счетчик программ.

Когда микроконтроллер сбрасывается, программный счетчик устанавливается на 0x0000. ЦП получит инструкцию, которая находится по адресу ПЗУ программы 0x0000. После получения этой инструкции счетчик программ автоматически увеличивается до значения 0x0001. Счетчик программ непрерывно автоматически увеличивается на значение 1, что заставляет ЦП последовательно обращаться к содержимому каждой ячейки регистра в программном ПЗУ.Это продолжается до тех пор, пока ЦП не получит и не выполнит инструкцию, которая изменяет значение счетчика программ. Такими инструкциями, которые делают это, являются инструкции перехода (ajmp и ljmp на MCS-51, goto на PIC), вызовы подпрограмм (acall и lcall на MCS-51, вызов на PIC) и любые инструкции, которые добавляют или вычитают значение к или от счетчик программ.

Стек
Стек на микроконтроллере в основном используется во время вызовов подпрограмм и переходов к обработчику прерывания.Это буфер «последний вошел — первым ушел», который используется для хранения адресов возврата. Во время вызова подпрограммы текущий адрес программного счетчика «помещается» в стек с добавлением к нему +1 смещения, затем программный счетчик модифицируется значением адреса, в котором находится вызываемая подпрограмма. Это заставляет счетчик программы переходить к коду подпрограммы для выполнения подпрограммы.

В конце подпрограммы будет инструкция «возврата» (возврат на MCS-51, возврат на PIC). После выполнения инструкции возврата стек «выталкивается», и последнее значение адреса ПЗУ, которое было помещено в стек, выталкивается из стека и возвращается в счетчик программ.Это заставляет счетчик программ вернуться к инструкции, которая находится после инструкции, которая вызвала подпрограмму (отсюда необходимость смещения +1 в то время, когда адрес ПК помещается в стек), и выполнение программы продолжается с того места, где оно было остановлено. перед вызовом подпрограммы.

Некоторые микроконтроллеры имеют «программный стек» (MCS-51). Программный стек использует часть внутренней памяти микроконтроллера в качестве пространства стека. Другие микроконтроллеры имеют аппаратный стек (PIC).В аппаратном стеке стек представляет собой собственное выделенное пространство, отдельное от всех остальных пространств памяти кристалла.

На некоторых микроконтроллерах стек доступен для записи. Это позволяет нам использовать стек для временного резервного копирования критических регистров во время вызовов подпрограмм и выполнения обработчика прерываний. Перед выполнением подпрограммы или обработчика прерывания содержимое регистров для резервного копирования помещается в стек. Затем, непосредственно перед возвратом из подпрограммы или обработчика прерывания, содержимое, которое мы поместили в стек в начале подпрограммы, извлекается из стека по одному, а затем восстанавливается в исходное положение в обратном порядке по сравнению с тем, как они были помещены в стек (помните… Последним пришел — первым ушел).

Хорошим примером этого может быть резервное копирование аккумулятора и регистров PSW на MCS-51 во время выполнения процедуры обработчика прерывания —

Код (текст):

push ACC; резервное копирование аккумулятора в стек
push PSW; резервное копирование слова состояния программы в стек

; здесь выполнить код обработчика прерывания

pop PSW; восстановить слово состояния программы
pop ACC; восстановить аккумулятор
reti; вернуться к основному коду из прерывания

Как видите, сначала мы помещаем содержимое аккумулятора в стек, а затем помещаем содержимое PSW в стек после него.Затем выполняется код обработчика прерывания.

После выполнения кода обработчика прерывания PSW сначала извлекается из стека, затем аккумулятор извлекается из стека после него… в порядке, обратном тому, как они были вытолкнуты.

Типичный SFR
Типичный SFR настроен, как показано ниже.

Код (текст):

| ПОРТ 1 SFR |
———————————————————
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| P1.7 | P1.6 | P1.5 | P1.4 | P1.3 | P1.2 | P1.1 | P1.0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |

Это SFR защелки порта на микроконтроллере MCS-51 для параллельного порта 1. Каждый порт MCS-51 является 8-битным параллельным портом, и каждый бит в SFR порта назначен каждому контакту порта. P1.0 будет контактом 0 порта 1, P1.1 будет контактом 1 порта 1, P1.2 будет контактом 2 порта 1 и т. Д.

Как показано, у нас есть все нули, записанные в каждый бит в SFR защелки порта 1.Это переведет все контакты порта 1 в состояние низкого уровня (0 вольт). Если бы мы записали 1 в любой из битов SFR порта, это установит контакт, связанный с позицией бита, в которую мы записываем «1», в высокое состояние (+ 5В).

Пример, давайте запишем значение 01010101 в SFR порта 1 —

Код (текст):

| ПОРТ 1 SFR |
———————————————————
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| P1.7 | P1.6 | P1.5 | P1.4 | P1.3 | P1.2 | P1.1 | P1.0 |
| 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |

Как показано, это переведет контакты P1.0, P1.2, P1.4 и P1.6 в состояние высокого уровня, а контакты P1.1, P1.3, P1.5 и P1.7 — в состояние низкого уровня.

Несколько слов о таблицах данных … и почему они так важны
Не все микроконтроллеры созданы равными. Каждый из них разработан с использованием определенного оборудования на кристалле. Все микроконтроллеры разных производителей имеют разную архитектуру.Вы обнаружите, что микроконтроллеры PIC сильно отличаются от микроконтроллеров MCS-51, так же как MCS-51 сильно отличается от, скажем, Motorola 65xx в отношении того, как реализованы SFR, как организована RAM данных, набор команд, конфигурационное слово, как параллельные порты работают и т.д. и т.п.

ЕДИНСТВЕННЫЙ способ точно узнать, как работать с микроконтроллером и его оборудованием, — это просмотреть его техническое описание. В таблице данных объясняется каждый SFR, каждая часть встроенного оборудования, абсолютные максимальные электрические характеристики, организация памяти программ / данных, как подключены параллельные порты и как они работают, сводка набора инструкций (для тех из вас, кто кодирует на ассемблере язык) и т. д.Практически все, что вам, как программисту, нужно знать о своем микроконтроллере, находится в его техническом описании.

Большинство из них находятся в свободном доступе в Интернете с помощью простого поиска в Google (я еще не нашел ни одного, которого нет). Заявление о том, что вы не смогли найти таблицу, не является приемлемым оправданием, когда дело доходит до этого. ЕДИНСТВЕННАЯ причина, по которой кто-либо откажется просматривать таблицу, — это либо то, что он слишком ленив, либо он не понимает их, но не хочет, чтобы другие знали, что они этого не делают.Я скажу прямо сейчас … на большинство вопросов форума, касающихся микроконтроллеров, можно было бы ответить самостоятельно, если бы человек нашел время, чтобы найти ответ в таблице данных.

Даташиты являются обязательными. Без них вы не сможете написать собственный код.

Об авторе
Джон Уайлдер — внештатный инженер-электронщик и энтузиаст электроники более 20 лет. Он четыре года проработал в ВМС США в качестве специалиста по авиационной электронике.Джон также играет на гитаре с 13 лет и начал объединять электронику и музыку с 15 лет. Джон построил свой первый ламповый усилитель в 17 лет. «Музыкальная электроника», — говорит Джон, — это его любовь и страсть.

Джон также является частым участником и страстным членом инженерного сообщества Electro-Tech-Online. В Electro-Tech-Online вы можете задавать вопросы и получать ответы от коллег-инженеров по всему, от микроконтроллеров, возобновляемых источников энергии и автомобильной электроники до моделирования схем и проектирования.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

2021 © Все права защищены. Карта сайта