|
||||||||||||||||||
Меню:
Главная
Форум
Литература: Программирование и ремонт Импульсные блоки питания Неисправности и замена Радиоэлектронная аппаратура Микросхема в ТА Рубрикатор ТА Кабельные линии Обмотки и изоляция Радиоаппаратура Гибкие диски часть 2 часть 3 часть 4 часть 5 Ремонт компьютера часть 2 Аналитика: Монтаж Справочник Электроника Мощные высокочастотные транзисторы 200 микросхем Полупроводники ч.1 Часть 2 Алгоритмические проблемы 500 микросхем 500 микросхем Сортировка и поиск Монады Передача сигнала Электроника Прием сигнала Телевидиние Проектирование Эвм Оптимизация Автомобильная электроника Поляковтрансиверы Форт Тензодатчик Силовые полевые транзисторы Распределение частот Резисторные и термопарные Оберон Открытые системы шифрования Удк |
[33] Обращение к EEPROM при чтении/записи Обращение к EEPROM ведется посредством регистров расположенных в пространстве I/O. Время обращения при записи составляет от 2,5 до 4 мс, в зависимости от напряжения VCC. Однако существует специальная функция, которая позволяет пользовательскому ПО обнаруживать момент, когда можно начинать запись следующего байта - для индикации момента готовности EEPROM к записи новых данных может быть установлено специальное прерывание по завершению записи EEPROM (EEPROM Write Complete). Случайная запись в EEPROM предотвращается выполнением специальной процедуры, показанной подробнее в описании регистра управления EEPROM. После процедуры записи в EEPROM CPU, прежде чем начать выполнение следующей команды, останавливается на два тактовых цикла. При чтении EEPROM CPU останавливается на 4 тактовых цикла. РЕГИСТР АДРЕСА EEPROM- EEARH, EEARL - (EEPROM Address Register) Бит $1F ($3F) $1E ($3E) Чтение/Запись Начальное значение 15 14 13 12 11 10
eearh eearl 7 6 5 4 3 2 10 RRRR R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W 00000000 00000000 9 8 Посредством регистров адреса EEARH и EEARL определяется адрес в пространстве адресов EEPROM емкостью 2 К/4 К. Байты данных EEPROM адресуются линейно в пределах от 0 до 2047/4095. Микроконтроллер ATmega603 оснащен EEPROM с адресным пространством 2 К и бит I/O EEAR11 при чтении всегда будет в состоянии 0. РЕГИСТР ДАННЫХ EEPROM - EEDR - (EEPROM Data Register) Бит76543210 $1D ($3D)j msb jjjjjjj lsb~[ eedr Чтение/Запись R/W R/W R/W R/W R/W R/W R/W R/W Начальное значение 00000000 • Bits 7..0 - EEDR7..0: EEPROM Data - Данные EEPROM В процессе выполнения операции записи в регистре EEDR содержатся данные, записываемые в EEPROM по адресу, задаваемому регистром EEAR. При чтении регистр EEDR содержит данные, считываемые из EEPROM по адресу, определяемому EEAR. РЕГИСТР УПРАВЛЕНИЯ EEPROM - EECR - (EEPROM Control Register) Бит76543210 $1C ($3C)I - -- I - I EERIE I EEMWEEEWE EeRE EECR Чтение/Запись RRRRRR/WR/WR/W Начальное значение 00000000 •Bits 7..4 - Res: Reserved bits - Зарезервированные биты Эти биты в микроконтроллерах ATmega603/103 зарезервированы и при считывании всегда покажут состояние 0. •Bit 3 - EERIE: EEPROM Ready Interrupt Enable - Разрешение прерывания по готовности EEPROM При установленных в состояние 1 бите EERIE и I-бите регистра SREG разрешается прерывание по готовности EEPROM. При очищенном бите EERIE прерывание запрещено. Запрос прерывания по готовности EEPROM при очищенном бите EEWE генерируется непрерывно. •Bit 2 - EEMWE: EEPROM Master Write Enable - Управление разрешением записи EEPROM Бит EEMWE определяет, будет ли установленный в состояние 1 бит EEWE разрешать запись в EEPROM. При установленном в состояние 1 бите EEMWE установка бита EEWE приведет к записи в EEPROM по заданному адресу. Если же бит EEMWE будет находиться в состоянии 0, то установка бита EEWE никакого эффекта не окажет. Установленный программным путем бит EEMWE аппаратно очищается через четыре тактовых цикла. См. описание процедуры записи EEPROM в описании бита EEWE. •Bit 1 - EEWE: EEPROM Write Enable - Разрешение записи EEPROM Сигнал разрешения записи EEPROM EEWE (EEPROM Write Enable Signal ) является стробом записи в EEPROM. Запись установленных данных по установленному адресу EEPROM выполняется по установке бита EEWE. При этом бит EEMWE обязательно должен быть в состоянии 1, иначе запись не произойдет. Процесс записи EEPROM выполняется следующей процедурой (очередность выполнения пунктов 2 и 3 значения не имеет): 1. 2.Подождать сброса бита EEWE в состояние 0. 3.Записать новый адрес в EEAR (при необходимости). 4.Записать новые данные (при необходимости). 5.Установить в состояние 1 бит EEMWE регистра EECR. 6.В течение четырех тактовых циклов после установки EEMWE установить в состояние 1 бит EEWE. По истечении времени записи (типовое значение 2,5 мс при V CC = 5 В или 4 мс при V CC = 2,7 В) бит EEWE аппаратно очищается. Пользовательское программное обеспечение может тестировать состояние этого бита для определения момента сброса его в 0, чтобы начать запись следующего байта. После установки бита EEWE CPU, прежде чем начать выполнение следующей команды, останавливается на два тактовых цикла. •Bit 0 - EERE: EEPROM Read Enable - Разрешение чтения EEPROM Сигнал разрешения чтения EERE (EEPROM Read Enable Signal) является стробом чтения EEPROM. Бит EERE должен быть установлен по установлении в регистре EEAR требуемого адреса. После аппаратной очистки бита EERE считываемые данные будут располагаться в регистре EEDR. Считывание байта данных выполняется одной командой и не требует опроса бита EERE. При установленном бите EERE CPU останавливается на четыре тактовых цикла, прежде чем начнет выполнение следующей команды. Пользователю необходимо тестировать состояние бита EEWE перед началом операции чтения. Если новые данные или адрес будут записываться в регистры I/O EEPROM в то время, когда будет выполняться операция записи, то операция записи будет прервана и результат записи будет неопределенным. Защита EEPROM от разрушения Содержимое EEPROM может быть разрушено при снижении напряжения Vcc до уровня, при котором CPU и EEPROM работают неправильно. Для решения этой проблемы используются те же приемы, что используются для обеспечения сохранности данных в EEPROM системных плат. Разрушение данных EEPROM, при слишком низком напряжении питания, происходит в двух случаях. Во-первых, для правильного выполнения последовательности операций записи необходимо, чтобы напряжение питания было не ниже уровня, гарантирующего правильное их выполнение. Во-вторых, само CPU, при слишком низком напряжении питания, может неправильно выполнять команды. Разрушения данных легко избежать если следовать следующим рекомендациям (достаточно выполнения одной из трех): 1.Удержание сигнала сброса в активном (низком) состоянии во время снижения напряжения питания. Лучше всего это реализовывать внешней схемой защиты от снижения напряжения, называемой часто Brown-Out Detector (BOD). Вопросы организации сброса по падению напряжения и детектирования снижения напряжения рассмотрены в руководстве по применению AVR 190 и AVR 180. 2.Удержание ядра AVR микроконтроллера в Power Down Sleep режиме в период снижения напряжения VCC. Это предотвратит неправильное декодирование и выполнение команд CPU, что защитит регистры EEPROM от случайных записей. 3.Сохранение констант в Flash памяти, если нет необходимости изменять их программно. Flash память не изменяется CPU и, следовательно, не может быть повреждена. Последовательный периферийный интерфейс -SPI - (Serial Peripheral Interface) Последовательный периферийный интерфейс (SPI) обеспечивает высокоскоростной синхронный обмен данными между микроконтроллерами ATmega603/ 103 и периферийными устройствами или между несколькими микроконтроллерами ATmega603/103. Основные характеристики SPI интерфейса: •Полнодуплексный 3-проводный синхронный обмен данными. •Режим работы ведущий или ведомый. •Обмен данными с передаваемыми первыми старшим или младшим битами. •Четыре программируемые скорости обмена данными. •Флаг прерывания по окончании передачи. •Активация из Idle режима (только в режиме ведомого) Соединения между ведущим и ведомым CPU, использующими SPI интерфейс, показаны на рис. 39. Вывод PB1(SCK) является выходом тактового сигнала ведущего микроконтроллера и входом тактового сигнала ведомого. По записи ведущим CPU данных в SPI регистр начинает работать тактовый генератор SPI и записанные данные сдвигаются через вывод выхода PB2(MOSI) ведущего микроконтроллера на вывод входа PB2 (MOSI) ведомого микроконтроллера. После сдвига одного байта тактовый генератор SPI останавливается, устанавливая флаг окончания передачи (SPIF). Если в регистре SPCR будет установлен бит разрешения прерывания SPI (SPIE), то произойдет запрос прерывания. Вход выбора ведомого PB0(SS), для выбора индивидуального SPI устройства в качестве ведомого, устанавливается на низкий уровень. При установке высокого 110- |
Среды: Smalltalk80 MicroCap Local bus Bios Pci 12С ML Микроконтроллеры: Atmel Intel Holtek AVR MSP430 Microchip Книги: Емкостный датчик 500 схем для радиолюбителей часть 2 (4) Структура компьютерных программ Автоматическая коммутация Кондиционирование и вентиляция Ошибки при монтаже Схемы звуковоспроизведения Дроссели для питания Блоки питания Детекторы перемещения Теория электропривода Адаптивное управление Измерение параметров Печатная плата pcad pcb Физика цвета Управлении софтверными проектами Математический аппарат Битовые строки Микроконтроллер nios Команды управления выполнением программы Перехода от ahdl к vhdl Холодный спай Усилители hi-fi Электронные часы Сердечники из распылённого железа Анализ алгоритмов 8-разрядные КМОП Классификация МПК История Устройства автоматики Системы и сети Частотность Справочник микросхем Вторичного электропитания Типы видеомониторов Радиобиблиотека Электронные системы Бесконтекстный язык Управление техническими системами Монтаж печатных плат Работа с коммуникациями Создание библиотечного компонента Нейрокомпьютерная техника Parser Пи-регулятор ч.1 ПИ-регулятор ч.2 Обработка списков Интегральные схемы Шина ISAВ Шина PCI Прикладная криптография Нетематическое: Взрывной автогидролиз Нечеткая логика Бытовые установки (укр) Автоматизация проектирования Сбор и защита Дискретная математика Kb радиостанция Энергетика Ретро: Прием в автомобиле Управление шаговым двигателем Магнитная запись Ремонт микроволновки Дискретные системы часть 2 | ||||||||||||||||