НПО Системы Безопасности
(499)340-94-73 График работы:
ПН-ПТ: 10:00-19:00
СБ-ВС: выходной

Главная » Периодика » Безопасность

0 ... 19202122232425 ... 159


входа

Вход в 0x001 OxOFF

А I 1

Мультиплексор -Г

Инвертор

Узел

инкрементирования I

Сумматор

~Т~"

Результат

Мультиплексор i

Регистр состояния

Рис. 5.1

Функциональная схема арифметико-логического устройава

где символ «x» соответствует целому числу, обозначающему конкретный тип микроконтроллера.

Пример архитектуры микроконтроллера данного подсемейства приведен на рис. 5.2.

Таблица 5.2

Стартовые векторы микроконтроллеров младшего подсемейава

Объем памяти программ

Стартовый адрес после сброса

OxOIFF

1024

Ox03FF

2048

0x07FF

Под стартовые адреса программ (стартовые векторы), с которых начинает свою работу микроконтроллер при перезапуске, обычно резервируются последние адреса памяти программ. В табл. 5.2 приводятся стартовые векторы Р1С-микроконтроллеров, имеющих различные объемы программной памяти.

На практике в стартовых подпрограммах выполняются только самые необходимые действия (например, считывание значения регистра калибровки генератора OSCCAL в регистр w) на этапе подготовили счетчика команд к обращению по адресу 0x0000. Аналогичные рекомендации справедливы и для других подсемейств Р1С-микро-Контроллеров.



r- CNJ CO Lf)

ouoou tr tr tr tr tr tr


Рис. 5.2

Архитектура микроконтроллеров младшего подсемейства

-J CNJ r-

2 w w lO о

о T- CNJ CO in

CO [□ CO CO CO CO tr tr tr tr tr tr



Доступ к регистрам

Сведения об адресном пространстве операттюй памяти микроконтроллеров младшего подсемейства приведены в табл. 5.3.

Таблица 5.3

Распределение адресного проаранпва оперативной памяти микроконтроллеров младшего подсемейава

БанкО

Банк 1

Банк 2

Банк 3

~Адрес- регистр

Адрес - регистр

Адрес - регистр

Адрес - регистр

пп - indf

20 - indf

40 - indf

60 - INDF

ш - TMRO

21 - tmr

41 - tmro

61 - tmro

Та - pcl

22 - pcl

42 - pcl

62 - pcl

- status

23 - status

43 - status

63 - status

1м - FSR

24 - fsr

44 - FSR

64 - fsr

П5 - porta

25 - porta*

45 - porta*

65 - porta*

06 - portb

26 - portb

46 - portb

66 - portb

07 - ронтс

27 - ровтс

47 - ровтс

67 - pobtc

08 - OF - регистры общего назначения

28 - 2F - регистры общего назначения

48 - 4F - регистры общего назначения

68 - 8F - регистры общего назначения

10-IF -

регистровый файл банка 0(регистры общего назначения)

30-3F -регистровый файл банка 1 (регистры общего назначения)

50-5F -регистровый файл банка 2 (регистры общего назначения)

70-7F -регистровый файл банка 3(регистры общего назначения)

option - доступен через команду option TRISn -доступен через команду tris ports

* В микроконтроллерах с внутренним генератором вместо регистра porta может быть osccal

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

Обращение к банку О может осуществляться непосредственно с помощью соответствующих полей команды. Обращение к другим банкам производится только с помощью индексных регистров FSR и INDF. табл. 5.4 представлены адресные смещения для обращения к раз-•"ичным банкам регистров.

Следует отметить, что содержимое индексного регистра FSR в PIC-Микроконтроллерах никогда не равно нулю, так как н}левому адресу Соответствует регистр данных индексной адресации INOF, являющий-

виртуальным. В табл. 5.5 указано значение старших разрядов



0 ... 19202122232425 ... 159