Виды микропроцессоров
История создания и усовершенствования микроконтроллеров. Список периферийных устройств, которые могут использоваться в них. Производители микроконтроллеров: Intel, Altera, Analog Devices Inc., Texas Instruments. Языки программирования микроконтроллеров.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 19.01.2017 |
Размер файла | 25,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Санкт-Петербургский политехнический университет Петра Великого
Кафедра Информационные и Управляющие Системы
Курсовая работа
по дисциплине: «Микропроцессорные системы»
на тему: «Обзор оборудования для создания пилот -проектов»
Санкт-Петербург 2016
Введение
Микроконтроллер - микросхема, предназначенная для управления электронными устройствами.
Типичный микроконтроллер сочетает на одном кристалле функции процессора и периферийных устройств, содержит ОЗУ и (или) ПЗУ. По сути, это однокристальный компьютер, способный выполнять относительно простые задачи.
Отличается от микропроцессора интегрированными в микросхему устройствами ввода-вывода, таймерами и другими периферийными устройствами. микроконтроллер периферийный программирование
С появлением однокристальных микро-ЭВМ связывают начало эры массового применения компьютерной автоматизации в области управления.
В связи со спадом отечественного производства и возросшим импортом техники, в том числе вычислительной, термин «микроконтроллер» вытеснил из употребления ранее использовавшийся термин «однокристальная микро- ЭВМ».
Первый патент на однокристальную микро-ЭВМ был выдан в 1971 году инженерам М. Кочрену и Г. Буну, сотрудникам американской Texas Instruments. Именно они предложили на одном кристалле разместить не только процессор, но и память с устройствами ввода-вывода.
Через 4 года, в 1980 году, Intel выпускает следующий микроконтроллер:
i8051. Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер i8051 являлся для своего времени очень сложным изделием -- в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре i8086.
На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов.
Популярностью у разработчиков пользуются 8-битные микроконтроллеры. В СССР велись разработки оригинальных микроконтроллеров, также осваивался выпуск клонов наиболее удачных зарубежных образцов. В 1979 году в СССР НИИ ТТ разработали однокристальную 16-разрядную ЭВМ К1801ВЕ1, микроархитектура которой получила название «Электроника НЦ».
Описание
При проектировании микроконтроллеров приходится соблюдать компромисс между размерами и стоимостью с одной стороны и гибкостью и производительностью с другой. Для разных приложений оптимальное соотношение этих и других параметров может различаться очень сильно.
Поэтому существует огромное количество типов микроконтроллеров, отличающихся архитектурой процессорного модуля, размером и типом встроенной памяти, набором периферийных устройств, типом корпуса и т.д.
В отличие от обычных компьютерных микропроцессоров, в микроконтроллерах часто используется гарвардская архитектура памяти, то есть раздельное хранение данных и команд в ОЗУ и ПЗУ соответственно.
Кроме ОЗУ, микроконтроллер может иметь встроенную энергонезависимую память для хранения программы и данных. Многие модели контроллеров вообще не имеют шин для подключения внешней памяти.
Наиболее дешёвые типы памяти допускают лишь однократную запись, либо хранимая программа записывается в кристалл на этапе изготовления (конфигурацией набора технологических масок). Такие устройства подходят для массового производства в тех случаях, когда программа контроллера не будет обновляться. Другие модификации контроллеров обладают возможностью многократной перезаписи программы в энергонезависимой памяти.
Неполный список периферийных устройств, которые могут использоваться в микроконтроллерах, включает в себя:
· универсальные цифровые порты, которые можно настраивать как на ввод, так и на вывод;
· различные интерфейсы ввода-вывода, такие, как UART, IІC, SPI, CAN, USB, IEEE 1394, Ethernet;
· аналого-цифровые и цифро-аналоговые преобразователи;
· компараторы;
· широтно-импульсные модуляторы (ШИМ-контроллер);
· таймеры;
· контроллеры бесколлекторных двигателей, в том числе шаговых;
· контроллеры дисплеев и клавиатур;
· радиочастотные приемники и передатчики;
· массивы встроенной флеш-памяти;
· встроенные тактовый генератор и сторожевой таймер;__
Аппаратная часть.
Производители:
Intel - свой выпуск микроконтроллеров, компания начала с серии i8048, но наибольшую популярность приобрело семейство i8051, вышедшее в 1980 году и официально названное MCS 51. Это 8-ми разрядный микроконтроллер с Гарвардской архитектурой, производился по кмоп технологии. Имел на своем борту ОЗУ 128 байт, ПЗУ 4Кб, 8-ми битную шину данных и 16-и битную шину адреса, 2 таймера, 4 порта ввода/вывода и последовательный интерфейс. На базе семейства i8051 был разработан отечественный аналог КР1816ВЕ51. Так как это семейство было очень удачное, то в настоящее время существует большое множество контроллеров, совместимых с i8051.
Обзор основных микроконтроллеров Intel:
Микроконтроллеры семейства MCS-51.
Архитектура MCS-51 получила свое название от первого представителя этого семейства - микроконтроллера 8051, выпущенного в 1980 году на базе технологии CMOS. Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер 8051 являлся для своего времени очень сложным изделием - в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре 8086.
Основными элементами базовой архитектуры являются: - 8-разрядное АЛУ на основе аккумуляторной архитектуры; - 4 банка регистров, по 8 в каждом; - встроенная память программ 4Кбайт; - внутреннее ОЗУ 128 байт; - булевый процессор -2 шестнадцатиразрядных таймера; - контроллер последовательного канала (UART); - контроллер обработки прерываний с двумя уровнями приоритетов; - четыре 8-разрядных порта ввода/вывода, два из которых используются в качестве шины адреса/данных для доступа к внешней памяти программ и данных; - встроенный тактовый генератор.
Микроконтроллеры семейства MCS-251.
Изначально наиболее "узкими" местами архитектуры MCS-51 были 8-разрядное АЛУ на базе аккумулятора и относительно медленное выполнение инструкций (для выполнения самых быстрых инструкций требуется 12 периодов тактовой частоты). Это ограничивало применение микроконтроллеров семейства в приложениях, требующих повышенного быстродействия и сложных вычислений (16- и 32- битовых). Насущным стал вопрос принципиальной модернизации старой архитектуры. Проблема модернизации осложнялась тем, что к началу 90-х годов уже была создана масса наработок в области программного и аппаратного обеспечения, и одной из основных задач разработки новой архитектуры была реализация аппаратной и программной совместимости со старыми разработками на базе MCS-51. Для решения этой задачи была создана совместная группа из специалистов компаний Intel и Philips. В результате в 1995 г. появилось 2 существенно отличающихся семейства: MCS-251/151 у Intel и 51XA у Philips (на последнем мы остановимся ниже).
Микроконтроллеры INTEL MCS 196/296 - высокопроизводительные 16-разрядные микроконтроллеры для решения задач встроенного управления оборудованием: от изделий бытовой техники, периферийных устройств ЭВМ до автомобильной и самолетной электроники.
В семейство MCS-196 фирмы Intel (иногда используется и название 80C196) входит более 30 разновидностей микроконтроллеров. Это 16-разрядные, быстродействующие ИС высокой степени интеграции, ориентированные на решение задач управления процессами в реальном масштабе времени. Типичные области применения для этих микроконтроллеров - управление двигателями, модемы, тормозные системы, контроллеры жестких дисков, медицинское оборудование.
История MCS-196 насчитывает более 12 лет. За это время специалисты фирмы Intel увеличили адресное пространство с 64 КБайт до 6 Мбайт, повысили тактовую частоту с 10 до 50 МГц, улучшили быстродействие в 16 раз и добились понижения цены на кристалл примерно в 4 раза.
Микроконтроллеры 80C196 фактически стали индустриальным стандартом для 16-разрядных встроенных систем управления, обеспечивая сочетание высоких технических показателей и экономической эффективности. Например, именно благодаря этим микроконтроллерам, установленным в системе управления зажиганием, специалистам концерна Ford удалось существенно снизить потребление топлива, уменьшить выбросы вредных веществ и одновременно повысить скоростные характеристики своих машин.
Altera -- один из крупнейших разработчиков ASIC, программируемых логических интегральных схем (ПЛИС), была основана в 1983 г. Предприятие входит в индекс котировок акций S&P 500, а на бирже NASDAQ значится под аббревиатурой ALTR. Как предприятие без собственных производственных мощностей, Altera концентрируется в первую очередь на разработке схем и модулей на основе таких языков описания аппаратуры, как VHDL, Verilog и собственный AHDL. В области производства микросхем сотрудничает с различными производителями.
Микросхема, выпущенная компанией «Altera»
Основные изделия -- это программируемые микросхемы, а также услуги по преобразованию проектов под ПЛИС в ASIC для массового производства. Компания также выпускает программы для разработки встроенного программного обеспечения для ПЛИС, а также компиляторы под ядро процессора собственной разработки. В мае 2011 фирмой Altera была выпущена, по технологии 28 нм, самая большая в мире микросхема, состоящая из 3,9 млрд транзисторов.
Обзор основных ПЛИС Altera:
Имеется линейка Max и линейка малобюджетных Cyclone. Max выпускается в нескольких модификациях. 7000S, 1995 года выпуска, уже не актуальна, разве что интересна 5 вольтовым I/O. 3000A, 2002 года, 300 нм технология, содержат от 32 до 512 макроячеек. Низкая цена для больших партий. Max II, 2004 года, 180 нм, построена на логических блоках, как FPGA, 240-2210 блоков, до 304 MHz. В TQFP с шагом 0.5 мм от 100 ножек. Есть вариант Max IIZ 2007 года с пониженным потреблением и частотами до 152 MHz. Max V, 2010 года, 180 нм, 40-2210 блоков, до 152 или 304 MHz, в зависимости от кол-ва блоков. Cyclone выпускаются в пяти поколениях, I -- V. Первое поколение было выпущено ещё в 2002 году, по 130 нм технологии. Последнее, пятое, совсем свежее, 2011 года, 28 нм технология. Соответственно отличаются потреблением и, наверное, быстродействием. Но все пять поколений остаются актуальными по сей день и на сайте отмечены рекомендуемыми для новых разработок.
Analog Devices, Inc. -- крупная американская компания, производитель интегральных микросхем для решения задач преобразования сигналов (в том числе аналого-цифровых преобразователей и цифровых сигнальных процессоров). Торговля акциями Analog Devices осуществляется на Нью-Йоркской фондовой бирже. Компания входит в список S&P 500. Компания основана в 1965 двумя выпускниками МИТ Рэйем Стейтом и Мэттью Лорбером. В 1969 организовано первичное публичное предложение акций и Analog Devices стала публичной компанией. Штаб-квартира компании находится в Норвуде, штат Массачусетс. Кроме того, несколько офисов компании размещено в других частях Соединенных Штатов. Фабрики компании расположены в США и Ирландии. Компания имеет исследовательские центры в Великобритании, Австралии, Германии, Испании, Израиле, Китае, Японии, Тайване и Индии.
Обзор микроконтроллера ADMC331
Микроконтроллер ADMC331 разработан для управления асинхронными двигателями, синхронными двигателями с постоянными магнитами, бесколлекторными машинами постоянного тока, вентильно-индукторными (SRD) двигателями и предназначен для применения в электроприводах бытовой техники (бездатчиковое управление двигателями, применяемыми в стиральных машинах, компрессорах холодильников, кондиционерах, вентиляторах, насосах) и недорогих регулируемых промышленных электроприводах. Микроконтроллер состоит из процессорного ядра, по-строенного на базе процессора ADSP-2171, интегрированной на кристалле памяти (2 Кслов кодового ПЗУ, 2 Кслов кодового ОЗУ, 1 Кслов ОЗУ данных) и набора периферийных устройств.
Texas Instruments - От остальных микроконтроллеров отличаются тем, что не содержат команд для загрузки регистров, и команд для выполнения операций над аргументами в регистрах. Из особенностей можно выделить очень низкое (по сравнению с другими микроконтроллерами) потребление энергии, имеют 5 режимов энергосбережения. Непосредственно для разработчика, из вкусностей стоит отметить библиотеку математики с плавающей точкой. Библиотека FPP подключается к рабочей программе, занимая в программной памяти 1 килобайт. Библиотека работает с числами в диапазоне от -1.099.1012 до +1.099.1012 . При помощи нее можно выполнять операции сложения, вычитания, умножения, деления, вычисления квадратного корня, вычисления тригонометрических функций и операции сравнения чисел. В состав библиотеки входят конвертеры, преобразующие числа в формат float и обратно. Разработчик получает возможность производить сложные вычисления с большой точностью.
Texas Instruments производит широкий круг цифровых сигнальных процессоров и набор инструментов под названием eXpressDSP, использующийся для разработки приложений для этих микросхем.
Микроконтроллеры и процессоры общего применения
MSP430 -- наиболее удачный опыт TI в сфере микроконтроллеров общего применения. Уже более 10 лет эта линейка является безусловным лидером в сегменте микропотребляющих микроконтроллеров общего применения.
TMS470 -- неудачная попытка сделать линейку однокристальных микроконтроллеров на базе архитектуры ARM7. В 2010 году продукты сняты с производства в связи с покупкой компании Luminary Micro и ставкой на её линейку ARM микроконтроллеров Stellaris.
Stellaris -- новая попытка утвердиться на рынке 32-битных микроконтроллеров общего применения разработки купленной компании Luminary Micro.
Микроконтроллеры реального времени для техники с особыми требованиями к обеспечению безопасности Hercules
TMS470M -- ядро ARM Cortex-M3. Рассчитаны на экономичную реализацию функций обеспечения безопасности. Аттестованы AEC-Q100 для использования в автомобилестроении и поддерживают сети LIN и CAN.
· TMS570 -- два работающих параллельно ядра ARM Cortex-R4 с возможностью выполнения операций с плавающей точкой. Рассчитаны на выполнение требований к производительности и безопасности, предъявляемых на транспорте -- на железных дорогах, в аэрокосмических и автомобильных системах. Разработаны в соответствии со стандартом IEC 61508 и имеют класс надёжности SIL-3, а также со стандартом ISO 26262 и имеют класс надёжности ASIL-D. Аттестованы AEC-Q100 для использования в автомобилестроении, поддерживают Ethernet, CAN и FlexRay.
· RM4x -- два работающих параллельно ядра ARM Cortex-R4 с возможностью выполнения операций с плавающей точкой. Рассчитаны на обеспечение самых высоких уровней производительности и безопасности для устройств промышленной автоматизации, медицинских приборов, сервоприводов и сетевых приложений. Разработаны в соответствии со 2-й редакцией стандарта IEC 61508 и соответствуют классу надёжности SIL-3. Обладают расширенными возможностями подключения Ethernet, CAN и USB.
Языки программирования микроконтроллеров
Языки программирования микроконтроллеров по своей структуре мало отличаются от классических языков для компьютеров. Единственным отличием становится ориентированность на работу со встроенными периферийными устройствами. Архитектура микроконтроллеров требует, например, наличия битово-ориентированных команд. Последние позволяют выполнять работу с отдельными линиями портов ввода/вывода или флагами регистров. Подобные команды отсутствуют в большинстве крупных архитектур. Даже ядро ARM, активно применяемое в микроконтроллерах, не содержит битовых команд, вследствие чего разработчикам пришлось создавать специальные методы битового доступа.
Ассемблер
Ассемблер является языком самого низкого уровня. При этом он позволяет наиболее полно раскрыть все возможности микроконтроллеров и получить максимальное быстродействие и компактный код. В некоторых случаях альтернативы ассемблеру нет, но тем не менее он имеет множество недостатков. Несмотря на получаемую компактность машинного кода, программа, написанная на языке Ассемблер, громоздка и труднопонимаема. Для ее создания требуется отличное знание архитектуры и системы команд микроконтроллеров. Ассемблер отлично подходит для программирования микроконтроллеров, имеющих ограниченные ресурсы, например 8-ми битных моделей с малым объемом памяти. Для больших программ и тем более 32-разрядных контроллеров, лучше использовать другие языки, отличающиеся более высоким уровнем. Это позволит создавать более сложные и при этом понятные программы.
С/С++
Язык программирования С/С++, относится к языкам более высокого уровня, по сравнению с Ассемблером. Программа на этом языке лучше понятна человеку. Достоинством С/С++ является огромное число программных средств и библиотек, позволяющих просто создавать необходимый код. Фактически, С/С++ сегодня стал основным языком разработки управляющих программ. Компиляторы данного языка реализованы практически для всех моделей микроконтроллеров. Стандартный язык дает возможность переноса программ с одной платформы на другую. Теоретически, используя разные компиляторы, можно преобразовать любую программу в команды микроконтроллера нужного типа. На практике дополнительно требуется учитывать архитектуру микроконтроллера каждого типа. Язык С/С++ имеет достаточно сложную для изучения структуру. Получаемый программный код конкретной задачи, имеет больший объем, чем код той же задачи, реализованной на Ассемблере. Тем не менее язык С/С++ следует признать единственным правильным выбором для профессионального программирования микроконтроллеров.
// Пример программы на языке С // Мигание встроенным светодиодом Arduino void setup() { pinMode(13, OUTPUT); // Инициализация выхода 13 } void loop() { digitalWrite(13, HIGH); // Зажечь светодиод delay(1000); // Задержка digitalWrite(13, LOW); // Зажечь светодиод delay(1000); // Задержка }
Pascal
Язык Pascal еще более удобен для восприятия и изучения. Тем не менее, он не имеет такого распространения как C/C++, особенно при программировании микроконтроллеров. Некоторые отдельные фирмы поддерживают данный язык, с целью упрощения перехода на контроллеры с больших ПК. В частности вариант языка под названием MicroPASCAL входит в состав поставки отладочных средств фирмы Mikroelektronika.
// Пример программы на языке MicroPASCAL // Мигание светодиодом program LED_Blinking; begin PORTC := 0; // Инициализация PORTC TRISC := 0; // Настройка PORTC while TRUE do // Начало бесконечного цикла begin PORTC := not PORTC; // Инвертирование PORTC Delay_ms(1000); // Задержка end; end.
BASIC
Старинный язык первоначального обучения программированию, в настоящее время в основном сохранился в виде реализации Visual BASIC от Microsoft. Используется он и для программирования микроконтроллеров. Реализаций этого языка гораздо больше, чем того же Pascal. Связано это в первую очередь с простотой языка. BASIC часто выбирают разработчики программно-аппаратных платформ, нацеленных на упрощенную разработку электронных устройств. Можно назвать такие проекты, как PICAXE, Amicus18, microBASIC и некоторые другие. Недостатком BASIC является плохая структурированность кода. Этот язык не стоит выбирать для первоначального изучения с целью дальнейшего перехода на С/С++. Программирование микроконтроллеров на BASIC можно рекомендовать любителям, не нацеленным на создание, в основном, простых устройств.
Пример программы на ProtonBASIC ' Мигание светодиодом на PORTB.0 Amicus18. While 1 = 1 ' Начало бесконечного цикла High RB0 ' Включить PortB.0 DelayMS 500 ' Задержка полсекунды Low RB0 ' Выключить PortB.0 DelayMS 500 ' Задержка полсекунды Wend ' Закрытие цикла
Визуальные языки
В отличие от классических языков программирования, визуальные языки позволяют разрабатывать программы в виде изображений. Среди таких языков можно выделить FlowCODE или Scratah. Достоинством визуальных языков является хорошо воспринимаемая структура алгоритма. Это позволяет просто разобраться в его функционировании любому человеку, знающему основные символы языка. Перевод структурных схем в команды микроконтроллера, как правило, выполняется не сразу. Вначале алгоритм транслируется в команды ассемблера или какого-либо языка высокого уровня. Только затем, все преобразуется в машинный код. Такая схема, несмотря на свою сложность, позволяет использовать наиболее удобные компиляторы разных разработчиков.
Еще одним достоинством визуального программирования становится простота изучения, поэтому подобные языки часто используются для обучения детей. Недостатком визуального подхода является громоздкость исходных материалов. Тем не менее, подобные языки программирования нашли очень большое распространение для решения специальных задач.
Размещено на Allbest.ru
Подобные документы
Архитектура микроконтроллеров AVR и PIC. Описание и структура регистров из области ввода/вывода. Внутренняя и внешняя память SRAM микроконтроллеров AVR. Особенности аналого-цифрового преобразования. Переключение в режим параллельного программирования.
лекция [755,2 K], добавлен 28.05.2010Методика создания и листинг недорогой многофункциональной охранной системы, отвечающей современным требованиям безопасности. Общая характеристика и сравнение отечественных однокристальных микроконтроллеров и микроконтроллеров фирм Atmel и Microchip.
дипломная работа [3,4 M], добавлен 28.09.2010Участие регистров ввода-вывода в работе периферийных устройств. Отражение состояния периферийных устройств в состоянии разрядов регистров состояния. Перечень имен и номеров регистров ввода-вывода, управления и состояния микроконтроллеров разных типов.
курсовая работа [171,2 K], добавлен 22.08.2010Особенности применения светодиодной индикации в микроконтроллерных системах. Характеристика основных приемов программирования универсальных портов ввода-вывода микроконтроллеров AVR. Этапы проектирования елочной гирлянды с микроконтроллерным управлением.
лабораторная работа [291,7 K], добавлен 17.11.2012Назначение, особенности, структура и функционирование различных моделей микроконтроллеров. Средства их отладки и программирования. Способы адресации и система команд. Набор периферийных устройств. Порты ввода/вывода. Модуль формирования ШИМ-сигналов.
курсовая работа [201,9 K], добавлен 25.12.2014Применение современных микроконтроллеров как одного из перспективных аппаратно-программных средств информационных систем. Общие принципы построения микроконтроллеров, их типовая структура. Разработка программы расчета задержек на языке ассемблер.
курсовая работа [719,2 K], добавлен 22.04.2019Интегрированная система, концепция и особенности интеллектуальных зданий. Принципы построения системы управления зданием. Принципы управления распределением энергоресурсов. Отопление с централизованным управлением, управление отопительными приборами.
реферат [83,5 K], добавлен 05.08.2010Первые машины вычисления. Осуществление прорыва в области вычислительной техники. Процессоры пятого поколения. Развитие микропроцессоров Intel Pentium и Intel Pro. Языки программирования высокого уровня. Внутренняя оперативная память процессора.
реферат [28,2 K], добавлен 07.10.2013Характеристика микропроцессоров Intel и AMD. Развитие и сравнение производительности микропроцессоров. Штаб-квартира компании AMD, ее производственные мощности. Описание бесплатной операционной системы Linux и ее возможности. Способы ввода информации.
контрольная работа [25,4 K], добавлен 19.02.2009Микропроцессор как важнейший компонент персонального компьютера, особенности их устройства, основные составные и их назначение. Функции, параметры и производительность микропроцессоров, сравнительные характеристики. Поколения и виды процессоров Intel.
контрольная работа [42,3 K], добавлен 25.11.2010