Nut/OS  4.10.3
API Reference
Special Function

Special function registers. More...

Collaboration diagram for Special Function:

Chip Identification Registers

#define SF_CIDR   (SF_BASE + 0x00)
 Chip ID register address.
#define SF_EXID   (SF_BASE + 0x04)
 Chip ID extension register address.
#define SF_VERSION   0x0000001F
 Version number mask.
#define SF_NVPSIZ   0x00000F00
 Masks non-volatile program memory size.
#define SF_NVPSIZ_NONE   0x00000000
 No NV program memory.
#define SF_NVPSIZ_32K   0x00000300
 32 kBytes NV program memory.
#define SF_NVPSIZ_64K   0x00000500
 64 kBytes NV program memory.
#define SF_NVPSIZ_128K   0x00000700
 128 kBytes NV program memory.
#define SF_NVPSIZ_256K   0x00000900
 256 kBytes NV program memory.
#define SF_NVDSIZ   0x0000F000
 Masks non-volatile data memory size.
#define SF_NVDSIZ_NONE   0x00000000
 No NV data memory.
#define SF_VDSIZ   0x000F0000
 Masks volatile data memory size.
#define SF_VDSIZ_NONE   0x00000000
 No volatile data memory.
#define SF_VDSIZ_1K   0x00010000
 1 kBytes volatile data memory.
#define SF_VDSIZ_2K   0x00020000
 2 kBytes volatile data memory.
#define SF_VDSIZ_4K   0x00040000
 4 kBytes volatile data memory.
#define SF_VDSIZ_8K   0x00080000
 8 kBytes volatile data memory.
#define SF_ARCH   0x0FF00000
 Architecture code mask.
#define SF_ARCH_AT91x40   0x04000000
 AT91x40 architecture.
#define SF_ARCH_AT91x55   0x05500000
 AT91x55 architecture.
#define SF_ARCH_AT91x63   0x06300000
 AT91x63 architecture.
#define SF_NVPTYP   0x70000000
 Masks non-volatile program memory type.
#define SF_NVPTYP_M   0x01000000
 M or F series.
#define SF_NVPTYP_C   0x02000000
 C series.
#define SF_NVPTYP_S   0x03000000
 S series.
#define SF_NVPTYP_R   0x04000000
 R series.
#define SF_EXT   0x80000000
 Extension flag.

Reset Status Flag Register

#define SF_RSR   (SF_BASE + 0x08)
 Reset status register address.
#define SF_EXT_RESET   0x0000006C
 Reset caused by external pin.
#define SF_WD_RESET   0x00000053
 Reset caused by internal watch dog.

Memory Mode Register

#define SF_MMR   (SF_BASE + 0x0C)
 Memory mode register address.
#define SF_RAMWU   0x00000001
 Internal extended RAM write allowed.

Protect Mode Register

#define SF_PMR   (SF_BASE + 0x18)
 Protect mode register address.
#define SF_AIC   0x00000020
 AIC runs in protect mode.

Detailed Description

Special function registers.


Define Documentation

#define SF_CIDR   (SF_BASE + 0x00)

Chip ID register address.

Definition at line 57 of file at91_sf.h.

#define SF_EXID   (SF_BASE + 0x04)

Chip ID extension register address.

Definition at line 58 of file at91_sf.h.

#define SF_VERSION   0x0000001F

Version number mask.

Definition at line 59 of file at91_sf.h.

#define SF_NVPSIZ   0x00000F00

Masks non-volatile program memory size.

Definition at line 61 of file at91_sf.h.

#define SF_NVPSIZ_NONE   0x00000000

No NV program memory.

Definition at line 62 of file at91_sf.h.

#define SF_NVPSIZ_32K   0x00000300

32 kBytes NV program memory.

Definition at line 63 of file at91_sf.h.

#define SF_NVPSIZ_64K   0x00000500

64 kBytes NV program memory.

Definition at line 64 of file at91_sf.h.

#define SF_NVPSIZ_128K   0x00000700

128 kBytes NV program memory.

Definition at line 65 of file at91_sf.h.

#define SF_NVPSIZ_256K   0x00000900

256 kBytes NV program memory.

Definition at line 66 of file at91_sf.h.

#define SF_NVDSIZ   0x0000F000

Masks non-volatile data memory size.

Definition at line 68 of file at91_sf.h.

#define SF_NVDSIZ_NONE   0x00000000

No NV data memory.

Definition at line 69 of file at91_sf.h.

#define SF_VDSIZ   0x000F0000

Masks volatile data memory size.

Definition at line 71 of file at91_sf.h.

#define SF_VDSIZ_NONE   0x00000000

No volatile data memory.

Definition at line 72 of file at91_sf.h.

#define SF_VDSIZ_1K   0x00010000

1 kBytes volatile data memory.

Definition at line 73 of file at91_sf.h.

#define SF_VDSIZ_2K   0x00020000

2 kBytes volatile data memory.

Definition at line 74 of file at91_sf.h.

#define SF_VDSIZ_4K   0x00040000

4 kBytes volatile data memory.

Definition at line 75 of file at91_sf.h.

#define SF_VDSIZ_8K   0x00080000

8 kBytes volatile data memory.

Definition at line 76 of file at91_sf.h.

#define SF_ARCH   0x0FF00000

Architecture code mask.

Definition at line 78 of file at91_sf.h.

#define SF_ARCH_AT91x40   0x04000000

AT91x40 architecture.

Definition at line 79 of file at91_sf.h.

#define SF_ARCH_AT91x55   0x05500000

AT91x55 architecture.

Definition at line 80 of file at91_sf.h.

#define SF_ARCH_AT91x63   0x06300000

AT91x63 architecture.

Definition at line 81 of file at91_sf.h.

#define SF_NVPTYP   0x70000000

Masks non-volatile program memory type.

Definition at line 83 of file at91_sf.h.

#define SF_NVPTYP_M   0x01000000

M or F series.

Definition at line 84 of file at91_sf.h.

#define SF_NVPTYP_C   0x02000000

C series.

Definition at line 85 of file at91_sf.h.

#define SF_NVPTYP_S   0x03000000

S series.

Definition at line 86 of file at91_sf.h.

#define SF_NVPTYP_R   0x04000000

R series.

Definition at line 87 of file at91_sf.h.

#define SF_EXT   0x80000000

Extension flag.

Definition at line 89 of file at91_sf.h.

#define SF_RSR   (SF_BASE + 0x08)

Reset status register address.

Definition at line 95 of file at91_sf.h.

#define SF_EXT_RESET   0x0000006C

Reset caused by external pin.

Definition at line 96 of file at91_sf.h.

#define SF_WD_RESET   0x00000053

Reset caused by internal watch dog.

Definition at line 97 of file at91_sf.h.

#define SF_MMR   (SF_BASE + 0x0C)

Memory mode register address.

Definition at line 102 of file at91_sf.h.

#define SF_RAMWU   0x00000001

Internal extended RAM write allowed.

Definition at line 103 of file at91_sf.h.

#define SF_PMR   (SF_BASE + 0x18)

Protect mode register address.

Definition at line 108 of file at91_sf.h.

#define SF_AIC   0x00000020

AIC runs in protect mode.

Definition at line 109 of file at91_sf.h.