Микро-ЭВМ – главный шаг массового применения компьютерной автоматизации в области управления. Так как в автоматизации основная задача контроль и регулирование параметров, то термин «контроллер» закрепился и в этой среде.
После перестройки начался активный импорт вычислительной техники, и название «однокристальная микро-ЭВМ» была вытеснена словом «Микроконтроллер» (подробнее о том, чем микроконтроллер отличается от микропроцессора смотрите здесь - Назначение и устройство микроконтроллеров).
В 2020 году, и последние десятилетие наиболее распространены следующие виды микроконтроллеров:
- 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel;
- 16-битные MSP430 фирмы TI;
- 32-битные микроконтроллеры, архитектуры ARM. Она продаётся разработчиками различным фирмам, на базе которой выпускается масса различных продуктов.
В Советском союзе техника не стояла на месте. Ученные не только копировали наиболее удачные и интересные зарубежные разработки, но и занимались разработкой уникальных проектов. Таким образом к 1979 году в НИИ ТТ была разработана К1801ВЕ1, эта микроархитектура называлась «Электроника НЦ» и имела 16 разрядов.
Смотрите также: Виды и устройство микроконтроллеров AVR
Различия микроконтроллеров
Микроконтроллеры можно разделить по таким критериям:
- Разрядность;
- Система команд;
- Архитектура памяти.
Разрядность – это длина одного слова обрабатываемого контроллером или процессором, чем она больше, тем быстрее микроконтроллер может обработать большие массивы данных, но такой подход не всегда справедлив, для каждой задачи выдвигаются индивидуальные требования, как по скорости, так и по способу обработку, например, применение 32-х разрядного ARM микропроцессор для работы в простых устройствах, оперирующих с 8 битным словами может быть не обосновано как по удобству написания программы и обработки информации, так и по себе стоимость.
Однако, по статистике на 2017 год, стоимость таких контроллеров активно снижается, и, если так будет продолжаться и далее – он будет дешевле простейших PIC контроллеров, при наличии гораздо большем наборе функций. Не понятно только одно – это маркетинговый ход и занижение цены, или реальный технологический прогресс.
Деление происходит на:
- 8-бит;
- 16-бит;
- 32-бита;
- 64-бита.
Деление по типу системы команд:
- RISC-архитектура, или сокращенная система команд. Ориентирована на быстрое выполнение базовых команд за 1, реже 2 машинных цикла, а также имеет большое количество универсальных регистров, и более длинный способ доступа к постоянной памяти. Архитектурна характерна для систем под управление UNIX;
- СISC-архитектура, или полная система команд, характерна прямая работа с памятью, большее число команд, малое число регистров (ориентирована на работу с памятью), длительность команд от 1 до 4 машинных циклов. Пример – процессоры Intel.
Деление по типу памяти:
- Архитектура Фон-Неймана – основная черта общая область памяти для команд и данных, при работе с такой архитектурой в результате ошибки программиста данные могут записаться в область памяти программ и дальнейшее выполнение программы станет невозможным. Пересылка данных и выборка команды не может осуществляться одновременно по тем же причинам. Разработана в 1945 году.
- Гарвардская архитектура – раздельная память данных и память программ, использовалась в первые на компьютерах семейства Mark. Разработана в 1944 году.
В результате внедрения микропроцессорных систем размеры устройств снизились, а функционал увеличился. Выбор архитектуры, разрядности, системы команд, структуры памяти – влияет на конечную стоимость устройства, поскольку при единичном производстве разница в цене может быть не значительно, но при тиражировании – более чем ощутимой.
Электронная книга - руководство про микроконтроллеры AVR для начинающих
Пошаговое обучение программированию и созданию устройств на микроконтроллерах AVR
У электронщиков, специализирующихся на проектировании микроконтроллерных устройств, существует термин "быстрый старт". Относится он к случаю, когда надо в короткий срок опробовать микроконтроллер и заставить его выполнять простейшие задачи.
Цель состоит в том, чтобы, не углубляясь в подробности, освоить технологию программирования и быстро получить конкретный результат. Полное представление, навыки и умения появятся позже в процессе работы.
Освоить работу с микроконтроллерами в режиме "быстрый старт", научиться их программировать и создавать различные полезные умные электронные устройства можно легко с помощью обучающих видеокурсов Максима Селиванова в которых все основные моменты разложены по полочкам.
Методика быстрого изучения принципов работы с микроконтроллерами основывается на том, что достаточно освоить базовую микросхему, чтобы затем достаточно уверенно составлять программы к другим ее разновидностям. Благодаря этому первые опыты по программировании микроконтроллеров проходят без особых затруднений. Получив базовае знания можно приступать к разработке собственных конструкций.
На данный момент у Максима Селиванова есть 4 курса по созданию устройств на микроконтроллерах, построенные по принципу от простого к сложному.
1. Программирование микроконтроллеров для начинающих
Курс для тех, кто уже знаком с основами электроники и программирования, кто знает базовые электронные компоненты, собирает простые схемы, умеет держать паяльник и желает перейти на качественно новый уровень, но постоянно откладывает этот переход из-за сложностей в освоении нового материала.
Курс замечательно подойдет и тем, кто только недавно предпринял первые попытки изучить программирование микроконтроллеров, но уже готов все бросить от того, что у него ничего не работает или работает, но не так как ему нужно (знакомо?!).
Курс будет полезен и тем, кто уже собирает простенькие (а может и не очень) схемы на микроконтроллерах, но плохо понимает суть того как микроконтроллер работает и как взаимодействует с внешними устройствами.
2. Программирование микроконтроллеров на языке С
Курс посвящен обучению программирования микроконтроллеров на языке Си. Отличительная особенность курса - изучение языка на очень глубоком уровне. Обучение происходит на примере микроконтроллеров AVR. Но, в принципе, подойдет и для тех, кто использует другие микроконтроллеры.
Курс рассчитан на подготовленного слушателя. То есть, в курсе не рассматриваются базовые основы информатики и электроники и микроконтроллеров. Но, что бы освоить курс понадобятся минимальные знания по программированию микроконтроллеров AVR на любом языке. Знания электроники желательны, но не обязательны.
Курс идеально подойдет тем, кто только начал изучать программирование AVR микроконтроллеров на языке С и хочет углубить свои знания. Хорошо подойдет и тем, кто немного умеет программировать микроконтроллеры на других языках. И еще подойдет обычным программистам, которые хотят углубить знания в языке Си.
3. Создание устройств на микроконтроллерах на языке С
Этот курс для тех, кто не хочет ограничиваться в своем развитии простыми или готовыми примерами. Курс отлично подойдет тем, кому важно создание интересных устройств с полным пониманием того, как они работают. Курс хорошо подойдет и тем, кто уже знаком с программированием микроконтроллеров на языке Си и тем, кто уже давно программирует их.
Материал курса прежде всего ориентирован на практику использования. Рассматриваются следующие темы: радиочастотная идентификация, воспроизведение звука, беспроводной обмен данными, работа с цветными TFT дисплеями, сенсорным экраном, работа с файловой системой FAT SD-карты.
4. Программирование дисплеев NEXTION
Дисплеи NEXTION представляют собой программируемые дисплеи с тачскрином и UART для создания самых разных интерфейсов на экране. Для программирования используется очень удобная и простая среда разработки, которая позволяет создавать даже очень сложные интерфейсы для различной электроники буквально за пару вечеров! А все команды передаются через интерфейс UART на микроконтроллер или компьютер. Материал курса составлен по принципу от простого к сложному.
Этот курс рассчитан на тех, кто хотя бы немного имеет опыта в программировании микроконтроллеров или arduino. Курс отлично подойдет и для тех, кто уже пытался изучать дисплеи Nextion. Из курса вы узнаете много новой информации, даже если думаете, что хорошо изучили дисплей!
Полный курс обучения программированию микроконтроллеров со скидкой: Все 4 курса со скидкой