Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Модуль сторожевого таймера микроконтроллера




Модуль многоканального аналого-цифрового преобразователя

Необходимость приема и формирования аналоговых сигналов требует наличия в МК модулей аналогового ввода/вывода.

Отличительная особенность многих современных 8-разрядных

МК – интегрированный на кристалл МК модуль многоканального

аналого-цифрового преобразователя ( АЦП). Модуль АЦП

предназначен для ввода в МК аналоговых сигналов с датчиков

физических величин и преобразования этих сигналов в двоичный код

с целью последующей программной обработки. Многоканальный

аналоговый коммутатор служит для подключения одного из

источников аналоговых сигналов (РТх0... РТх7) к входу АЦП. Выбор

источника сигнала для измерения осуществляется посредством записи

номера канала коммутатора в соответствующие разряды регистра

управления АЦП. Заметим, что в модулях АЦП 8-разрядных МК

предусмотрена только программная установка номера канала, режим автоматического последовательного сканирования каналов с записью

результата измерения каждого канала в индивидуальную ячейку

памяти не реализуется.

Цифро-аналоговые преобразователи в составе МК являются большой редкостью. Функция цифро-аналогового преобразователя реализуется средствами модуля программируемого таймера в режиме ШИМ. На одном из выводов МК формируется высокочастотная импульсная последовательность с регулируемой длительностью импульса.

Модуль контроллера последовательного ввода/вывода

Наличие в составе 8-разрядного МК модуля контроллера последовательного ввода/вывода стало в последнее время обычным явлением. Задачи, которые решаются средствами модуля контроллера последовательного ввода/вывода, можно разделить на три основные группы:

  • связь встроенной микроконтроллерной системы с системой управления верхнего уровня, например, с персональным компьютером. Чаще всего для этой цели используются интерфейсы RS-232C и RS-485;
  • связь с внешними по отношению к МК периферийными устройством, а также с датчиками физических величин с последовательным выходом. Для этих целей используются интерфейсы I2C, SPI, а также нестандартные протоколы обмена;
  • интерфейс связи с локальной сетью в мультимикроконтроллерных системах. В системах с числом МК до пяти обычно используются сети на основе интерфейсов I2C, RS-232C и RS-485 с собственными сетевыми протоколами высокого уровня. В более сложных системах все более популярным становится протокол CAN.

модуль UART (Universal Asynchronous Receiver and Transmitter) — это универсальный асинхронный приемопередатчик. Однако большинство модулей UART, кроме асинхронного режима обмена, способны также реализовать режим синхронной передачи данных.

Модули типа UART в асинхронном режиме работы позволяют реализовать протокол обмена для интерфейсов RS-232C, RS-422А, RS-485, в синхронном режиме — нестандартные синхронные протоколы обмена, и в некоторых моделях — SPI.

В последнее время появилось большое количество МК со встроенными модулями контроллеров CAN и модулями универсального последовательного интерфейса периферийных устройств USB (Universal Serial Bus). Каждый из этих интерфейсов имеет достаточно сложные протоколы обмена, для ознакомления с которыми следует обращаться к специальной литературе.

16 локальные сети микроконтроллеров

Последовательный переферийный интерфейс SPI для связи МК с переферийными устройствами МП системы. К одному интерфейсу может бытьподключено несколько устройств. При подключении в локальную сеть ведущим является МК. Шина SPI представлена 3 линиями MOSI ведущий посылает ведомый принимает MISO- ведущий принимает ведомый посылает SCK – линия синхронизации. 2 линии выбора кристалла CS перед началом обмена ведущее устройство выбирает одно ведомое устройство (мк устанавливает низкий уровень сигнала CS) если подать низкий уровень, То схема готова к приему и передачи информации. Ведомое устройствосмотрит на принятый байт и определяет в каком направлении будет производиться передача. Если ведомое устройство передает информацию, то оно синхронизирует канал MISO и в ответ на каждый импульс синхронизыции будет посылать один бит информации на каждый инпульс синхронизации. Длина кадра не ограничена и может составлят не целое число байт. Завершение обмена инициализирует мастер по средствам установки в неактивное состояние сигнала приемника CS. Если ведом устройство должно принимать информ. То оно активирует линию MOSI, и на каждый импульс синхронизации от ведущего мк будет выставлять 1 бит информации. Отключается ведущим МК.макс скоростьобмена 8Мбит/с.

 

модуль сторожевого таймера микроконтроллера

Если, несмотря на все принятые меры, МК все же «завис» , то на случай выхода из этого состояния все современные контроллеры имеют встроенный модуль сторожевого таймера.

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

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

Модули сторожевых таймеров конкретных МК могут иметь различные особенности:

  • в ряде МК векторы внешнего сброса и сброса по переполнению сторожевого таймера совпадают. Это не позволяет выявить причину сброса программным путем и затрудняет написание рабочей программы. Более высокоуровневые МК имеют либо различные векторы сброса, либо отмечают событие сброса по переполнению сторожевого таймера установкой специального бита в одном из регистров специальных функций;
  • в некоторых МК при переходе в один из режимов пониженного энергопотребления, когда рабочая программа не выполняется, автоматически приостанавливается работа сторожевого таймера. В других МК сторожевой таймер имеет независимый тактовый генератор, который продолжает функционировать и в режиме ожидания. В этом случае необходимо периодически выводить МК из состояния ожидания для сброса сторожевого таймера. В PIC-контроллерах фирмы Microchip выработка таких сбросов может быть запрещена путем записи нуля в специальный бит конфигурации WDTE.

Использование сторожевого таймера существенно повышает способность к самовосстановлению системы на основе МК.

 

 










Последнее изменение этой страницы: 2018-06-01; просмотров: 144.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...