SPI control register 2 (SPI_CR2)

Второй регистр управления SPI

Смещение (Address offset): 0x04

Reset value: 0x0000

15141312111098
Reserved
---
00000000
76543210
TXEIE RXNEIE ERRIE Reserved SSOE TXDMAEN RXDMAEN
rwrwrw---rwrwrw
00000000


Биты
Имя
Описание
15:8
Reserved
Reserved, must be kept at reset value
Зарезервировано. Должно быть сохранено значение после сброса
7
TXEIE
Tx buffer empty interrupt enable
Разрешение прерывания по опустошению буфера передачи Tx

 0 :  прерывание запрещено

 1 :  разрешает прерывание и по событию устанавливает флаг TXE в регистре SPI_SR

6
RXNEIE
RX buffer not empty interrupt enable
Разрешение прерывания по заполнению буфера приёма Rx

 0 :  прерывание запрещено

 1 :  разрешает прерывание и по событию устанавливает флаг RXNE в регистре SPI_SR

5
ERRIE
Error interrupt enable
Разрешение прерывания при возникновении ошибки

 0 :  прерывание запрещено

 1 :  разрешает прерывание и по событию устанавливает соответствующие флаги в регистре SPI_SR

Бит управляет генерацией прерывания при возникновении ошибки (CRCERR, OVR, MODF в режиме SPI и UDR, OVR в режиме I2S).

4:3
Reserved
Reserved, must be kept at reset value
Зарезервировано. Должно быть сохранено значение после сброса
2
SSOE
SS output enable

 0 : 

 1 : 

Бит недоступен в режиме I2S.

1
TXDMAEN
Tx buffer DMA enable
Включение DMA для буфера передачи Tx

 0 :  отключает DMA для буфера передачи

 1 :  разрешает запрос DMA и по событию устанавливает флаг TXE в регистре SPI_SR

0
RXDMAEN
Rx buffer DMA enable
Включение DMA для буфера приёма Rx

 0 :  отключает DMA для буфера приёма

 1 :  разрешает запрос DMA и по событию устанавливает флаг RXNE в регистре SPI_SR



/*******************  Bit definition for SPI_CR2 register  ********************/

#define  SPI_CR2_RXDMAEN     ((uint8_t)0x01)     /* Rx Buffer DMA Enable */
#define  SPI_CR2_TXDMAEN     ((uint8_t)0x02)     /* Tx Buffer DMA Enable */

#define  SPI_CR2_SSOE        ((uint8_t)0x04)     /* SS Output Enable */

#define  SPI_CR2_ERRIE       ((uint8_t)0x20)     /* Error Interrupt Enable */
#define  SPI_CR2_RXNEIE      ((uint8_t)0x40)     /* RX buffer Not Empty Interrupt Enable */
#define  SPI_CR2_TXEIE       ((uint8_t)0x80)     /* Tx buffer Empty Interrupt Enable */