Регистр данных SPI - SPDR - (SPI Data Register)
Биты
|
|
$0F ($2F)
|
| SPDR
|
Чтение/Запись
| R/W
| R/W
| R/W
| R/W
| R/W
| R/W
| R/W
| R/W
|
|
|
Начальное состояние
|
|
|
Регистр данных SPI представляет собой регистр с возможностью чтения/записи и предназначен для пересылки данных между регистровым файлом и сдвиговым регистром SPI. Запись в регистр SPDR инициирует передачу данных, считывание регистра приводит к чтению сдвигового регистра приема.
Регистр статуса SPI - SPSR - (Status Register)
Биты
|
| $0E ($2E)
|
| SPSR
| Чтение/Запись
|
|
| Начальное состояние
|
|
| - Bit 7 - SPIF: SPI Interrupt Flag - Флаг прерывания по SPI
По завершении обмена последовательными данными бит SPIF устанавливается в состояние 1 и, если бит SPIE в регистре SPCR установлен и разрешено глобальное прерывание, генерируется сигнал прерывания. Бит SPIF очищается аппаратно при выполнении подпрограммы обработки соответствующего вектора прерывания. Бит SPIF может быть очищен также при первом считывании состояния регистра статуса SPI, с установленным битом SPIF, с последующим обращением к регистру данных SPI (SPDR). - Bit 6 - WCOL: Write Collision flag - Флаг ошибки при записи
Бит WCOL устанавливается в состояние 1 если в процессе передачи данных выполнялась запись в регистр данных (SPDR). Чтение содержимого регистра данных, как и запись в него, выполненные во время пересылки данных, могут привести к неверному результату. Бит WCOL (и бит SPIF) аппаратно очищаются (сбрасываются в состояние 0) при первом считывании регистра статуса SPI, с установленным WCOL, с последующим обращением к регистру данных SPI (SPDR). - Bit 5..0 - Res: Reserved bits - Зарезервированные биты
Эти биты в микроконтроллерах ATmega603/103 зарезервированы и при считывании всегда покажут состояние 0.
|