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

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





7, pindr17,1kn2


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


Для розробки програми на С вікорістаємо IDE CodeVisionAVR.- інтегроване середовище розробки програмного забезпечення для мікроконтролерів сімейства Atmel AVR [18] .включає в собі следующие компоненти:

· компілятор С - подібного мови для AVR;

· компілятор мови асемблера для AVR;

· генератор початково кодом програми, что дозволяє сделать ініціалізацію періферійніх устройств;

· модуль взаємодії з отладочной платою STK - 500;

· модуль взаємодії з програматором;

· редактор вихідного коду з підсвічуванням синтаксису;

· термінал.

Віхіднімі файлами CodeVisionAVR є:

· HEX, BIN або ROM- файл для завантаження в мікроконтролер помощью програматора;

· COFF - файл, что містіть інформацію для відладчіка;

· OBJ - файл, в якому зберігається проміжній код компіляції, так звань об'єктній код;

CodeVisionAVR є комерційним Програмне забезпечення. Існує безкоштовна ознайомча версия с ограниченной ряду можливіть, зокрема, розмір програмного коду ограниченной 4-ма кілобайтамі и не включень ряд бібліотек.

Компілятор С, что входити до складу CodeVisionAVR, має деякі Відмінності від AVR- GCC (WinAVR), у тому чіслі власний синтаксис, набор підтрімуваніх серій мікроконтролерів (останні Версії підтрімують в тому чіслі серію ATXMega), а такоже генерує відрізняється за швідкодією вихідний код.

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


Малюнок 4.1 - Вид вікна во время создания проекту


Для розробки програми на мові С скорістаємося середовище

CodeVisionAVR. Для качана створімо проект, в якому напішемо програму: запускаємо CodeVisionAVR? на панелі меню вібіраємо вкладку File ? New ? ставімие галочку навпроти Project ? Ok ? Yes ? вібіраємо вкладку Project information ? в полі Project name запісуємо Назву свого проекту та копіюємо ее, вібіраємо вкладку File ? Save ? вставляємо Назву, вібіраємо папку создания та зберігання проекту? Ok ? вновь вібіраємо вкладку File ? вібіраємо Generate, Save and Exit ? вставляємо скопійовану Назву проекту в шкірному вікні у відповідну стрічку та тіснемо Зберегти (рис. 4.1).

Тепер можна Написати саму програму, Завдяк створеня шаблоном це буде набагато простіше та швідше чем в AVR Studio Assembler.

#include lt; 90s2313.h gt; #include lt; delay.h gt;

Програма void vuvod Забезпечує вівдененя буферної змінної на порт. void main (void)

Головний цикл: while (1)

{

Спочатку віконується режим 1

delay_ms (100);=0b11111111; _ms (100);=0b00000000;

Цикл, Який перевіряє чи натиснута кнопка 1 і чі натиснута кнопка 2, если так, то відбувається один Із програм в ціклі, режим 2 чі режим 3

if (PIND.0 == 1) (PIND.1 == 1)

Цикл, Який перевіряє чи не натиснута кнопка 1. Если кнопка натиснута, то Тіло циклу не віконується.

while (PIND.0 == 0)

Цикл, Який перевіряє чи не натиснута кнопка 1. Если кнопка натиснута, то Тіло циклу не віконується.

while (PIND.1 == 0)

Режим 2, Який виводу на Світлові діоді.

PORTB=0b01111111; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;=0b00111111 (zatr_perev_kn () == 1) goto label1 ; if (zatr_perev_kn () == 2) goto label2;=0b00011111; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;=0b00001111; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;=0b00000111; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;=0b00000011; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;=0b00000001; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;=0b00000000; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_kn () == 2) goto label2;

Режим 3, Який виводу на Світлові діоді.

PORTB=0b01111110; (zatr_perev_kn () == 1) goto label1; if (zatr_perev_...


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





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

  • Реферат на тему: Розробка програми, що реалізує алгоритм, який використовує z-буфер
  • Реферат на тему: Розробка алгоритму програми &Таймер& на мові програмування C ++
  • Реферат на тему: Розробка термогенератора, який буде використовувати тепло двигуна для заряд ...
  • Реферат на тему: Життєвий цикл інвестиційного проекту
  • Реферат на тему: Cоздание приладу, який дозволяє виявляти проникнення в приміщення, що охоро ...