Главная  Микроконтроллеры 

[0] [1] [2] [3] [4] [5] [6] [ 7 ] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93]

Регистровый файл

Область адресов данных

Рвтстры ввода/вывода

Встроенное ОЗУ данных (SRAM)

Рис. 2.17. Организация памяти данных в микроконтроллере AT90S2313

Первые 96 адресов используются для регастрового файла и памяти ввода/вывода, следующие 128 - для ОЗУ данных.

При обращении к памяти используются пять различных режимов адресации: прямой, непосредственный со смещением, непосредственный, непосредственный с предварительным декрементом и непосредственный с постинкрементом. Регастры R26...R31 регистрового файла используются как указатели для непосредственной адресации.

Прямая адресация имеет доступ ко всей памяти данных. Непосредственная адресация со смещением используется для доступа к 63 ячейкам, базовый адрес которых задается содержимым регистров Y или Z.

Для непосредственной адресации с инкрементом и декрементом адреса используются адресные регистры X, Y и Z.



При помощи любого из этих режимов можно осуществлять доступ ко всем 32 регистрам общего назначения, 64 регистрам ввода/вывода и 128 ячейкам ОЗУ.

Время выполнения команд

ЦПУ процессора AVR управляется тактовой частотой, генерируемой внешним резонатором. Внутреннее деление частоты генератора в микроконтроллерах семейства AVR не используется.

В микроконтроллере процесс выполнения команд организован так, что при выборе команды из памяти программ происходит выполнение предьщущей команды. Это позволяет достичь быстродействия 1 MIPS на МГц.

Таблица 2.1. Пространство ввода/вывода AT90S2313

Адрес

Название

Назначение

$3F($5F)

SREG

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

$3D($5D)

Младший байт указателя стека

$ЗВ($5В)

GIMSK

Общий регистр маски прерываний

$ЗА($5А)

GIFR

Общий регистр флагов прерываний

$39 ($59)

T1MSK

Регистр маски прерываний от таймеров/счетчиков

$38 ($58)

T1FR

Регистр флагов прерываний от таймеров/счетчиков

$35 ($55)

MCUCR

Общий регистр управления микроконтроллера

$33 ($53)

TCCRO

Регистр управления TanMepokVc4eT4MKOM 0

$32 ($52)

TCNTO

Таймер/счетчик 0 (8 битов)

$2F($4F)

TCCR1A

Регистр А управления таймероксчетчиком 1

$2Е($4Е)

TCCR1B

Регистр В управления таймером/счетчиком 1

$2D($4D)

TCNT1H

Старший байт таймера/счетчика 1

$2С($4С)

TCNT1L

Младший байт таймера/счетчика 1

$2В($4В)

0CR1AH

Выход регистра совпадения 1, старший байт

$2А($4А)

0CR1AL

Выход регистра тяпадения 1, младший байт



Продолжение табл. 2.1

Адрес

Название

Назначение

$25 ($45)

ICR1H

Регистр захвата таймера/счетчика 1, старший байт

$24 ($44)

ICR1L

Регистр захвата таймера/счепика 1, младший байт

$21($41)

WDTCR

Регистр управления сторожевым таймером

$1Е($ЗЕ)

EEAR

Регистр адреса EEPROM

$1D($3D)

EEDR

Регистр данных EEPROM

$1С($ЗС)

EECR

Регистр управления EEPROM

$18 ($38)

PORTB

Регистр данных порта В

$17 ($37)

DDRB

Регистр направления данных порта В

$16 ($36)

PINB

Входные линии порта В

$12 ($32)

PORTD

Регистр данных порта D

$11 ($31)

DDRD

Регистр направления данных порта D

$10 ($30)

Входные линии порта D

$0С($2С)

Регистр данных последовательного порта UART

$0В($2В)

Регистр состояния последовательного порта UART

$0А($2А)

Регистр управления последовательного порта UART

$09 ($29)

UBRR

Регистр згщания скорости последрвательного порта UART

$08($28)

ACSR

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

Примечание. Зарезервированные и неиспользуемые в AT90S2313 ячейки не показаны.

Все устройства ввода/вывода и периферийные устройства AT90S2313 располагаются в пространстве ввода/вывода. Различные ячейки этого пространства доступны через команды IN и OUT, пересылающие данные между одним из 32 регистров общего назначения и пространством ввода/вывода. К регистрам $00...$IF можно осуществлять побитовый доступ командами SBI и CBI. Значение отдельного бита этих регистров можно проверить командами SBIC и SBIS. Дополнительную информацию по этому вопросу можно найти в описании системы команд. -



[0] [1] [2] [3] [4] [5] [6] [ 7 ] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93]

0.001