
- •5.3. Микроконтроллер avr at90s8515 семейства Classic
- •Организация памяти микроконтроллера
- •Память программ
- •Память данных
- •Использование внешнего озу
- •Регистры общего назначения
- •Регистры ввода/вывода
- •Энергонезависимая память данных
- •Сторожевой таймер
- •Последовательный периферийный интерфейс spi
- •Прерывания
- •Обработка прерываний
- •Программирование микроконтроллеров
- •Защита программного кода и данных
- •Система команд и способы адресации памяти данных
- •Прямая адресация
- •Прямая адресация одного регистра общего назначения
- •Прямая адресация двух регистров общего назначения
- •Прямая адресация регистра ввода/вывода
- •Прямая адресация озу
- •Косвенная адресация
- •Простая косвенная адресация
- •Относительная косвенная адресация
- •Косвенная адресация с преддекрементом
- •Косвенная адресация с постинкрементом
- •Система команд
- •Операнды
- •Типы команд
- •Команды арифметических и логических операций
- •Команды пересылки данных
- •Команды передачи управления
- •Команды операций с битами
- •Команды управления системой
- •Пример программы и её оформление
- •Микропроцессорная система управления на базе мк at90s8515
- •7. Микроконтроллер экр1847вг6
- •8. Частотно-регулируемые привода
- •Режимы управления асинхронными электродвигателями
- •Преобразователь частоты 1336Plus
Программирование микроконтроллеров
При программировании микроконтроллера полученный в результате компиляции программы машинный код загружается в память программ, а требуемые данные заносятся в ЭСППЗУ (EEPROM-память). Используются два режима программирования:
• режим параллельного программирования при высоком напряжении;
• режим программирования по последовательному каналу.
Таблица 5.27. Регистр маски внешних прерываний GIMSK
Разряд |
Название |
Описание |
7 |
INT1 |
Флаг разрешения внешнего прерывания INT1. Если в этом разряде записана логическая «1» и флаг I регистра SREG также установлен в «1», то разрешается внешнее прерывания с вывода INT1. Условия генерации прерывания определяются содержимым разрядов ISC11 и ISC10 регистра MCUCR |
6 |
INT0 |
Флаг разрешения внешнего прерывания INT0. Если в этом разряде записана логическая «1» и флаг I регистра SREG также установлен в «1», то разрешается внешнее прерывания с вывода INT0. Условия генерации прерывания определяются содержимым разрядов ISC01 и ISC00 регистра MCUCR |
5...0 |
- |
Не используются, читаются как «0» |
Таблица 5.28. Регистр флагов внешних прерываний GIFR
Разряд |
Название |
Описание |
7 |
INTF1 |
Флаг внешнего прерывания INT1. Если в результате события на выводе INT1 сформировался запрос на внешнее прерывание, этот разряд устанавливается в «1». Флаг сбрасывается аппаратно при запуске подпрограммы обработки прерывания или программно записью в него логического «0» |
6 |
INTF0 |
Флаг внешнего прерывания INT0. Если в результате события на выводе INT0 сформировался запрос на внешнее прерывание, этот разряд устанавливается в «1». Флаг сбрасывается аппаратно при запуске подпрограммы обработки прерывания или программно - записью в него логического «0». |
5...0 |
— |
Не используются, читаются как «0» |
Под «высоким»
напряжением здесь понимается управляющее
напряжение (12В), подаваемое на вывод
микроконтроллера для перевода последнего
в режим программирования. При этом
независимо от режима программирование
FLASH-
и EEPROM-памяти
осуществляется всегда побайтно.
В процессе программирования могут выполняться следующие операции:
• стирание кристалла (Chip erase);
• чтение/запись Flash-памяти программ;
• чтение/запись EEPROM-памяти данных;
• чтение/запись конфигурационных ячеек;
• чтение/запись ячеек защиты;
• чтение ячеек идентификатора;
Все модели микроконтроллеров поставляются со стертой памятью программ и памятью данных (во всех ячейках находится число $FF).
Защита программного кода и данных
Содержимое FLASH-памяти (памяти программ), а также содержимое EPROM-памяти (памяти данных) может быть защищено от записи и/или чтения посредством программирования ячеек защиты (Lock bits) LB1 и LB2. Возможные режимы защиты, соответствующие различным состояниям этих ячеек, приведены в табл. 5.29.
Стирание ячеек защиты (запись в них лог. «1») может быть произведено только при выполнении команды «Стирание кристалла», уничтожающей также содержимое и EEPROM-памяти.
Таблица 5.29. Режимы защиты
Ячейки защиты
|
Описание |
||
№ режима
|
LB1
|
LB2
|
|
1
|
1
|
1
|
Защита кода и данных отключена
|
2 |
0 |
1 |
Последующая запись FLASH и EEPROM запрещена |
3 |
0 |
0 |
Запрещена запись и чтение FLASH и EEPROM |