МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • AVR микроконтроллер AT90S2333 фирмы Atmel

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |21h(41h) | | | | | | | | |

    | | | | |WDTOE |WDE |WDP2 |WDP1 |WDP0 |

    | |R |R |R |R |R\W |R\W |R\W |R\W |

    |Начальное|0 |0 |0 |0 |0 |0 |0 |0 |

    |значение | | | | | | | | |

    Биты 7..5 - зарезервированы. В AT90S2333/4433 эти биты зарезервированы и

    всегда читаются как 0.

    Бит 4 - WDTOE - разрешение выключения сторожевого таймера. При очистке бита

    WDE этот бит должен быть установлен (1). Иначе, работа сторожевого таймера

    не прекращается. Через четыре такта после установки этого бита, он

    аппаратно сбрасывается.

    Бит 3 - WDE- разрешение сторожевого таймера. Если бит установлен (1),

    работа сторожевого таймера разрешена, если бит сброшен - запрещена. Сброс

    бита производится только в том случае, если бит WDTOE установлен в 1. Для

    запрещения включенного сторожевого таймера должна исполняться следующая

    процедура:

    1. Одной командой записать 1 в WDTOE и WDE. Единица в WDE должна

    записываться даже в том случае если этот бит был установлен перед началом

    процедуры остановки таймера

    2. В течение следующих четырех тактов процессора необходимо записать в WDE

    логический 0, при этом работа сторожевого таймера запрещается.

    Биты 2..0 - WDP2..0 - Биты предварительного делителя сторожевого таймера.

    Если работа сторожевого таймера разрешена, эти биты определяют

    предварительный коэффициент деления для сторожевого таймера. В таблице 15

    приведены различные значения установок предварительного делителя и

    соответствующие им временные интервалы для напряжения питания Vcc=5V.

    Таблица 15. Установки предварительного делителя сторожевого таймера

    |WDP2 |WDP1 |WDP0 |период |

    | | | |времени |

    |0 |0 |0 |16K циклов |

    |0 |0 |1 |32K циклов |

    |0 |1 |0 |64K циклов |

    |0 |1 |1 |128K циклов |

    |1 |0 |0 |256 циклов |

    |1 |0 |1 |512 циклов |

    |1 |1 |0 |1024 циклов |

    |1 |1 |1 |2048 циклов |

    ЧТЕНИЕ И ЗАПИСЬ В ЭНЕРГОНЕЗАВИСИМУЮ ПАМЯТЬ

    Регистры доступа к энергонезависимой памяти (EEPROM) расположены в

    пространстве ввода/вывода. Время записи лежитв диапазоне 2.5-4 mS и зависит

    от напряжения питания. Это самотактируемая функция которая, однако,

    позволяет пользователю определить, можно ли записывать следующий байт. Для

    определения возможности записи в EEPROM можно использовать специальное

    прерывание по готовности EEPROM. Инициированная запись в EEPROM

    заканчивается даже при возникновении условия сброса. Для защиты от

    нежелательной записи в EEPROM необходимо следовать некоторым правилам,

    которые будут рассмотрены ниже, при описании управляющего регистра

    энергонезависимой памяти. При записи или чтении EEPROM процессор

    приостанавливается на 2 машинных цикла до начала выполнения следующей

    команды. При чтении из EEPROM процессор приостанавливается на четыре

    машинных цикла перед тем как начнет выполняться следующая команда.

    РЕГИСТР АДРЕСА EEPROM – EEAR

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |1Eh(3Eh) | | | | | | | | |

    | |EEAR7 |EEAR6 |EEAR5 |EEAR4 |EEAR3 |EEAR2 |EEAR1 |EEAR0 |

    | |R\W |R\W |R\W |R\W |R\W |R\W |R\W |R\W |

    |Начальное|0 |0 |0 |0 |0 |0 |0 |0 |

    |значение | | | | | | | | |

    Регистр EEAR задает адрес одного из 128/256 байт адресного пространства

    EEPROM. Байты данных адресуется линейно в диапазоне от 0 до 127/255.

    Начальное значение регистра EEAR неопределено, поэтому перед доступом к

    EEPROM в этот регистр должно быть записано требуемое число.

    РЕГИСТР ДАННЫХ EEPROM – EEDR

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |1Dh(3Dh) | | | | | | | | |

    | |MSB | | | | | | |LSB |

    | |R\W |R\W |R\W |R\W |R\W |R\W |R\W |R\W |

    |Начальное|0 |0 |0 |0 |0 |0 |0 |0 |

    |значение | | | | | | | | |

    Биты 7..0 - EEDR7..0 - Данные EEPROM. При записи регистр EEDR содержит

    данные, которые записываются в EEPROM по адресу в регистре EEAR. Для

    операции чтения в этот регистр читаются данные прочитанные из EEPROM по

    адресу заданному в регистре EEAR.

    РЕГИСТР УПРАВЛЕНИЯ EEPROM - EECR

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |1Ch(3Ch) | | | | | | | | |

    | | | | | |EERIE |EEMWE |EEWE |EERE |

    | |R |R |R |R |R |R\W |R\W |R\W |

    |Начальное|0 |0 |0 |0 |0 |0 |0 |0 |

    |значение | | | | | | | | |

    Биты 7..4 - зарезервированы. В AT90S2333/4433 эти биты зарезервированы и

    всегда читаются как 0.

    Бит 3 - EERIE - Разрешение прерывания по готовности EEPROM. Если

    установлены биты I в регистре SREG и EERIE, разрешается прерывание по

    готовности EEPROM. Это прерывание возникает непрерывно, если сброшен бит

    EEWE.

    Бит 2 - EEMWE - Управление разрешением записи. Этот бит определяет, будут

    ли записаны данные при установке EEWE. Если бит EEMWE установлен, при

    установке EEWE данные записываются по выбранному адресу EEPROM. Если этот

    бит сброшен, установка EEWE не имеет эффекта. После программной установки

    этот бит сбрасывается аппаратно через четыре такта процессора.

    Бит 1 - EEWE - Разрешение записи в EEPROM. Сигнал EEWE является стробом

    записи в EEPROM. После установки правильных адреса и данных для записи в

    EEPROM необходимо установить бит EEWE. При записи "1"

    в бит EEWE должен быть установлен бит EEMWE, тогда происходит запись в

    EEPROM. Для записи в EEPROM должна соблюдаться следующая последовательность

    (порядок шагов 2 и 3 необязателен):

    |1|Ждем обнуления EEWE |

    |2|Записываем адрес в EEAR (не обязательно) |

    |3|Записываем данные в EEDR (не обязательно) |

    |4|Устанавливаем в 1 бит EEMWE |

    |5|Не позже чем через 4 такта после установки EEMWE |

    | |устанавливаем EEWE |

    После того как время записи истечет (типично 2.5 mS для Vcc=5V и 4mS для

    Vcc=2.7), бит EEWE очищается аппаратно. Пользователь может отслеживать этот

    бит и ожидать его установки в ноль, перед тем как записывать следующий

    байт. При установке EEWE, ЦПУ останавливается на два цикла перед

    исполнением следующей команды.

    Бит 0 - EERE - разрешение чтения из EEPROM. Сигнал EERE является стробом

    чтения из EEPROM. После установки нужного адреса в регистре EEAR,

    необходимо установить бит EERE. После того как бит EERE будет аппаратно

    очищен, в регистре EEDR. Чтение EEPROM занимает одну команду и не требует

    отслеживания бита EERE. При установке бита EERE, ЦПУ останавливается на два

    цикла перед тем как будет выполнена следующая команда. Перед чтением

    пользователь должен проверять состояние бита EEWE, если регистры данных или

    адреса изменяются во время операции записи, запись в ячейку прерывается и

    результат операции записи становится неопределенным.

    ПОСЛЕДОВАТЕЛЬНЫЙ ИНТЕРФЕЙС SPI

    Интерфейс SPI позволяет производить высокоскоростной синхронный обмен

    данными между AT90S2333/4433 и периферийными устройствами или несколькими

    процессорами. SPI-интерфейс предлагает следующие возможности:

    1. Полностью дуплексная 3-проводная синхронная передача данных;

    2. Работа в режиме ведущего или ведомого;

    3. Передача начиная со старшего или младшего бита;

    4. Четыре программируемые скорости передачи;

    5. Флаг прерывания по окончанию передачи;

    6. Флаг защиты от коллизий при записи

    7. Выход из режима Idle.

    Соединение между ведущим и ведомым контроллерами показана ниже. Вывод

    PB5(SCK) является выходом тактовых импульсов для ведущего контроллера и

    входом для ведомого. Запись в регистр данных SPI ведущего контроллера

    запускает тактовый генератор. Записанные данные сдвигаются через вывод

    PB3(MOSI) на вывод PB3(MOSI) ведомого контроллера. После того как байт

    будет выведен тактовый генератор останавливается и выставляет флаг

    окончания передачи (SPIF). Если разрешены прерывания (установлен бит SPIE в

    регистре SPCR), вызывается соответствующее прерывание. Вывод PB2(SS)

    ведомого контроллера должен быть подключен на землю. Два сдвиговых регистра

    в ведущем и ведомом контроллерах можно рассматривать как один

    распределенный 16-разрядный регистр сдвига. Когда данные сдвигаются из

    ведущего контроллера в ведомый, то же самое происходит в обратном

    направлении. За один цикл сдвига ведущий и ведомый контроллеры обмениваются

    байтами данных.

    Система имеет одиночный буфер в направлении передачи и двойной в

    направлении приема. Передаваемый символ не записывается в регистр данных

    SPI до тех пор, пока передача не завершится. При приеме до завершения

    операции сдвига данные должны быть прочитаны из регистра данных. Иначе

    предыдущий символ теряется. При разрешении SPI выводы MOSI, MISO, SCK и SS

    устанавливаются на ввод/вывод в соответствии с таблицей.

    Таблица 16. Установка выводов SPI

    |Выво|Направление в режиме |Направление в режиме |

    |д |ведущего |ведомого |

    |MOSI|Определяется |Вход |

    | |пользователем | |

    |MISO|Вход |Определяется |

    | | |пользователем |

    |SCK |Определяется |Вход |

    | |пользователем | |

    |SS |Определяется |Вход |

    | |пользователем | |

    РАБОТА ВЫВОДА SS

    Если SPI сконфигурирован как ведущий (установлен бит MSTR в SPCR),

    пользователь может задавать направление ввода для ножки SS. Если SS

    сконфигурирован на вывод, ножка работает как бит ввода/вывода общего

    назначения не влияющий на работу SPI. Если ножка сконфигурирована на ввод,

    на нее необходимо подать высокий уровень, чтобы SPI работал в режиме

    ведущего. Если в режиме ведущего ножка SS установлена на ввод и внешним

    устройством устанавливается в низкий уровень, системой SPI это

    воспринимается как выбор шины другим ведущим устройством и попытка передать

    данные ведомому. Для избежания конфликтов на шине система SPI делает

    следующее:

    1. Сбрасывается бит MSTR в SPCR, система SPI становится ведомой. При этом

    ножки MOSI и SCK становятся входами.

    2. Устанавливается флаг SPIF в SPSR, если разрешены прерывания, будет

    исполнена программа обслуживания прерывания.

    Таким образом если передача по SPI производится в режиме ведущего и

    существует возможность установки вывода SS в низкий уровень, прерывание

    должно отслеживать установлен ли бит MSTR. Если бит MSTR будет сброшен при

    переходе в режим ведомого контроллера, обратно он должен быть установлен

    пользователем.

    Если система SPI сконфигурирована как ведомая, вывод SS всегда является

    входом. Когда SS переводится в низкий уровень, система SPI активируется и

    ножка MISO, если это задано пользователем, становится выходом. Другие

    выводы являются входами. Если внешним устройством на вывод SS подан высокий

    уровень, все выводы становятся входами, а система SPI становится пассивной,

    т.е. не будет принимать данные.

    Режимы обмена данными

    Биты CPHA и CPOL определяют четыре комбинации фазы и полярности SCK

    относительно битов данных. Битом CPOL задается полярность импульсов на

    выводе SCK, при CPOL=0 полярность импульсов положительная, при отсутствии

    импульсов на выводе удерживается низкий уровень. При CPOL=1 полярность

    импульсов отрицательная, при отсутствии импульсов на выходе высокий

    уровень. Битом CPHA задается фронт по которому обрабатываются биты данных.

    При CPHA=0 обработка происходит по переднему фронту импульсов SCK (для

    CPOL=0 переход из низкого уровня в высокий, для CPOL=1 - из высокого в

    низкий). При CPHA=1 обработка происходит по заднему фронту импульсов SCK.

    РЕГИСТР УПРАВЛЕНИЯ SPI – SPCR

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |0Dh(2Dh) | | | | | | | | |

    | |SPIE |SPE |DORD |MSTR |CPOL |CPHA |SPR1 |SPRO0 |

    | |R\W |R\W |R\W |R\W |R\W |R\W |R\W |R\W |

    |Начальное|0 |0 |0 |0 |0 |1 |0 |0 |

    |значение | | | | | | | | |

    Бит 7 - SPIE - Разрешение прерываний от SPI - если этот бит установлен, при

    установке бита SPIF в регистре SPSR выполняется прерывание от SPI, если

    разрешены общие прерывания.

    Бит 6 - SPE - Разрешение SPI - Этот бит должен быть установлен для

    осуществления любых операций по шине SPI.

    Бит 5 - DORD - Порядок бит данных - Если этот бит установлен, при обмене

    первым передается младший бит данных. Если бит сброшен – первым передается

    старший бит.

    Бит 4 - MSTR - Выбор ведущего/ведомого - При установке этого бита шина SPI

    работает в режиме ведущего, при сбросе - в режиме ведомого. Если вывод SS

    сконфигурирован как вход и устанавливается в низкий уровень когда

    установлен бит MSTR, бит MSTR сбрасывается и устанавливается бит SPIF в

    регистре SPSR. Для возобновления работы в режиме ведущего пользователь

    должен установить этот бит.

    Бит 3 - CPOL - Полярность тактовых сигналов - Этим битом задается

    полярность импульсов на выводе SCK, при CPOL=0 полярность импульсов

    положительная, при отсутствии импульсов на выводе удерживается низкий

    уровень. При CPOL=1 полярность импульсов отрицательная, при отсутствии

    импульсов на выходе высокий уровень.

    Бит 2 - CPHA - Фазировка тактовых импульсов. - Этим битом задается фронт по

    которому обрабатываются биты данных. При CPHA=0 обработка происходит по

    переднему фронту импульсов SCK (для CPOL=0 переход из низкого уровня в

    высокий, для CPOL=1 - из высокого в низкий). При CPHA=1 обработка

    происходит по заднему фронту импульсов SCK.

    Биты 1,0 - SPR1,SPR0 - Выбор тактовой частоты SPI. - Этими битами задается

    скорость работы SPI шины для ведущего устройства. Для ведомого контролерра

    установка этих бит не имеет значения. Соотношение тактовой частоты

    процессора и частоты SCK приведено в таблице:

    Таблица 17. Соотношение между SCK и тактовой частотой процессора

    |SPR1|SPR0|Частота SCK |SPR1|SPR0|Частота |

    | | | | | |SCK |

    |0 |0 |Fck/4 |1 |0 |Fck/64 |

    |0 |1 |Fck/16 |1 |1 |Fck/128 |

    РЕГИСТР СОСТОЯНИЯ SPI – SPSR

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |0Eh(2Eh) | | | | | | | | |

    | |SPIF |WCOL |- |- |- |- |- |- |

    | |R |R |R |R |R |R |R |R |

    |Начальное|0 |0 |0 |0 |0 |1 |0 |0 |

    |значение | | | | | | | | |

    Бит 7 - SPIF - флаг прерывания SPI. После завершения обмена устанавливается

    бит SPIF и генерируется прерывание, если установлен бит SPIE в SPCR и

    разрешены глобальные прерывания. Этот флаг устанавливается и в том случае,

    если на вывод SS, сконфигурированный как вход, подается низкий уровень,

    когда SPI работает в режиме ведущего. Флаг SPIF сбрасывается аппаратно при

    выполнении соответствующего вектора прерывания. Кроме того бит SPIF, если

    он был установлен, сбрасывается при первом же чтении регистра SPSR и

    последующем доступе к регистру данных SPI.

    Бит 6 - WCOL - Ошибка записи. - Этот бит устанавливается при записи в

    регистр SPDR во время обмена. Чтение регистра во время обмена дает неверный

    результат, запись в него не производится. Так же как и бит SPIF, WCOL

    сбрасывается (если он был установлен) при первом же чтении регистра SPSR и

    последующем доступе к регистру SPDR.

    Биты 5..0 - зарезервированы. В AT90S2333/4433 эти биты зарезервированы и

    всегда читаются как 0.

    SPI интерфейс также используется для загрузки и чтения памяти программ и

    содержимого EEPROM процессора, программирование процессора через SPI

    интерфейс будет рассмотрено ниже.

    РЕГИСТР ДАННЫХ SPI – SPDR

    | |7 |6 |5 |4 |3 |2 |1 |0 |

    |0Fh(2Fh) | | | | | | | | |

    | |MSB | | | | | | |LSB |

    Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.