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

[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]

Адрес операнда находится в Х-, Y- или Z-регистре. Однако перед выполнением операции соответствующий индексный регистр Х-, Y-или Z уменьшается на единицу.

Косвенная адресация к памяти данных с постинкремеитом

Память данных


Рис. 2.13. Косвенная адресация к памяти данных с постинкрементом

Адрес операнда находится в Х-, Y- или Z-регистре. После выполнения операции соответствующий индексный регистр Х-, У- или Z увеличивается на единицу.

Адресация к константам в памяти программ

Память профамм

Z регистр

$000

$3FF

Рис. 2.14. Адресация к константам в памяти программ

Адрес константы - байта содержится в регистре Z. 15 старших битов определяют адрес слова, а младший (0) бит - младший или старший байт константы в памяти программ. Если в младшем бите О - выбран младший байт, 1 - старший байт.



Косвенная адресация памяти программ

Память профамм

15 О

I Z регистр \-

$000

J3FF

Рис. 2.15. Косвенная адресация памяти программ

После операций UMP или ICALL выполнение программы продолжается с адреса, записанного в Z-регистре (т. е. в PC счетчик команд микроконтроллера записывается содержимое Z-регистра).

Относительная адресация памяти программ

Память программ

15 12 11

КОП I

$000

$3FF

Рис. 2.16. Относительная адресация памяти программ

После операций RJMP или RCALL выполнение программы продолжается с адреса РС+к+1. Относительный адрес к может составлять от-2048 до 2047.



Арифметико-логическое устройство

Арифметико-логическое устройство (АЛУ) микроконтроллера непосредственно подключено к 32 регистрам общего назначения. За один машинный цикл АЛУ производит операции между регистрами регистрового файла. АЛУ может выполнять арифметические, логические и битовые операции.

Память программ

AT90S2313 содержит 2 Кб флэш-памяти для хранения программ. Флэш-память организована как 1К х 16. В фирменном описании микроконтроллера утверждается, что флэш-память можно перепрограммировать до 1000 раз.

Программный счетчик имеет ширину 10 битов и позволяет адресовать 1024 слов памяти программ.

Способы занесения информации (т. е. программ) во флэш-память микроконтроллера будут рассмотрены дальше.

EEPROM память данных

AT90S2313 содержит 128 байтов электрически стираемой энергонезависимой памяти (EEPROM). EEPROM организована как отдельная область данных, каждый байт которой может быть прочитан и при необходимости перезаписан. EEPROM выдерживает не менее 100 ООО циклов записи/стирания. К этой памяти может обращаться программа, считывая или записывая какие-либо данные. Кроме того, данные в эту память можно занести с помощью специального устройства - программатора, на этапе изготовления и программирования конструкции. Ее удобно использовать для хранения каких-либо констант.

Оперативная память данных

На рис. 2.17 показана организация памяти данных в AT90S2313. 224 ячейки памяти вюш)чаюг в себя регистровый файл, память ввода/вывода и оперативную память данных.



[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.0009