This is the documentation for the data structures, functions, variables, defines, enums, and typedefs for the MPU driver.
It also gives an example of the usage of the MPU module.
The MPU allows the user to divide the memory space into different protection regions. These regions have a user-defined size and start at a user-defined address. The different regions can have different access privileges attributes.
You can also read the Memory Protection Unit section in the AVR32 UC technical reference guide.
Memory Range | Access Permissions |
RAM [0x00000000 - 0x00000F00[, Region 1, subregions 0 to 14 | Read / Write |
RAM [0x00000F00 - 0x00001000[, Region 1, subregion 15 | Read |
Stack [&stack - &stack + stack size[, Region 2, all subregions | Read / Write |
Flash [0x80000000 - 0x8000C000[, Region 0, subregions 0 to 11 | Read / eXecute |
Flash [0x8000C000 - 0x80010000[, Region 0, subregions 12 to 15 | Read |
PBA memory map[0xFFFF0000 - 0xFFFFFFFF], Region 3, all subregions | Read / Write |
This software was written for the GCC for AVR32 and IAR Embedded System Workbench for AVR32.
This example has been tested with the following configuration:
For further information, visit Atmel AVR UC3.