роботы
робототехника
микроконтроллеры
Главная
Как сделать робота
Новости
Спорт
Статьи
Wiki
Форум
Downloads
Ссылки
Контакты  

Простейший робот
Схема и описание простого робота на одной микросхеме. Робот может двигаться на свет или следовать за рукой.  

Схема и описание первого проекта на микроконтроллере AVR
"Hello, world!" для микроконтроллера.  

Робот на микроконтроллере AVR
Схема робота на микроконтроллере. Примеры программ.  

МИКРОКОНТРОЛЛЕРЫ: КРАТКИЙ ОБЗОР



   Первый микроконтроллер
Гордон Мур (Gordon Moore)

Закон Мура

     Выступая в 1965 году на конференции International Electron Devices Meeting, один из будущих основателей Intel Гордон Мур (Gordon Moore) отметил, что новые модели микросхем разрабатывались спустя более-менее одинаковые периоды времени — 18-24 месяца — после появления их предшественников, а емкость их при этом возрастала каждый раз примерно вдвое.
     Наблюдение Мура, еще не возведенное в то время в ранг закона, впоследствии блестяще подтвердилось, а обнаруженная им закономерность наблюдается и в наши дни. За 30 лет, истекшие с момента появления микропроцессора 4004 в 1971 году и вплоть до выпуска процессора Pentium® 4, количество транзисторов выросло более чем в 18000 раз - с 2 300 до 42 миллионов.

Закон Рока

     Дополнение Артура Рока (Arthur Rock) к закону Мура: стоимость основных фондов, используемых в производстве полупроводников, удваивается каждые четыре года.

   Перый микроконтроллер появился на свет в 1976 году, через 5 лет после создания первого микропроцессора. Это была микросхема фирмы Intel, получившая имя 8048.
   Помимо центрального процессора, на кристалле находились 1 КБайт памяти программ, 64 байта памяти данных, два восьмибитных таймера, генератор часов и 27 портов ввода/вывода.
   Микроконтроллеры семейства 8048 использовались в игровых консольных приставках Magnavox Odyssey, в клавиатурах первых IBM PC и в ряде других устройств.
   Существует также мнение, что первым микроконтроллером был 4-х pазpядный TMS1000 от Texas Instruments, котоpый содеpжал ОЗУ (32 байта), ПЗУ (1К), часы и поддеpжку ввода-вывода, что позволяло считать его именно первым микpоконтpоллеpом. Выпущенный в 1972 году, он имел новую по тем временам возможность - добавление новых инструкций.

   8051

   Следующий микроконтроллер Intel 8051, выпущенный в 1980 году, стал поистине классическим образцом устройств данного класса. Этот 8-битный чип положил начало целому семейству микроконтроллеров, которые господствовали на рынке вплоть до недавнего времени.
   Аналоги 8051 выпускали советские предприятия в Минске, Киеве, Воронеже, Новосибирске, на них выросло целое поколение отечественных разработчиков.
   Большинство фирм производителей микроконтроллеров и сегодня выпускают устройства, основанные на этой архитектуре. Среди них Atmel, Maxim, Philips, Dallas, OKI, Siemens — можно перечислить более полутора десятков имен. Но 51-е семейство сдает свои позиции более молодым и совершенным микроконтроллерам.

   Motorola и Zilog

   Другими яркими представителями восьмиразрядных микроконтроллеров явились изделия компаний Motorola (68HC05, 68HC08, 68HC11) и Zilog (Z8).
   Motorola длительное время не предоставляла средств, позволяющих дешево и быстро начать работать с ее контроллерами, что явно не способствовало их популярности у некорпоративных разработчиков. Однако стоит заметить, что за рубежом микроконтроллеры от Motorola занимают лидирующее положение на рынке. В нашей стране их популярность не очень высока, возможно, еще в силу отсутствия достаточного количества доступных учебных материалов и средств разработки.
   Микроконтроллеры фирмы Zilog, основанной бывшими сотрудниками Intel, еще недавно казавшиеся столь многообещающими, не выдержали гонки в стремительно развивающемся секторе рынка, и сегодня система команд Z8 выглядит достаточно устаревшей.

   PIC от Microchip

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

   Чтобы перепрограммировать такой PIC-микроконтроллер, необходимо было посветить некоторое время в специальное окошечко кварцевой лампой. Сегодня новые микроконтроллеры от Microchip оснащаются электрически перепрограммируемой Flash-памятью программ.
   Первые значительные перемены произошли с появлением PIC-контроллеров фирмы Microchip. Эти чипы предлагались по рекордно низким ценам, что позволило им в короткий срок захватить значительную часть рынка микроконтроллеров. К тому же кристаллы от Microchip оказались не уступающими, а нередко и превосходящими микроконтроллеры х51 по производительности и не требовали дорогостоящего программатора.
   Вместе с контроллерами появились дешевые комплекты PICSTART, содержащие все, что было нужно для того, чтобы, не имея ни средств, ни навыков работы с PIC-контроллерами, быстро создать и отладить на нем продукт.
   Эти микроконтроллеры имели хорошие порты, но все остальное было сделано весьма неудобно. Архитектура оставляла желать лучшего, система команд была крайне ограничена. Тем не менее, PIC-контроллеры остаются популярными в тех случаях, когда требуется создать недорогую систему, не предъявляющую высоких требований по ее управлению.

   AVR от Atmel

   Настоящая революция в мире микроконтроллеров произошла в 1996 году, когда корпорация Atmel представила свое семейство чипов на новом прогрессивном ядре AVR. Более продуманная архитектура AVR, быстродействие, превосходящее контроллеры Microchip, привлекательная ценовая политика способствовали оттоку симпатий многих разработчиков от недавних претендентов на звание контроллера номер 1.

Микроконтроллер семейства AVR ATMEGA8    Микроконтроллеры AVR имеют более развитую систему команд, насчитывающую до 133 инструкций, производительность, приближающуюся к 1 MIPS/МГц, Flash ПЗУ программ с возможностью внутрисхемного перепрограммирования. Многие чипы имеют функцию самопрограммирования. AVR-архитектура оптимизирована под язык высокого уровня Си. Кроме того, все кристаллы семейства совместимы "снизу вверх".

   Огромную роль сыграла доступность программного обеспечения и средств поддержки разработки. У Atmel много бесплатно распространяемых программных продуктов. Хорошо известно, что развитые средства поддержки разработок при освоении и знакомстве с любым микроконтроллерным семейством играют не менее значимую роль, чем сами кристаллы. Фирма Atmel уделяет этому вопросу большое внимание и выпускает чрезвычайно удачную и совершенно бесплатную среду разработки Atmel Studio, работающую под Windows.
   Сторонние производители выпускают полный спектр компиляторов, программаторов, ассемблеров, отладчиков, разъемов и адаптеров.

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

   Можно считать, что AVR стали еще одним индустриальным стандартом среди микроконтроллеров общего назначения. Они легкодоступны в России и отличаются в среднем невысокой стоимостью, успешно конкурируя с микроконтроллерами PIC. Все это делает Atmel AVR одними из самых привлекательных для обучения.


   STM от STMicroelectronics

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

   Чуть раньше, в 2004 году, Acorn разработали 32-разрядное процессорное ядро ARM Cortex-M3 и компания STMicroelectronics стала одной из первых, кто вывел на рынок семейство микроконтроллеров на этом ядре, получивших название STM32. Сегодня ARM Cortex-M3 становится, возможно, самым популярным 32-разрядным процессорным ядром для встраиваемых систем, а микроконтроллеры на его базе имеют универсальную, хорошо сбалансированную архитектуру. Многие специалисты считают STM32 одним из самых распространенных, дешевых и перспективных 32-разрядных микроконтроллеров.



   В списке микроконтроллеров, рассмотренных на этой странице, конечно, следовало бы также упомянуть появившееся еще в 1999 году замечательное семейство 16-разрядных микроконтроллеров MSP430 компании Texas Instruments, инженеры которой вдохновились при разработке микроконтроллеров ставшей сегодня уже легендарной системой команд и архитектурой компьютера PDP-11 компании DEC.

   А среди производителей микроконтроллеров следовало бы выделить Cypress, Dallas Semiconductor, Philips, Infineon (Siemens), Futjitsu, Mitsubishi Electronics, Temic, National Semoconductor, Oki Semiconductor и др.

   Отдельного упоминания заслуживают мощные контроллеры фирмы Toshiba. Хотя у них и отсутствует внутренняя память программ, нужен кристалл внешнего ПЗУ, но они имеют хорошо развитую периферию и способны поддерживать модули памяти типа SIMM. За рубежом эти контроллеры ставятся в DVD-проигрыватели, CD-проигрыватели, автоответчики, — словом, туда, где надо работать с большими объемами памяти.

   Также следует сказать о самых маленьких в мире микроконтроллерах ACE. Это 8-разрядные чипы размерами около 3х4 мм, из 8 выводов 6 - это порты ввода/вывода. По возможностям они похожи на Microchip или AVR, но в очень маленьком корпусе. Им можно сделать минимальное обрамление и поместить в ручку какого-нибудь изделия.

   И, конечно же, нельзя пройти мимо широко развитой линии микроконтроллеров H8 фирмы Hitachi. Это большая семья микроконтроллеров, включающая H8/300, H8/300H, H8/500 и H8S серии. Основа архитектуры H8 базируется, почти как и в случае с MSP430, на решениях фирмы DEC и их компьютере PDP-11. Несколько компаний выпускают для этих микроконтроллеров компиляторы ассемблера и языков высокого уровня. H8 могут быть найдены в цифровых фотокамерах, контроллерах принтеров и различных автоматических подсистемах. Также они трудятся в контроллерных блоках RCX конструкторов роботов Lego MindStorms.
Контроллерные платы

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

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

NodeMCU (ESP8266) NodeMCU (ESP8266)

Плата, на которой установлен микроконтроллерный модуль ESP8266 с процессором Tensilica Xtensa L106, работающим на частоте 80 МГц (можно разогнать до 160 МГц). Плата имеет 4 мегабайта Flash-памяти. Размер NodeMCU всего 6 х 3 см. NodeMCU умеет работать с локальной сетью или с интернетом через Wi-Fi. Программы загружаются через разъем Micro USB на плате. Наличие интерфейса UART-USB позволяет легко подключить плату к компьютеру. NodeMCU может программироваться на языке Си. Существует множество прошивок, дающих возможность писать программы для ESP8266 на языках высокого уровня: Lua, MicroPython, JavaScript, Basic, Лисп. Кроме того, написаны специальные прошивки для интернета вещей и домашней автоматизации. NodeMCU часто используется для создания систем умного дома или роботов, управляемых на расстоянии.

Arduino Uno R3 Arduino Uno R3

Плата из семейства Arduino, ориентированного на непрофессиональных пользователей. Программирование встроенного микроконтроллера ATmega328 от Atmel производится на специальном языке Arduino с помощью бесплатной среды программирования Arduino IDE. Uno R3 имеет 32 КБ памяти для программ, 2 КБ ОЗУ и 1 КБ энергонезависимой памяти EEPROM. Программы для Arduino называются скетчами. При загрузке скетча используется Загрузчик Arduino — небольшая программа, заранее загруженная в микроконтроллер на плате. Запрограммировать Arduino Uno R3 можно просто подключив плату к компьютеру обычным USB-кабелем. Для китайских клонов Arduino необходимо установить драйвер CH340.

STM8S-Discovery STM8S-Discovery

Официальная отладочная плата от STMicroelectronics с 8-разрядным микроконтроллером STM8S105C6T6. Имеет 32 КБ Flash-памяти для прогамм, 2 КБ оперативной памяти, 1 КБ энергонезависимой памяти EEPROM; пользовательский светодиод и сенсорные кнопки, а также удобную макетную площадку для монтажа дополнительных элементов схемы. В плату интегрирован программатор/отладчик ST-Link, позволяющий загружать программы в память микроконтроллера, подключив плату к порту USB. Программатор может быть легко отделен от платы, а плата может использоваться в законченном устройстве.

STM32VL-Discovery STM32VL-Discovery

Мощная отладочная плата от ST имеет на борту программатор/отладчик ST-LINK и производительный 32-разрядный ARM-микроконтроллер STM32F100RBT со 128 КБ Flash-памяти и 8 КБ ОЗУ. На плате присутствуют два пользовательских светодиода и кнопка. Часто рекомендуется в качестве начального средства для знакомства с ARM-микрконтроллерами на ядре Cortex-M3.

MSP430 LaunchPad MSP430 LaunchPad

Плата от Texas Instruments для быстрого знакомства с 16-разрядными микроконтроллерами MSP430. Поставляется с установленным микроконтроллером MSP430G2553 (16 КБ Flash-памяти для программ, 512 Байт ОЗУ) и дополнительным MSP430G2452. Для составления программ на языке Си можно использовать бесплатную Code Composer Studio от производителя платы. Кроме того, существует бесплатная ардуиноподобная среда Energia.



Микроконтроллерные блоки LEGO Mindstorms
Lego RCX

     В основе RCX лежит микроконтроллер Hitachi H8/3297 (семейство процессоров H8/300 с 32Kb оперативной памяти). Микроконтроллер используется для управления тремя моторами, тремя сенсорами и инфракрасным портом.
Lego RCX      Встроенная в чип 16Kb ROM содержит драйвер, который запускается при первом включении RCX. Возможности прошитого драйвера расширяются при загрузке в RCX 16Kb программного обеспечения (firmware). Вместе они позволяют выполнять команды, полученные с компьютера через ИК порт. Программы, созданные пользователем, загружаются в RCX как байт-код и хранятся в отведенном для них 6Kb участке памяти.

Lego NXT

Lego NXT      Контроллерный блок NXT работает под управлением 32-битного микроконтроллера семейства ARM7 (Atmel AT91SAM7S256) на частоте 48 MHz. Имеет 256 Kb Flash-памяти программ и 64 Kb RAM.

Кроме того, в NXT трудится 8-битный микроконтроллер Atmel AVR с 4 Kb FLASH-памяти и 512 Byte RAM. NXT имеет встроенный Bluetooth-модуль, порт USB, 4 порта для датчиков, 3 порта для моторов, графический LCD-дисплей (100 x 64) и громкоговоритель.



myROBOT.ru Это оригинальная статья myROBOT.ru
Постоянный адрес статьи: http://myrobot.ru/stepbystep/mc_meet.php




Использованные иллюстрации:

Gordon E. Moore, Co-founder, Intel Corporation.
Intel Press Kit -- Moore's Law 40th Anniversary






Статьи раздела
МИКРОКОНТРОЛЛЕРЫ

Все статьи курса
Что такое микроконтроллер.

Микроконтроллеры: краткий обзор.

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

Устройство микроконтроллера AVR.

Модели семейства AVR.
Программирование микроконтроллеров.

Среда разработки WinAVR.

Makefile и компиляция программы.

Программатор AVR. AVRDUDE. USB-программатор USBasp.

Первый проект на микроконтроллере AVR.







Copyright © myrobot.ru, 2005-2023


Яндекс.Метрика   Рейтинг@Mail.ru