Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

Шаг 3. А теперь ближе к практике: знакомтесь — микроконтроллеры AVR 83 встроенными периферийными устройствами. А начнем мы с изучения всех видов памяти. 3.2. Регистры общего назначения (РОН) Для хранения промежуточных результатов вычислений каждый микроконтроллер AVR имеет тридцать два регистра общего назначения (сокращенно — РОН). Для того, чтобы регистры можно было использо ­ вать в программе, каждый имеет свое собственное имя. Вот эти имена: RO, Rl, R2 — R31. Все РОН составляют так называемый файл регистров общего назна ­ чения. Все команды преобразования данных (сложения, вычитания и т. д.) микроконтроллера AVR построены таким образом, что обязательно используют РОН. Каждая команда в качестве операндов использует либо содержимое двух разных РОН, либо содержимое РОН и константу. Результат вычислений также помещается в один из РОН. Пример. Команда ADD RO, R1 производит сложение содержимого регистров R0 и R1. Сумма помещается в R0. Команда ADD R5, #7 прибавляет к содер ­ жимому регистра R5 число семь. Результат помещается в R5. Регистры общего назначения используются также и в командах пере ­ мещения данных. Перемещать данные можно из одного РОН в другой, из РОН в ячейку памяти и в обратном направлении. Перемещение данных возможно также между РОН и регистрами ввода-вывода, о которых мы поговорим в следующем разделе. Некоторые команды имеют ограничения по использованию РОН. Например, все команды обмена информацией с регистрами ввода- вывода не могут использовать регистры R0 — R15. Существуют и другие ограничения. Подробнее это можно узнать из описания системы команд (см. Приложение 2). Все регистры общего назначения микроконтроллеров AVR восьми ­ разрядные. Однако шесть последних регистров (R26 — R31) способны объединяться в регистровые пары. Такая пара в некоторых операциях выступает как самостоятельный шестнадцатиразрядный регистр. При этом не теряется возможность чтения каждого регистра пары отдельно. Регистровые пары имеют свои названия. Пара, объединяющая регистры R26 — R27, называется регистром X. Пара регистров R28 — R29 называ ­ ется регистром Y. А пара регистров R30 — 31 называется регистром Z. Весь набор регистров общего назначения присутствует в любом микроконтроллере серии AVR.

RkJQdWJsaXNoZXIy MTExODQxMg==