ПредишенСледващото

Всички AVR микроконтролери имат конфигурация предпазител бита. Това са най-битове, които определят броя на глобалните настройки на микроконтролера, например, часовник източник, на прага на напрежение на веригата нулиране, размерът на зоната за зареждане, резолюцията на таймера за пазител, и т.н.

Предпазители бита се съхраняват в флаш памет, така запази неговата стойност в отсъствие на мощност. Като цяло, след като те се намират в етап на основната EEPROM програмиране.

Неправилно инсталирани предпазител бита могат да нарушат системата. В най-добрия, микроконтролера ще работи, например, на грешната честота, и в най-лошия губим възможността за програмиране на микроконтролера чрез SPI. Това може да се случи, или не знае, или в резултат на случайни грешки.

Има начин, който може да попречи на някои от тези ситуации. Това е да се микроконтролер програма предпазител бита сравнение с желаните стойности. Нещо като самоконтрол. Но за да могат да бъдат проверени, те трябва първо четене. И сега погледнем как да го направя.

Просто си направите резервация, например ще IAR`a. Това е просто, че нямам достъп до Atmel Studio, защото не бях у дома.

Предпазители и заключване бита са разположени в специфични регистри в енергонезависима памет. За достъп до тези регистри трябва да изпълните следните стъпки:

Тъй като ние сме програмиране в С, в нашия случай, проблемът ще бъде решен в по-прост начин, с помощта на функцията за вграден IAR`a. Тя ще изпълни за нас, почти всички от тези действия. Прототипът функция е описана в intrinsics.h файл и изглежда по следния начин.

предпазител ниски бита 0x0000
предпазител високи бита 0x0003
предпазители удължен бита 0x0002
заключване бита 0x0001

Използвайки тези данни, можете да напишете макроси, за да прочетете предпазител бита.

Четене заключване бита в intrinsic.h файл вече има макрос.

Е, един малък пример може да изглежда като програма с първоначална проверка на предпазител бита.

Подкрепете проекта - споделете линка, благодаря!