Altera SoCAL  16.0
The Altera SoC Abstraction Layer (SoCAL) API Reference Manual
 All Data Structures Variables Typedefs Groups
Register : Slave Enable Register - ser

Description

The register enables the individual slave select output lines from the SPI Master. Up to 4 slave-select output pins are available on the SPI Master. You cannot write to this register when SPI Master is busy and when SPI_EN = 1.

Register Layout

Bits Access Reset Description
[3:0] RW 0x0 Slave Select Enable Flag
[31:4] ??? 0x0 UNDEFINED

Field : Slave Select Enable Flag - ser

Each bit in this register corresponds to a slave select line (spim_ss_x_n] from the SPI Master. When a bit in this register is set (1), the corresponding slave select line from the master is activated when a serial transfer begins. It should be noted that setting or clearing bits in this register have no effect on the corresponding slave select outputs until a transfer is started. Before beginning a transfer, you should enable the bit in this register that corresponds to the slave device with which the master wants to communicate. When not operating in broadcast mode, only one bit in this field should be set.

Field Enumeration Values:

Enum Value Description
ALT_SPIM_SER_SER_E_NOTSELECTED 0x0 Slave x Not Selected
ALT_SPIM_SER_SER_E_SELECTED 0x1 Slave x Selected

Field Access Macros:

#define ALT_SPIM_SER_SER_E_NOTSELECTED   0x0
 
#define ALT_SPIM_SER_SER_E_SELECTED   0x1
 
#define ALT_SPIM_SER_SER_LSB   0
 
#define ALT_SPIM_SER_SER_MSB   3
 
#define ALT_SPIM_SER_SER_WIDTH   4
 
#define ALT_SPIM_SER_SER_SET_MSK   0x0000000f
 
#define ALT_SPIM_SER_SER_CLR_MSK   0xfffffff0
 
#define ALT_SPIM_SER_SER_RESET   0x0
 
#define ALT_SPIM_SER_SER_GET(value)   (((value) & 0x0000000f) >> 0)
 
#define ALT_SPIM_SER_SER_SET(value)   (((value) << 0) & 0x0000000f)
 

Data Structures

struct  ALT_SPIM_SER_s
 

Macros

#define ALT_SPIM_SER_OFST   0x10
 
#define ALT_SPIM_SER_ADDR(base)   ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_SPIM_SER_OFST))
 

Typedefs

typedef struct ALT_SPIM_SER_s ALT_SPIM_SER_t
 

Data Structure Documentation

struct ALT_SPIM_SER_s

WARNING: The C register and register group struct declarations are provided for convenience and illustrative purposes. They should, however, be used with caution as the C language standard provides no guarantees about the alignment or atomicity of device memory accesses. The recommended practice for writing hardware drivers is to use the SoCAL access macros and alt_read_word() and alt_write_word() functions.

The struct declaration for register ALT_SPIM_SER.

Data Fields
uint32_t ser: 4 Slave Select Enable Flag
uint32_t __pad0__: 28 UNDEFINED

Macro Definitions

#define ALT_SPIM_SER_SER_E_NOTSELECTED   0x0

Enumerated value for register field ALT_SPIM_SER_SER

Slave x Not Selected

#define ALT_SPIM_SER_SER_E_SELECTED   0x1

Enumerated value for register field ALT_SPIM_SER_SER

Slave x Selected

#define ALT_SPIM_SER_SER_LSB   0

The Least Significant Bit (LSB) position of the ALT_SPIM_SER_SER register field.

#define ALT_SPIM_SER_SER_MSB   3

The Most Significant Bit (MSB) position of the ALT_SPIM_SER_SER register field.

#define ALT_SPIM_SER_SER_WIDTH   4

The width in bits of the ALT_SPIM_SER_SER register field.

#define ALT_SPIM_SER_SER_SET_MSK   0x0000000f

The mask used to set the ALT_SPIM_SER_SER register field value.

#define ALT_SPIM_SER_SER_CLR_MSK   0xfffffff0

The mask used to clear the ALT_SPIM_SER_SER register field value.

#define ALT_SPIM_SER_SER_RESET   0x0

The reset value of the ALT_SPIM_SER_SER register field.

#define ALT_SPIM_SER_SER_GET (   value)    (((value) & 0x0000000f) >> 0)

Extracts the ALT_SPIM_SER_SER field value from a register.

#define ALT_SPIM_SER_SER_SET (   value)    (((value) << 0) & 0x0000000f)

Produces a ALT_SPIM_SER_SER register field value suitable for setting the register.

#define ALT_SPIM_SER_OFST   0x10

The byte offset of the ALT_SPIM_SER register from the beginning of the component.

#define ALT_SPIM_SER_ADDR (   base)    ALT_CAST(void *, (ALT_CAST(char *, (base)) + ALT_SPIM_SER_OFST))

The address of the ALT_SPIM_SER register.

Typedef Documentation

The typedef declaration for register ALT_SPIM_SER.