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

Реферат Розробка схеми мікроЕОМ на базі мікроконтролера сімейства AVR Classic





редачі пакету по UART;

. ANA_COMP - переривання аналогового компаратора.

Переривання - це зупинка ззовні виконання поточної програми на час виконання певної підпрограми, яка називається "обробник переривання". Вектор переривання - відсилання за потрібною адресою за допомогою команди В«rjmpВ» (Relative Jump - відносний перехід). Дана команда містить відносний адресу мітки, тобто число, на яке потрібно збільшити/зменшити поточний адресу ПЗУ, щоб опинитися на мітці. p align="justify"> Переривання виникає по деякому зовнішньому сигналу, що надходить у процесор. При цьому основна програма зупиняється в тому місці, де її застане переривання, і починається виконання підпрограми-обробника. По закінченні роботи обробника, виконання основної програми поновлюється з місця зупину, використовуючи адресу, записаний в стек. p align="justify"> Вектора переривань вказуються на початку адресного простору в порядку, зазначеному в таблиці 1. а на місці. Так як в нашій програмі використовується тільки два переривання: переривання по скиданню і переривання компаратора 1-го таймера, то достачно було б описати вектора перших п'яти переривань. Але на випадок запобігання непередбачених збоїв, опишемо всі вектора, як того очікує компілятор, прописуючи на місці невикористовуваних команду виходу з обробника переривання - В«retiВ» (Interrupt Return - повернення з переривання):

rjmp ResetTimer1_comp1

Текст основної програми починаємо з мітки В«ResetВ». Взагалі Реініціалізація мікроконтролера (скидання) може відбутися з різних причин: подача напруги живлення, вихід з В«сплячогоВ» режиму, зменшення напруги живлення нижче мінімально допустимого рівня (Brown Out Reset), спрацьовування сторожового таймера, поява на виведенні В«ResetВ» логічного сигналу низького рівня .

Для початку визначимо стек в адресному просторі ОЗУ. Стек - це область пам'яті в ОЗУ, яке береже адреси, за якою було призупинено вполненниє основної програми для виконання підпрограми. Адреса, за якою була проведена остання запис у стек, зберігається в спеціальному регістрі - покажчику стека SP (Stek Pointer). При переході в підпрограму його значення зменшується на одиницю, а при поверненні з неї, навпаки, збільшується. Таким чином, видно, що стек влаштований за типом FILO (Firt In Last Out - перший увійшов, останній вийшов). Зазвичай, спочатку програми покажчик стека ставиться на останній адреса ОЗУ. p align="justify"> Так як в контролері 2313 розрядність адреси ОЗУ не перевищує 8 біт, то і покажчик стека повинен бути 8-бітним. Для його зберігання, відповідно використовується один 8-бітний регістр В«SPLВ» (Stack Pointer Low), в який запишемо значення константи В«RamEndВ». Ця константа, ініціалізується у файлі def.inc і дорівнює значенню останнього адреси ОЗУ. p align="justify"> В асемблері не можна безпосередньо записати константу ...


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





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

  • Реферат на тему: Переривання і виключення
  • Реферат на тему: Переривання вагітності
  • Реферат на тему: Цикли, переривання, компоненти для відображення тексту
  • Реферат на тему: Внутрішньоутробне вдосконалення людини і переривання вагітності
  • Реферат на тему: Розробка програми для виконання обчислень над матрицями