Студопедия — Регистр управления
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Регистр управления






Регистр управления EEPROM-памяти EECR (EEPROM Control Register) расположен по адресу $1C. Как следует из названия, данный регистр используется для управления доступом к EEPROM-памяти. Формат этого регистра показано на Рис. 5.9, а его описание приведено в Табл. 6.1.

 

Рис. 6.1. Формат регистра EECR


 

Разряд Название Описание
7…4 Не используются, читаются как «0»
  EERIE Разрешение прерывания от EEPROM. Данный разряд управляет генерацией прерывания, возникающего при завершении цикла записи в EEPROM. Если этот разряд установлен в «1», прерывания разрешены (если флаг I регистра SREG также установлен в «1»). При сброшенном разряде EEWE прерывание генерируется постоянно
  EEMWE Управление разрешением записи в EEPROM. Состояние этого разряда определяет функционирование флага разрешения записи EEWE. Если данный разряд установлен в «1», то при записи в разряд EEWE «1» происходит запись данных в EEPROM. В противном случае установка EEWE в «1» не производит никакого эффекта. После программной установки этот разряд сбрасывается аппаратно через 4 машинных цикла
  EEWE Разрешение записи в EEPROM. При установке этого разряда в «1» происходит запись данных в EEPROM (если EEMWE равен «1»)
  EERE Разрешение чтения из EEPROM. После установки этого разряда в «1» выполняется чтение данных из EEPROM. По окончании чтения этот разряд сбрасывается аппаратно

Таблица 6.1. Разряды регистра EECR

Таким образом, процедура записи одного байта в EEPROM-память состоит из следующих этапов:

· дождаться готовности EEPROM к записи данных (ждать пока не сбросится флаг EEWE (EEPROM Write Enable) регистра EECR);

· загрузить байт данных в регистр EEDR, а требуемый адрес — в регистр EEAR;

· установить в «1» флаг EEMWE (EEPROM Memory Write Enable) регистра EECR;

· в течение 4-х машинных циклов после установки флага EEMWE записать «1» в разряд EEWE регистра EECR.

Длительность цикла записи зависит от частоты внутреннего RC- генератора (от значения калибровочной константы) и составляет 3.1…6.8 мс для моделей ATtiny12x и 4.6…8.2 мс для модели ATtiny15L. По окончании цикла записи разряд EEWE аппаратно сбрасывается, после чего программа может начать запись следующего байта. Следует также помнить, что после установки разряда EEWE в «1», процессор пропускает 2 машинных цикла перед выполнением следующей инструкции.

При записи в EEPROM могут возникнуть некоторые проблемы, вызванные прерываниями. При возникновении прерывания между 3-м и 4-м этапами описанной последовательности запись в EEPROM будет сорвана, т. к. за время обработки прерывания флаг EEMWE сбросится в «0». Если в подпрограмме обработки прерывания, возникшего во время записи в EEPROM-память, также происходит обращение к ней, то будет изменено содержимое регистров адреса и данных EEPROM. В результате первая запись (прерванная) будет сорвана.

Для избежания описанных проблем настоятельно рекомендуется запрещать все прерывания (сбрасывать бит I регистра SREG) при выполнении пунктов 2…4 описанной выше последовательности.

С учетом сказанного фрагмент программы, осуществляющий запись в EEPROM, выглядит следующим образом:

Процедура чтения данных из EEPROM гораздо проще, чем процедура записи. После загрузки требуемого адреса в регистр EEAR, программа должна установить разряд EERE регистра EECR в «1». Когда запрошенные данные будут находиться в регистре данных EEDR, произойдет аппаратный сброс этого разряда.

Операция чтения из EEPROM всегда выполняется за один машинный цикл. Кроме того, после установки разряда EERE в «1» процессор пропускает 4 машинных цикла перед началом выполнения следующей инструкции. Поэтому следить в программе за состоянием разряда EERE нет никакой необходимости.

Единственное, на что нужно обратить внимание при чтении из EEPROM, это состояние флага EEWE. Перед выполнением чтения необходимо убедиться, что этот флаг сброшен. В противном случае в результате загрузки в регистры новых значений адреса и данных во время записи в EEPROM процедура записи будет прервана, а результат этой записи не определен.

С учетом сказанного фрагмент программы, осуществляющий чтение из EEPROM, выглядит следующим образом:







Дата добавления: 2015-08-12; просмотров: 664. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Меры безопасности при обращении с оружием и боеприпасами 64. Получение (сдача) оружия и боеприпасов для проведения стрельб осуществляется в установленном порядке[1]. 65. Безопасность при проведении стрельб обеспечивается...

Весы настольные циферблатные Весы настольные циферблатные РН-10Ц13 (рис.3.1) выпускаются с наибольшими пределами взвешивания 2...

Хронометражно-табличная методика определения суточного расхода энергии студента Цель: познакомиться с хронометражно-табличным методом опреде­ления суточного расхода энергии...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Измерение следующих дефектов: ползун, выщербина, неравномерный прокат, равномерный прокат, кольцевая выработка, откол обода колеса, тонкий гребень, протёртость средней части оси Величину проката определяют с помощью вертикального движка 2 сухаря 3 шаблона 1 по кругу катания...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия