Microchip Technology SW006023-1N Data Sheet

Page of 238
MPLAB
®
 XC32 C/C++ COMPILER
USER’S GUIDE
 2012 Microchip Technology Inc.
DS51686E-page 85
Chapter 4.  Device-Related Features
4.1
INTRODUCTION
The MPLAB XC32 C/C++ Compiler supports a number of special features and exten-
sions to the C/C++ language which are designed to ease the task of producing 
ROM-based applications. This chapter documents the special language features which 
are specific to these devices.
• Stack
4.2
DEVICE SUPPORT
MPLAB XC32 C/C++ Compiler aims to support all PIC32 devices. However, new 
devices in these families are frequently released. Check the readme document for a full 
list of all available devices.
4.3
DEVICE HEADER FILES
There is one header file that is recommended be included into each source file you 
write. The file is <xc.h> and is a generic file that will include other device-specific 
header files when you build your project.
Inclusion of this file will allow access to SFRs via special variables, as well as 
#define
s which allow the use of conventional register names from within assembly 
language files.
4.3.1
CP0 Register Definitions Header File
The CP0 register definitions header file (cp0defs.h) is a file that contains definitions 
for the CP0 registers and their fields. In addition, it contains macros for accessing the 
CP0 registers.
The CP0 register definitions header file is located in the pic32mx/include directory 
of your compiler installation directory. The CP0 register definitions header file is 
automatically included when you include the generic device header file, xc.h.
The CP0 register definitions header file was designed to work with either Assembly or 
C/C++ files. The CP0 register definitions header file is dependent on macros defined 
within the processor generic header file).