Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Генератор сигналів синусоїдальної форми

Реферат Генератор сигналів синусоїдальної форми





2,85,88,91,94,97,100,103,106,109,112,116,119,122,125,128


4.2 Зберігання значень синусоїди в ОЗУ. Застосування непрямої адресації


Оперативне запам'ятовуючий пристрій статичного типу SRAM призначене для зберігання даних, одержуваних у процесі роботи мікроконтролера. При виключенні напруги живлення мікроконтролера дані в SRAM губляться.

Адреса байта при зверненні до SRAM може бути зазначений у коді команди із зверненням до SRAM (пряма адресація) або попередньо записаний в пару регістрів X, Y або Z (непряма адресація). Звернення до SRAM може виконуватися з використанням адреси, що зберігається в регістрі - покажчику стека.

Байт для запису в SRAM надходить з регістра загального призначення. Байт, лічений з SRAM, надходить в регістр загального призначення.

У адресний простір SRAM крім адрес, за якими виконується звернення до комірок пам'яті SRAM, включені 32 адреси для звернення до регістрів загального призначення (адреси від $ 00 до $ 1F) і 64 адреси для звернення до регістрів ввода-виводу (адреси від $ 20 до $ 5F).

Першою осередку SRAM відповідає адреса $ 60.

Всього адресний простір ОЗУ містить 224 осередки, з яких 128 осередків складають внутрішню пам'ять даних.

Для всіх способів адресації доступні всі 32 регістра загального призначення, 64 регістра вводу-виводу і 128 байтів пам'яті даних SRAM мікросхеми Attiny2313.


; ***************************************** ********************

; Генератор сигналу синусоїдальної форми

; Зберігання значень синусоїди в ОЗУ

; Мікроконтролер ATtiny2313

; ***************************************** ********************

. nolist; Скасовуємо лістинг всіх під'єднуваних файлів

. include tn2313def.inc raquo ;; Приєднання файлу описів

. list; Дозвіл лістингу

. def temp1=r16; Головний робочий регістр

. def temp2=r17; Регістр для зберігання поточного значення синусоїди

; --------------- Резервування осередків пам'яті (SRAM) ------------------------

. dseg; Вибираємо сегмент ОЗУ

. org 0x60; Встановлюємо поточний адреса сегмента

buf: .byte 64; Резервуємо 64 байта в ОЗУ під масив чисел зі; значеннями чверті періоду синусоїди

; --------------------------- Початок програмного коду ----------------------------

. cseg; Вибір сегменту пам'яті команд

. org 0; Встановлення лічильника команд в 0

; ------------------------- Ініціалізація стека ------------------------------------- temp1, RAMEND; Вибір адреси вершини стекаSPL, temp1; Запис його в регістр стека

; --------------------- Ініціалізація портів введення - виведення -------------------

ldi temp1,0; Записуємо нуль в регістр temp

out DDRD, temp1; Записуємо цей нуль в DDRD (порт D на введення)

out DDRA, temp1; Записуємо нуль в DDRA (порт A на введення)

ldi temp1,0xFF; Записуємо число $ FF в регістр temp

out PortD, temp1; Записуємо temp в PortD (включаємо підтяжки порту D)

out PortA, temp1; Записуємо temp в PortA (включаємо підтяжки порту A)

out DDRB, temp1; Записуємо temp в DDRB (порт B на висновок)

;---------------------------- Ініціалізація компаратора -------------------------

ldi temp1,0x80 ACSR, temp1; Вимкнення компаратора

; ----------------------------- Основний цикл програми ---------------------------

ldi XH, high (buf); У реєстрову пару X записуємо адреса

ldi XL, low (buf); початку буфера ОЗУ

ldi ZH, high (mas * 2); У реєстрову пару Z записуємо старший і

ldi ZL, low (mas * 2); молодший байт початкової адреси масиву

ldi temp1,0; Записуємо нуль в temp1, регістр буде

; працювати як лічильник

; ---------------------------- Непряма запис в пам'ять ---------------------------

nn:

lpm temp2, Z +; Завантаження з постинкрементом в r17 (temp1)

; вмісту комірки, адреса якої зберігається

; в реєстрової парі Z

st X +, temp2; Здійснюємо запис вмісту регістра

<...


Назад | сторінка 7 з 12 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Розробка і функціонально-тимчасове моделювання засобами САПР QUARTUS II бло ...
  • Реферат на тему: Розробка системи обміну файлами між двома комп'ютерами, в яких відомі I ...
  • Реферат на тему: Регістр арифметичного пристрою ЕОМ
  • Реферат на тему: Кредитний регістр Національного банку Республіки Білорусь, його діяльність ...
  • Реферат на тему: Факсимільні адреси та електронна пошта