Програмиране на микроконтролер - Урок - страница
ПРОБНИ ВЪПРОСИ
Предназначение на едночипови микроконтролери.
Характеристики на архитектурата на едночипови микроконтролери.
Архитектура и модел на програмиране AVR-микроконтролери.
Етапи на разработване на софтуер за вградени микропроцесори.
Формат на монтажната линия за AVR-микроконтролери.
Състав на излъчен списък.
Работа № 2. ИНСТРУМЕНТИ ЗА ПРОГРАМИРАНЕ НА СОФТУЕР
Обективен: запознаване с хардуерни и софтуерни инструменти за отстраняване на грешки в софтуера; команди за отстраняване на грешки в учебната среда AVR Studio; придобиване на умения за програми за отстраняване на грешки под контрола на дебъгъра.
ОСНОВНА ИНФОРМАЦИЯ
Особеността на софтуерното отстраняване на грешки на устройства, базирани на вградени микроконтролери (включително едночипови микроконтролери), е липсата на разработени инструменти за внедряване на потребителския интерфейс и ограничените възможности на системния софтуер. В същото време именно за вградените микропроцесорни системи етапът за отстраняване на грешки е изключително важен, тъй като те се характеризират с тясна връзка между работата на софтуера и хардуера.
Взаимодействието на микропроцесора (микроконтролера) със сензори и изпълнителни механизми се осъществява чрез прехвърляне на данни през регистрите на периферните устройства (входно-изходни регистри). Отделни битове на такива регистри задават режимите на работа на периферните устройства, те осмислят готовност за обмен, завършване на трансфер на данни и др. Състоянието на тези битове може да бъде зададено както от софтуер, така и от хардуер. Когато отстранявате грешки в софтуера, често трябва да преминете към нивото на трансфери между регистрите и да проверите коректността на настройката на отделните битове. Освен това на етапа на отстраняване на грешки може да се извърши оптимизация на алгоритъма, намиране на критични раздели на кода и проверка на надеждността на разработения софтуер.
За решаване на тези проблеми се използват хардуерни и софтуерни инструменти за отстраняване на грешки в софтуера (фиг. 7).

Фигура: 7. Класификация на инструментите за отстраняване на грешки в софтуера
ДА СЕ отстраняване на грешки в хардуера включва хардуерни емулатори и тестови модули.
Хардуерни емулатори са предназначени за отстраняване на грешки в софтуера и хардуера на микропроцесорни системи в реално време. Те работят под контрола на "главен" компютър, оборудван със специален софтуер - програми за отстраняване на грешки (виж по-долу). Основните видове хардуерни емулатори са:
емулатори в схемата или декодери, които заместват микропроцесора в отстранената грешка система;
емулатори на чипа, които са едно от вътрешните устройства на микропроцесора.
In-Circuit Emulator (ICE) е устройство, което съдържа симулатор на хардуерен процесор и схема за управление на симулатора. При отстраняване на грешки с помощта на емулатора микропроцесорът се отстранява от отстраняваната грешка на системата, на негово място е свързан терминален блок, чийто брой и предназначение на контактите са идентични с изходите на замествания микропроцесор (фиг. 8). С помощта на гъвкав кабел терминалният блок ще бъде свързан към емулатора. Процесът на отстраняване на грешки се контролира от персонален компютър. Емулаторите на приемника имат следните недостатъци: висока цена, недостатъчна надеждност, висока консумация на енергия, влияние върху електрическите характеристики на веригите, към които е свързан емулаторът.
Фигура: 8. Отстраняване на грешки с емулатор във верига
н - брой изводи на процесора -
Емулаторите On-Chip позволяват програми за отстраняване на грешки, без да премахват микропроцесора от системата. В този случай се осъществява пряк контрол върху изпълнението на програмата, тъй като
Инструментите за отстраняване на грешки в чипа осигуряват директен достъп до регистри, памет и микропроцесорни периферни устройства. Най-често срещаният инструмент за отстраняване на грешки в чипа е серийният интерфейс. IEEE 1149.1, познат като JTAG (Съвместна група за тестови действия - Съвместна работна група по автоматизация на тестовете). Порт за серийно отстраняване на грешки JTAG микропроцесорът е свързан към компютъра посредством специално интерфейсно устройство, което осигурява достъп до инструментите за отстраняване на грешки на процесора (фиг. 9). Този метод за отстраняване на грешки също се нарича емулация на сканиране. Предимствата на този метод са възможността за извършване на различни действия върху процесора, без да се изважда от системата, като се използва малък брой пинове на процесора и се поддържа максималната му производителност, без да се променят електрическите характеристики на системата [12].