Контрольная работа: Работа микроконтроллера и его программирование
$ 1Е00
1
0
256
$ 1F00 -
1
1
128
$ 1F80
Если установочный бит BOOTRST имеет нулевое значение, при пуске микроконтроллера первая команда программы выбирается не по адресу $0000, а по адресу, указанному в табл. 3.
Программирование осуществляется с использованием команды SPM (№ 131), выполнение которой зависит от кода, записанного в регистр SPMCR (№ $37) не ранее, чем за четыре такта до выборки кода команды SPM из FlashROM.
Программирующая программа может записывать коды в обе секции FlashROM и модифицировать саму себя.
Для защиты секций FlashROM кроме битов защиты LB1 и LB2 в микроконтроллере типа ml63 используются дополнительные биты за-щиты - BLB01 и BLB02 для защиты секции APS и BLB11 и BLB12 для защиты секции BLS.
Пуск микроконтроллера происходит при нодаче напряжения питания на его выводы VCC и RESET (Power-On Reset, POR). Перезапуск в процессе работы выполняется при появлении на выводе RESET нулевого уровня сигнала с последующим возвращением к высокому уровню (External Reset, EXR) и при переполнении сторожевого таймера (Watchdog Reset, WDTR). В микроконтроллерах типа t12, t15, 4433 и m163 перезапуск происходит также при понижении напряжения питания на выводе VCC ниже определенного уровня с последующим возвращением к рабочему уровню (Brown-Out Reset, BOR).
При пуске и перезапуске принимает активное значение внутренний сигнал Internal Reset, который сохраняет это значение в течение определенного интервала времени (Start-Up Time). При активном значении сигнала все регистры ввода-вывода переводятся в исходное состояние и в счетчик команд (PC) записывается код числа 0.
По истечении интервала Start-Up Time микроконтроллер приступает к выполнению программы, начиная с команды, записанной в FlashROM по нулевому адресу.
В исходном состоянии регистров ввода-вывода все разряды регистров находятся в нулевом состоянии.
Исключением являются:
■ регистр состояния USR или UCSRA (№ $0В) в порте UARX в который заносится код $20 (UDRE = 1);
■ регистр управления UCR или UCSRB (№ $0А) в порте UARX в который заносится код $02 (RXB8 =1);
■ регистр OCR1B (№ $2D) в таймере-счетчике Т/С1 микроконтроллера типа tl5, в который заносится код $FF;
■ регистр SPDR в порте SPI, исходное состояние которого является неопределенным;
■ регистры EEAR, EEARL и EEARH (№№ $1Е и $1F) в блоке управления EEPROM микроконтроллеров типа tl2, tl5, 2323, 4423, 4433, 8535 и ml63, исходное состояние которых является неопределенным;
■ регистр PORTA (№$1В) микроконтроллера типа t28, в который заносится код $0
В табл. 4 отмечено наличие таких элементов у микроконтроллеров разных типов и указаны их характеристики.
При пуске микроконтроллера при достижении напряжением питания уровня VP0TR с помощью схемы PORC устанавливается в единичное состояние триггер Т и сигнал Internal Reset принимает активное значение. При достижении уровня Vrst запускается схема временной задержки, выполненная па базе счетчика (Counter). По истечении времени задержки tTOUT сигнал на выходе триггера принимает пассивное значение.
Таблица 4
Элемент схемы |
К-во Просмотров: 337
Бесплатно скачать Контрольная работа: Работа микроконтроллера и его программирование
|