- •Раздел I. Общие сведения о микроконтроллерах. Тема 1.1. Понятие микроконтроллера.
- •Тема 1.2. Типы микроконтроллеров.
- •Встраиваемые микроконтроллеры.
- •16-И 32-разрядные микроконтроллеры (микроконтроллеры с внешней памятью).
- •Цифровые сигнальные процессоры.
- •Тема 1.3. Архитектура процессоров. Cisc и risc процессоры.
- •Гарвард против принстона.
- •Тема 1.4. Типы памяти микроконтроллеров
- •Память программ
- •Память данных
- •Тема 1.5. Регистры микроконтроллера. Пространство ввода-вывода
- •Внешняя память
- •Раздел II. Аппаратные средства микроконтроллеров Тема 2.1. Корпуса устройств
- •Тема 2.2. Питание микроконтроллеров.
- •Потребляемая мощность.
- •Подключение питания.
- •Тема 2.3. Запуск микроконтроллера (сброс в начальное состояние). Тактирование системы.
- •Тактирование системы
- •Тема 2.4. Командные циклы. Программный счетчик. Алу. Командные циклы.
- •Программный счетчик.
- •Арифметико-логическое устройство
- •Тема 2.5. Сторожевые таймеры. Прерывания. Сторожевые таймеры.
- •Прерывания.
- •Раздел III. Средства обмена в микроконтроллерах. Тема 3.1. Таймеры.
- •Тема 3.2. Параллельный ввод-вывод данных. Преобразование логических уровней. Параллельный ввод-вывод данных
- •Преобразование логических уровней.
- •Тема 3.3. Последовательный ввод-вывод данных.
- •Асинхронный последовательный обмен.
- •Синхронный последовательный обмен.
- •Тема 3.4. Протоколы передачи данных. Протокол microwire.
- •Протокол spi.
- •Протокол i2с
- •Раздел IV. Микроконтроллеры семействаMcs-51 Тема 4.1. Фирмы-производители микроконтроллеров. Типовые характеристики семейства mcs-51.
- •Тема 4.2. Структура микроконтроллеров mcs-51 и функции выводов
- •Тема 4.3. Организация памяти и программно доступные ресурсы.
- •Тема 4.4. Синхронизация, магистральные циклы.
- •Тема 4.5. Методы адресации и система команд.
- •Методы адресации
- •Регистровая адресация.
- •Прямая адресация.
- •Косвенно-регистровая адресация.
- •Непосредственная адресация.
- •Система команд семейства mcs-51
- •Арифметические команды.
- •Логические команды.
- •Команды пересылки данных.
- •Команды работы с битами.
- •Команды передачи управления.
- •Тема 4.6. Система прерываний
- •Особенности запросов внешних прерываний.
- •Тема 4.7. Параллельные порты
- •Обновление данных в портах
- •Операции типа «чтение-модификация-запись»
- •Тема 4.8. Таймеры-счетчики
- •Тема 4.9. Последовательный порт
- •Синхронный обмен (режим 0)
- •Асинхронный обмен (режимы 1, 2, 3)
- •Обмен в многопроцессорных системах
Тема 2.2. Питание микроконтроллеров.
Во многих приложениях используется батарейное питание микроконтроллеров, а в некоторых случаях применяются даже конденсаторы большой емкости, которые обеспечивают сохранение работоспособности при кратковременных отключениях питания. Поэтому проблема снижения энергопотребления весьма актуальна для микроконтроллеров.
Как указано выше, практически все современные микроконтроллеры производятся по CMOS-технологии, поэтому они потребляют значительно меньше мощности, чем ранее выпускавшиеся биполярные или NMOS-микро-контроллеры.
Из-за большого многообразия областей применения и используемых при этом источников питания цепи питания микроконтроллеров проектируются как можно более надежными, чтобы обеспечить их нормальное функционирование в различных условиях.
Обратим внимание на обозначения, используемые при описании питания. Обозначения «Vcc» и «Vdd» применяются для указания напряжения питания (обычно +5 В, хотя возможны и другие значения). Аналогично, обозначения «Vss» and «Gnd» используются для указания «земли». Мы будем использовать «Vdd» для обозначения питания (даже когда производитель использует «Vcc») и «Gnd» для обозначения «земли».
Потребляемая мощность.
При планировании энергопотребления для различных устройств, использующих микроконтроллеры, необходимо учитывать, что потребляемая ими мощность зависит от режима функционирования. Имеются три значения мощности, потребляемой микроконтроллером в различных рабочих условиях. Первое - собственная мощность, необходимая для нормальной работы микроконтроллера. Второе - мощность, потребляемая устройствами ввода-вывода, которую требуется учитывать, когда микроконтроллер производит обмен данными с внешними устройствами. Третье - мощность, потребляемая в «спящем» режиме, когда микроконтроллер ожидает наступления внешнего события, переключающего его в рабочий режим. В зависимости от режима работы микроконтроллера, реализованное на его основе устройство может при одном и том же ресурсе энергии функционировать в течение нескольких часов или нескольких месяцев.
Собственная мощность - это мощность, которую потребляет микроконтроллер, когда к его выводам не подключены внешние устройства. Значение этой мощности зависит, главным образом, от тока потребляемого при переключении CMOS-элементов, который является функцией скорости работы микроконтроллера.
С понижением тактовой частоты потребляемая мощность, которая равна произведению напряжения питания на ток, будет сокращаться. Это означает, что программное обеспечение должно быть компактным, чтобы увеличить срок работы устройства без смены комплекта батарей, что может быть весьма важным для некоторых областей применения.
Очевидно, что дальнейшее снижение собственной мощности возможно при уменьшении напряжения питания. Реализация этой возможности зависит от типа используемого микроконтроллера и подключенных к нему устройств. Многие современные микросхемы могут работать при снижении напряжения питания до 2,0В.
Мощность, потребляемая в режиме ввода-вывода, зависит от того, какую мощность микроконтроллер должен затратить на управление работой внешних устройств. Значение этой мощности определяется конкретным вариантом применения микроконтроллера. Во многих приложениях микроконтроллер является единственным активным устройством - например, вводит исходные данные с клавиатуры и выдает результаты обработки на светодиоды. Если микроконтроллер выдает управляющие сигналы непрерывно, даже когда внешние устройства не требуют обслуживания, то данное устройство будет потреблять больший ток, а значит и мощность, чем это необходимо для нормальной работы.
Последнее, что осталось обсудить - это потребление мощности в «спящем» режиме. В этот режим микроконтроллер обычно входит после выполнения специальной команды. Тактовый генератор микроконтроллера при этом останавливается до наступления некоторого события, например, поступления сигнала от сторожевого таймера или изменения состояния определенного входа.
Использование «спящего» режима может уменьшить потребляемую мощность с уровня в несколько милливатт до микроватт.
«Спящий» режим - это виртуальный выключатель, реализованный внутри микроконтроллера. Его использование обеспечивает ряд преимуществ. Во-первых, такой виртуальный выключатель дешев и надежен - при его включении-выключении отказы возникают значительно реже, чем при работе электромеханического выключателя. Во-вторых, в «спящем» режиме сохраняется содержимое памяти данных RAM. А последнее преимущество чисто эстетическое: устройства, которые можно включать и выключать кажутся мне более привлекательными.
«Спящий» режим имеет один потенциальный недостаток, существенный для некоторых приложений: время, необходимое для выхода из «спящего» режима и запуска тактового генератора может достигать десяти милисекунд. Действительно, такая задержка может оказаться слишком большой при взаимодействии с другой компьютерной системой. Однако если основной задачей микроконтроллера является работа с человеком, то такая задержка проблем не вызывает.
При работе микроконтроллера в «спящем» режиме необходимо убедиться в отсутствии тока, потребляемого элементами нагрузки, подключенными к его выводам. Ток, втекающий в микроконтроллер от светодиода, подключенного к шине питания, вызовет увеличение потребления мощности в «спящем» режиме.