Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

Шаг 6. Осваиваем все возможности микроконтроллера ATtiny23 13 513 fuse -переключателей CKSEL. Схема эмулятора, поддерживающего режим debugWIRE, должна удовлетворять следующим требованиям: ♦ резистор нагрузки, подключаемый к линии dW/(RESET), должен иметь сопротивление меньше 10 кОм, хотя желательно его и во ­ все исключить; ♦ непосредственное подсоединение вывода RESET к источнику питания недопустимо; Рис. 6.48. Схема подключения ♦ конденсатор, подключенный к выводу микроконтролЛ е Р а RESET, в режиме debug Wire должен отклю- в режиме debugWIRE чаться; ♦ если имеются дополнительные внешние цепи формирования сиг ­ нала сброса, то в режиме debugWire они должны быть отключены. dW ON (RESET) GND Точки останова программы Режим debug WIRE поддерживает программные точки останова, кото ­ рые формируются при помощи специальной команды Break, входящей в систему команд AVR. При создании точки останова в среде програм ­ мирования AVR Studio ’ в программный код автоматически включается команда BREAK. Затем измененная программа, содержащая в нужных местах команды BREAK, помещается в программную память микроконтроллера (пере ­ прошивается). Команда, заменяемая на BREAK, сохраняется в памяти компьютера. Когда прерванная программа запускается на дальнейшее выполне ­ ние, сначала выполняется сохраненная команда, а затем уже продолжа ­ ется выполнение команд из программной памяти микроконтроллера. Вы можете также создать точки останова вручную, помещая команду BREAK в любом месте вашей программы. Особенностью данной технологии является то, что память программ должна перепрограммироваться каждый раз, когда изменяется размеще ­ ние точек останова. Среда AVR Studio делает это автоматически посред ­ ством debugWIRE -интерфейса. Использование программных точек останова уменьшает максимально возможное количество циклов записи/стирания для программной памяти микроконтроллера. Поэтому при отладке программ подобным способом нужно постоянно следить, чтобы отладчик не израсходовал все ресурсы вашей микросхемы.

RkJQdWJsaXNoZXIy MTExODQxMg==