Предыдущая Следующая

Регистр SPSR отображает текущее состояние блока SPI. Этот регистр доступен только для чтения.

Битовая структура регистра SPSR приведена в Табл. 13.5.

Таблица 13.5. Биты регистра состояния SPI (S0SPSR — 0хЕ0020004, S1SPSR-0XE0030004)

Биты регистра SPSR

Название

Описание

Значение после сброса

2:0

Зарезервированы

Пользовательское программное обеспечение не должно производить запись в зарезервированные биты. Чтение зарезервированного бита возвращает неопределенное значение

NA

3

ABRT

Бит аварийного прекращения работы ведомого. Установка этого бита является сигналом того, что произошло аварийное прекращение работы ведомого. Этот бит сбрасывается путем чтения регистра SPSR

0

4

MODF

Бит ошибки режима. Установка этого бита является сигналом того, что произошла ошибка режима. Этот бит сбрасывается путем чтения регистра SPSR и последующей записи в регистр управления SPI

0

5

ROVR

Бит переполнения при чтении. Установка этого бита является сигналом того, что произошло переполнение при чтении. Этот бит сбрасывается путем чтения регистра SPSR

0

6

WCOL

Бит конфликта записи. Установка этого бита является сигналом того, что произошел конфликт записи. Этот бит сбрасывается путем чтения регистра SPSR и последующего обращения к регистру данных SPI

0

7

SPIF

Флаг окончания передачи через SPI. Установка этого флага сигнализирует о том, что процесс передачи данных через SPI закончен. Когда устройство является ведущим, флаг устанавливается в конце последнего цикла передачи. Когда устройство является ведомым, флаг устанавливается по тому тактовому перепаду (фронту или спаду, в зависимости от настроек модуля SPI) сигнала SCK, которым осуществляется выборка последнего бита данных. Этот флаг сбрасывается при первом же чтении регистра SPSR и последующем обращении к регистру данных SPI. Примечание. Этот флаг не является флагом прерывания от SPI. Последний находится в регистре SPINT.

0

Регистр данных SPI (SOSPDR - 0хЕ0020008, S1SPDR - ОхЕООЗОООв)

Этот двунаправленный регистр обеспечивает передачу и прием данных SPI. Данные, подлежащие передаче через SPI, записываются в регистр. Данные, принятые через SPI, могут быть прочитаны из регистра. Когда устройство является ведущим, запись в этот регистр инициирует передачу данных через SPI. Запись в этот регистр не приведет к инициации передачи в том случае, если бит SPIF в регистре состояния был установлен и регистр состояния не был прочитан.

Битовая структура регистра SPDR приведена в Табл. 13.6.

Таблица 13.6. Биты регистра данных SPI (SOSPDR - 0х£0020008, S1SPDR - 0хЕ0030008)

Биты регистра SPDR

Функция бита

Описание

Значение после сброса

7:0

Данные

Двунаправленный порт данных SPI

0

Регистр счетчика синхроимпульсов SPI (S0SPCCR - ОхЕ002000С, S1SPCCR - ОхЕООЗОООО)

Этот регистр управляет значением частоты SCK ведущего устройства. Регистр содержит количество циклов pclk, которое составляет один цикл синхросигнала SPI. Значение этого регистра всегда должно быть четным числом, т. е. бит 0 регистра всегда должен быть сброшен. Значение регистра также всегда должно быть больше или равно 8. Несоблюдение этих условий может привести к непредсказуемому поведению блока SPI.


Предыдущая Следующая



НА ГЛАВНУЮ | ЧТО ТАКОЕ PIC ? | ПРОГРАММАТОР | ПРОЕКТЫ | СТАТЬИ | ССЫЛКИ | КАРТА САЙТА
Hosted by uCoz