Реферат: Разработка микропроцессорной системы климат-контроля
Для байт ориентированных команд ‘f’ является указателем регистра, а ‘d’ указателем адресата результата. Указатель регистра определяет, какой регистр должен использоваться в команде. Указатель адресата определяет, где будет сохранен результат. Если 'd'=0, результат сохраняется в регистре W. Если 'd'=1, результат сохраняется в регистре, который используется в команде.
Система команд аккумуляторного типа, ортогональна и разделена на три основных группы:
- байт ориентированные команды;
- бит ориентированные команды;
- команды управления и операций с константами.
Все команды выполняются за один машинный цикл, кроме команд условия, в которых получен истинный результат и инструкций изменяющих значение счетчика команд PC. В случае выполнения команды за два машинных цикла, во втором цикле выполняется инструкция NOP. Один машинный цикл состоит из четырех тактов генератора. Для тактового генератора с частотой 4 МГц все команды выполняются за 1мкс, если условие истинно или изменяется счетчик команд PC, команда выполняется за 2мкс.
Таблица 2.4 -Описание полей кода операции
Поле | Описание |
f | Адрес регистра (от 0x00 до 0x7F) |
w | Рабочий регистр (аккумулятор) |
b | Номер бита в 8-разрядном регистре |
k | Константа (данные или метка) |
X | Не имеет значения (0 или 1 ). Ассемблер генерирует х=0 для совместимости программы микроконтроллера с инструментальными средствами |
d |
Указатель адресата результата операции: d = 0 - результат сохраняется в регистре w d = 1 - результат сохраняется в регистре f По умолчанию d = 1 |
label | Имя метки |
dest | Приемник, регистр w или регистр памяти |
[] | Дополнительные параметры |
0 | Содержимое |
-> | Присвоение |
< > | Битовое поле |
Структура команд имеет следующий вид:
Рисунок 2.5 - Форма команд трех основных групп
2.2 Термодатчик DS 1820
Термодатчики типа DS18x20, выпускаемые фирмой DallasSemiconductor, предназначены для совместной работы с микроконтроллерными устройствами. Разработанный фирмой однопроводной интерфейс (l-WireBus) использует одну линию передачи данных, которые удобно обрабатывать микроконтроллерами [2].
Датчик температуры DSl820 представляет собой специализированный микроконтроллер, который имеет установку конфигурации, вычислительное устройство, память программ, память данных и реакцию на внешнее воздействие. При этом внешнее управляющее воздействие выполняет микропроцессор PIC16 F 877 приема и обработки данных.
Термодатчики DS1820 имеют следующие технические характеристики:
- индивидуальный 64-битный идентификационный номер;
- напряжение питания от +3 до +5,5 В;
- измеряемая температура от -55 до + 125°С;
- погрешность измерения температуры в диапазоне -10...+85°С не более 0,5°С;
- информация о температуре выдается 9-битным кодом;
- установка пороговых значений температуры по максимуму и минимуму;
- максимальное время преобразования температуры в код 750 мс;
- возможность питания от высокого уровня шины данных;
- термодатчики не требуют индивидуальной настройки при замене.
Термодатчики выпускают в двух типах корпусов: ТО-92 и SOIC. Наиболее удобный для применения в выносном варианте трехвыводной корпус ТО-92.
Назначение выводов: 1 (5) — общий (земля), 2 (4) — вход/выход, 3 (3) — плюс питания. В скобках указаны номера выводов для восьмивыводного корпуса SOIC.
Принцип работы термодатчика основан на сравнении частот двух внутренних генераторов. Один генератор выдает постоянную частоту независимо от температуры, а частота второго генератора изменяется в зависимости от температуры корпуса термодатчика. Путем вычислений формируется выходной код, который включает и информацию о знаке температуры.
Для начала работы с термодатчиком управляющий микроконтроллер должен инициализировать его посылкой необходимых команд. Перечень основных команд термодатчика: