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

Реферат Автомат світловіх ефектів на мікроконтролері AVR





оритм роботи пристрою Виведення сигналізації на лінійку світлодіод


3. Розробка програми на мові програмування ASSEMBLER


согласно розробленні алгоритму, Було розроблено програму мікропроцесорного пристрою світлової індікації, повний варіант якої уявлень в Додатках А.

Для розробки програми на мові Assembler скорістаємося СЕРЕДОВИЩА AVR Studio 4, так як програмуваті будемо мікроконтролер Серії AVR ATmega8. Для качана створімо проект, в якому напішемо програму. Для цього: запускаємо AVR Studio 4? вібіраємо New project (рис 3.1)? вібіраємо Atmel AVR Assembler (рис 3.2)? запісуємо у відповідніх полях ім я проекту та місце Розташування? натіскаємо кнопку Next ? вібіраємо необхідній мікроконтролер та натіскаємо кнопку Finish (рис. 3.2)


Малюнок 3.1 - Створення проекту в AVR Studio


Рисунок 3.2 - Вибір типу проекту


Малюнок 3.3 - Вибір типу мікроконтролера


После Закінчення создания проекту з з'явитися файл проекту (рис. 3.4),

в якому буде записана програма. Почнемо програму Із запуску бібліотеки мікроконтролера та ініціалізації портів для кнопок (введенню) та світлодіодів (виводу). На порту D будут кнопки, а на порту У світлодіоді.


Малюнок 3.4 - Файл тексту програми


Крім того на рис. 3.5 представлено емулятор періурії Вибраного та Вказаною при создания проекту мікроконтролера. Даній емулятор буже Зручне використовуват при программирования та відладці роботи мікроконтролера.

Рисунок 3.2 - Вибір мікроконтролера для его програмування


За помощью директиви .include ... Відкриваємо бібліотеку програмуємого мікроконтролера, команда ser встановлює одиниці всех бітів регістра, а команда clr їх очищує [11-17]. Команда out задає

значення регістра в Вибраний РЕГІСТР, в даній ситуации в регістрі: PORT (дані порту); DDR (стан порту); PIN (стан виводів).

Через й достатньо часто использование регістрів, прісвоїмо Їм назви для зручності. Нам необходимо буде 3 регістрі: для виводу значень в порт В, для зміщення 1 в необхідній біт.

Підключення заголовного файлу з Описом регістрів, констант ТОЩО:

include m8mega.inc

Привидів фрагмент програми відповідає за призначення імен регістрів.

def temp=r16

Фрагмент програми, Який відповідає за ініціалізацію стека уявлень нижчих.

ldi r31, low (ramend) out spl, r31

Налаштування портів вводу виводу забезпечується Наступний чином:

ldi temp, 0x00

out DDRD, temp ldi temp, 0xff out DDRB, temp out PortD, temp

Перед качаном роботи всі світло діоді вмікаються та после затримки гаснути. Це реалізується фрагментом програми, Який уявлень нижчих.

ldi r16,0b11111111portb, r16fffr16,0b00000000portb, r16

Фрагмент програми, Який відповідає за перевірку стану кнопки наведень нижчих. Счітуєм и перевіряєм нульовий розряд, если лампочка кнопки не натіснута, то програма буде зациклена в даного фрагменті и очікуваті Зміни положення кнопки. После нажмання кнопки в PIND буде 0 raquo ;, после чего відбувається Переход на програму індікації.

kn1:

ldi r16,0b00000000portb, r16r17, pindr17,0

Програма індікації режим 2 в послідовності вімкнення світлодіодів VD0, VD7, VD1, VD6, VD2, VD5, VD3, VD4.

ind1:

ldi r18,0b10000000portb,r18fffr18,0b00000001portb,r18fffr18,0b01000000portb,r18fffr18,0b00000010portb,r18fffr18,0b00100000portb,r18fffr18,0b00000100portb,r18fffr18,0b00010000portb,r18fffr18,0b0001000portb,r18fffloop

Програма індікації режим 3 в послідовності вімкнення світлодіодів VD0, VD4, VD3, VD5, VD2, VD6, VD1, VD7, VD0.

ldi r18,0b0001000portb, r18fffr18, 0b00010000portb, r18fffr18, 0b00000100portb, r18fffr18, 0b00100000portb, r18fffr18, 0b00000010portb, r18fffr18, 0b01000000portb, r18fffr18, 0b00000001portb, r18fffr18, 0b10000000portb, r18fffloop

Програма перевіркі та перевіркі, яка перевіряє стан кнопки +1 та 2, после якої можна обновіті чі перейти на Інший режим без Закінчення циклів включення діодів

fff: r17, pindr17,0kn1r17, pindr17,1kn2r20, 50r17, pindr17,0kn1r17, pindr17,1kn2r21, 50r17, pindr17,0kn1r1...


Назад | сторінка 9 з 13 | Наступна сторінка





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

  • Реферат на тему: Розробка програми перекладу введеного рядка тексту в послідовність кодів аб ...
  • Реферат на тему: Програма-відладчик мікроконтролера I8051 (К1816ВЕ51)
  • Реферат на тему: Розробка пристрою управління на базі мікроконтролера AVR сімейства Classic ...
  • Реферат на тему: Розробка алгоритму програми &Таймер& на мові програмування C ++
  • Реферат на тему: Створення програми з використанням програмного продукту Turbo Assembler