Одноплатный микроконтроллер

редактировать

Комплект Make Controller с микроконтроллером Atmel AT91SAM7X256 (ARM ).

A Одноплатный микроконтроллер - это микроконтроллер, построенный на единственной печатной плате. Эта плата содержит все схемы, необходимые для полезной задачи управления: микропроцессор, схемы ввода / вывода, тактовый генератор, RAM, сохраненная программная память и вся необходимая поддержка ИС. Предполагается, что плата сразу же пригодится разработчику приложения, не требуя от него затрат времени и усилий на разработку аппаратного обеспечения контроллера.

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

Содержание
  • 1 Источники
  • 2 Внутренняя шина
  • 3 Расширение внешней шины
  • 4 Вход и выход
  • 5 Связь и пользовательские интерфейсы
  • 6 Программирование
    • 6.1 Запись EPROM
    • 6.2 Мониторы клавиатуры
    • 6.3 Размещенная разработка
  • 7 Однокристальные микроконтроллеры
    • 7.1 Программная память
  • 8 Одноплатные микроконтроллеры сегодня
  • 9 См. Также
  • 10 Ссылки
Истоки

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

В марте 1976 г. Intel объявила о выпуске одноплатного компьютера, в котором были интегрированы все вспомогательные компоненты, необходимые для микропроцессора 8080, а также 1 килобайт ОЗУ, 4 килобайта программируемого пользователем ПЗУ и 48 линий параллельного цифрового ввода-вывода с линейными драйверами. Плата также предлагала расширение через разъем шины, но могла использоваться без каркаса для карт расширения, когда приложениям не требовалось дополнительное оборудование. Разработка программного обеспечения для этой системы велась в системе разработки микрокомпьютеров Intel Intellec MDS ; это обеспечивало поддержку ассемблера и PL / M, а также позволяло внутрисхемную эмуляцию для отладки.

Процессоры этой эпохи требовали наличия ряда вспомогательных микросхем, которые должны быть включены вне процессора. RAM и EPROM были отдельными, что часто требовало управления памятью или схемы обновления для динамической памяти. Обработка ввода-вывода могла выполняться одной микросхемой, такой как 8255, но часто требовалось несколько дополнительных микросхем.

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

Внутренняя шина

Шина ранних одноплатных устройств, таких как Z80 и 6502, была повсеместно архитектура фон Неймана. Доступ к памяти программ и данных осуществлялся через одну и ту же общую шину, хотя они хранились в принципиально разных типах памяти: ROM для программ и RAM для данных. Такая шинная архитектура была необходима для экономии количества необходимых выводов из ограниченных 40, доступных для вездесущего двухканального ИС процессора.

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

Позже, когда стали применяться однокристальные микроконтроллеры, такие как 8048. доступной, шину больше не нужно было открывать за пределами корпуса, так как вся необходимая память могла быть предоставлена ​​внутри корпуса микросхемы. В этом поколении процессоров использовалась Гарвардская архитектура с отдельными шинами для программ и данных, которые являются внутренними для чипа. Многие из этих процессоров использовали модифицированную гарвардскую архитектуру, в которой был возможен некоторый доступ на запись к пространству данных программы, что позволяло программировать внутри схемы. Ни один из этих процессоров не требовал и не поддерживал гарвардскую шину через одноплатный микроконтроллер. Когда они поддерживали шину для расширения периферийных устройств, использовалась выделенная шина ввода-вывода, такая как I²C, 1-Wire или различные последовательные шины.

Расширение внешней шины

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

Вход и выход
Arduino Diecimila с Atmel ATMEGA168

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

Дискретные цифровые входы и выходы могут буферизоваться из шины данных микропроцессора только с помощью адресуемой защелки или могут управляться специализированной ИС ввода / вывода, например Intel 8255 или Motorola. 6821 адаптер параллельного ввода / вывода. Более поздние однокристальные микроконтроллеры имеют входные и выходные контакты. Эти входные / выходные цепи обычно не обеспечивают достаточный ток для непосредственного управления такими устройствами, как лампы или двигатели, поэтому твердотельные реле управляются цифровыми выходами микроконтроллера, а входы изолированы с помощью преобразования сигнала смещения уровня и схемы защиты.

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

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

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

Связь и пользовательские интерфейсы

Интерфейсы связи различаются в зависимости от возраста микроконтроллерной системы. Ранние системы могли реализовать последовательный порт для обеспечения RS-232 или токовой петли. Последовательный порт может использоваться прикладной программой или может использоваться вместе с ПЗУ монитора для передачи программ в память микроконтроллера. Современные микроконтроллеры могут поддерживать USB, беспроводные сети (Wi-Fi, ZigBee или другие) или обеспечивать соединение Ethernet. Кроме того, они могут поддерживать стек протоколов TCP / IP. Некоторые устройства имеют встроенное программное обеспечение для реализации веб-сервера, что позволяет разработчику приложений быстро создать инструмент или систему с поддержкой Интернета.

Программирование

Многие ранние системы не имели внутренних средств программирования и полагались на отдельную «хост-систему» ​​для этой задачи. Это программирование обычно выполнялось на языке ассемблера или иногда на C или PL / M, а затем выполнялось кросс-ассемблирование или кросс-компиляция на хосте. Некоторые одноплатные микроконтроллеры поддерживают языковую систему BASIC, что позволяет разрабатывать программы на целевом оборудовании. Размещенная разработка позволяет использовать все хранилища и периферийные устройства настольного компьютера, обеспечивая более мощную среду разработки.

Запись СППЗУ

Ранние микроконтроллеры полагались на стираемую программируемую постоянную память (СППЗУ) для хранения прикладной программы. Код объекта из хост-системы будет «записан» на EPROM с помощью программатора EPROM. Затем этот СППЗУ был физически вставлен в плату. Поскольку во время разработки программы СППЗУ многократно удалялось и заменялось, было принято использовать гнездо ZIF, чтобы избежать износа или повреждения. Стирание СППЗУ с помощью ластика UV занимает значительное время, и поэтому разработчик также часто имел в обращении несколько СППЗУ одновременно.

Некоторые микроконтроллеры были доступны со встроенным EPROM. Они также могут быть запрограммированы в отдельном записывающем устройстве, а затем вставлены в гнездо целевой системы.

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

Мониторы клавиатуры

Одноплатный компьютер с шестигранной клавиатурой и 7-сегментным дисплеем

Когда одноплатный контроллер формирует всю среду разработки (обычно в образовании), плата также может иметь Включает простую шестнадцатеричную клавиатуру, светодиодный дисплей в стиле калькулятора и программу «монитор», постоянно установленную в ПЗУ. Этот монитор позволял вводить программы машинного кода непосредственно с клавиатуры и сохранять их в ОЗУ. Эти программы были в машинном коде, даже не на ассемблере, и часто перед вводом собирались вручную на бумаге. Спорный вопрос о том, какой процесс был более трудоемким и подверженным ошибкам: сборка вручную или побайтовый ввод с клавиатуры.

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

Размещенная разработка

Когда появились настольные персональные компьютеры, первоначально CP / M или Apple II, а затем IBM PC и совместимые устройства, произошел переход к размещенной разработке. Оборудование стало дешевле, а объем ОЗУ расширился, так что можно было загрузить программу через последовательный порт и сохранить ее в ОЗУ. Такое резкое сокращение времени цикла тестирования новой версии программы дало не менее значительный прирост скорости разработки.

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

Однокристальные микроконтроллеры
A 8048 - микроконтроллер семейства со встроенным UV EPROM, 8749 Плата разработки для Устройство семейства PIC

Однокристальные микроконтроллеры, такие как Intel 8748, объединили многие функции предыдущих плат в едином корпусе IC. Однокристальные микроконтроллеры интегрируют память (как RAM, так и ROM) на корпусе и, следовательно, не нуждаются в открытии данных и адреса шины через контакты корпуса IC. Эти выводы затем доступны для линий ввода / вывода. Эти изменения также уменьшают площадь, необходимую на печатной плате, и упрощают конструкцию одноплатного микроконтроллера. Примеры однокристальных микроконтроллеров:

Программная память

Для производственного использования в качестве встроенных систем, встроенное ПЗУ было либо маской, запрограммированной на заводе микросхем, либо одноразовым (OTP) разработчиком как PROM. PROM часто используют ту же технологию UV EPROM для чипа, но в более дешевом корпусе без прозрачного окна стирания. Во время разработки программы все еще необходимо было записывать EPROM. В этом случае будет предоставлена ​​вся ИС контроллера и, следовательно, сокеты ZIF.

С появлением доступных по цене EEPROM и флэш-памяти стало практичным постоянно прикреплять контроллер к плате и загружать программный код с главного компьютера через последовательное соединение. Это называлось «внутрисхемное программирование ». Удаление старых программ производилось путем их перезаписи новой загрузкой или их полного электрического удаления (для EEPROM ). Последний метод был более медленным, но его можно было проводить на месте.

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

Одноплатные микроконтроллеры сегодня
плата

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

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

  • Легкодоступные платформы, предназначенные для традиционно «непрограммистских» групп, таких как художники, дизайнеры, любители и другие, заинтересованные в создании интерактивных объектов или сред. Некоторые типичные проекты 2011 года включали: резервное управление сценическим освещением и спецэффектами DMX, управление несколькими камерами, автономные боевые роботы, управление проектами Bluetooth с компьютера или смартфона, светодиоды и мультиплексирование, дисплеи, аудио, двигатели, механика и контроль мощности. Эти контроллеры могут быть встроены в проект физических вычислений. Популярным выбором для этой работы являются демонстрационные платы Arduino или Wiring.
  • Technology для инновационных процессоров или периферийных устройств:

.

См. Также
  • icon Портал электроники
Ссылки
Последняя правка сделана 2021-06-08 02:37:49
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте