AVR микроконтроллер AT90S2333 фирмы Atmel
Категория реферата: Рефераты по радиоэлектронике
Теги реферата: сочинение капитанская, ответы 4 класс
Добавил(а) на сайт: Любомира.
Предыдущая страница реферата | 3 4 5 6 7 8 9 10 11 12 13 | Следующая страница реферата
После того как время записи истечет (типично 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 |
| |RW |RW |RW |RW |RW |RW |RW |RW |
|Начальное|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.
Рекомендуем скачать другие рефераты по теме: инвестиции реферат, форма реферата, конспект урока по русскому языку.
Предыдущая страница реферата | 3 4 5 6 7 8 9 10 11 12 13 | Следующая страница реферата