|

Benefits of a C Compiler
CCS provides a complete integrated tool suite for developing and debugging embedded applications running on Microchip PIC® MCUs and dsPIC® DSCs. The heart of this development tools suite is the CCS intelligent code optimizing C compiler which frees developers to concentrate on design functionality instead of having to become an MCU architecture expert.

|
Maximize code reuse by easily porting from one MCU to another device
|

|
Minimize lines of new code with CCS provided peripheral drivers, built-in functions and standard C operators
|

|
Built-in functions are specific to PIC® MCU registers, allowing access to hardware features directly from C
|

|
Ready to run examples and tested peripheral drivers allow developers to quickly start their project
|
|
|

|
Intelligent and highly optimized CCS C compilers contain Standard C operators and Built-in Function libraries that are specific to PIC registers, providing developers with a powerful tool for accessing device hardware features from the C language level. Standard C preprocessors, operators and statements can be combined with hardware specific directives and CCS provided built-in functions and example libraries to quickly develop applications incorporating leading edge technologies such as capacitive touch, wireless and wired communication, motion and motor control and energy management.
The C Aware IDE is an ideal environment to create C source code with integrated built-in functions, analyze it's performance, and debug the compiled code in real-time while running on Microchip devices. The C Aware IDE includes:

|
Project manager
|

|
C-Aware text editor
|

|
Compilation control to completely or partially build projects
|

|
Utilities for file comparison, numeric conversion, disassembly, parametric device selection and more
|

|
C-Source code level in-circuit debugger
|

|
Output file viewers for list files, symbol maps, call trees, etc.
|

|
Documentation creation tools
|
|
|

|
CCS C Compiler Products
The Flexible product configurations enable you to purchase only what you need now, and later add on additional family support and product features as you need them. Unlike compilers from other tool providers, all CCS compiler products offer the same high level of code optimization. The C Aware IDE is available in three levels of family support and individual command line compilers are available for each Microchip family. Command line products include a plug-in for MPLAB IDE.
Microchip P/N
|
CCS Product
|
PIC10/12
|
PIC16
|
PIC18
|
PIC24
|
dsPIC
|
IDE
|
Command Line
|
-
|
PCW
|
X
|
X
|
-
|
-
|
-
|
X
|
-
|
SW500004
|
PCWH
|
X
|
X
|
X
|
-
|
-
|
X
|
-
|
SW500024
|
PCWHD
|
X
|
X
|
X
|
X
|
X
|
X
|
-
|
-
|
PCDIDE
|
-
|
-
|
-
|
X
|
X
|
X
|
-
|
-
|
PCB
|
X
|
-
|
-
|
-
|
-
|
-
|
X
|
SW500003
|
PCM
|
-
|
X
|
-
|
-
|
-
|
-
|
X
|
SW500002
|
PCH
|
-
|
-
|
X
|
-
|
-
|
-
|
X
|
SW500021
|
PCD
|
-
|
-
|
-
|
X
|
X
|
-
|
X
|
Device Specific Optimization and Initialization
|
|

|
|

|

|
Device specific include files contain all the information the compiler needs to optimize code generation for the specific PIC® MCU.
- Op-code length
- Memory size
- Pin functionality
- Memory banking
- Peripheral resources
- Hardware stack size
|
|
|

|
|
Built-In Functions Provide Direct Access to PIC® MCU Hardware
|
|

|
|

|

|
The CCS compiler contains over 307 built-in functions that simplify access to hardware while producing efficient and highly optimized code. Functions are included for device hardware features such as:
- Timers & PWM modules
- A/D converters
- On-chip data EEPROM
- LCD controllers
- External memory busses
- And much more…
|
|
|

|
|
Arithmetic Libraries Speed up Code Development
Why recreate the wheel coding your own arithmetic functions in assembly or C? Standard C math libraries are supplied with the CCS compiler.
Quickly Implement Industry Standard Protocols
|
|

|
|

|

|
Built-in functions, include files, interrupts, and code examples help you to quickly "get on the bus". Serial buses such as I2C™ and SPI™, CAN, ECAN and USB interfaces and RS232 communications protocols are fully supported by the CCS compiler and development kits.
- Powerful built-in libraries for interface and communication such as #USE SPI(), #USE I2C() and #USE RS232() make it easy to define multiple I2C and RS232 ports
- Hardware transceiver used when possible, but for all other occasions the compiler generates a software serial transceiver.
- Serial I/O functions allow standard functions such as GETC() and PRINTF() to be used for RS-232 like I/O.
#USE RS232() offers options to specify a maximum wait time for getc.
|
|
|

|
|
Optimized String Handling Delivers Up to 18% Code Size Reductions
|
|

|
|

|

|
String compression for 7-bit ASCII strings has been implemented for Microchip's 14-bit opcode PIC12 and PIC16 families. Studies conducted by CCS show that string functions that used to take 2,300 bytes of ROM to implement now consume as little as 1,884, a savings of 18%
Strings can be used in switch statements, making it much easier developers to perform string comparisons. Comparisons that can take many individual string handling function calls to implement with other compilers can be handled directly in the switch statement, resulting in tighter and more maintainable source code and a smaller ROM footprint.
|
|
|

|
|
Efficient Bit Oriented Code

|
Standard one bit type (Short Int) permits the compiler to generate very efficient bit oriented code
|

|
Bit arrays are also supported
|
|
|

|
Standard one bit type (Short Int) permits the compiler to generate very efficient bit oriented code.
Bit arrays are also supported
Efficient Data Structures Mapped into Program Memory

|
Flexible constant data structure handling allows the compiler to handle lookup tables that are virtually unlimited in size. This is of particular interest to developers using large lookup tables for trigonometric functions or storing FPGA configuration memory images in on-chip MCU memory
|

|
Constants (including strings and arrays) are saved in program memory
|

|
DSP performance can be enhanced by manually assigning variables to data spaces for faster access with preprocessor directives
|
|
|

|
Extensive Source Code Driver Library
|
|

|
|

|

|
CCS provides an extensive source code library of drivers to aid in driver development for your target hardware.
- Source code drivers included for LCD modules, keypads, 24xx and 94xx serial EEPROM, X10, DS1302 and NJU6355 real time clocks, Dallas touch memory devices, DS2223 and PCF8570, LTC1298 and PCF8591 A/D converters, temperature sensors, digital pots, I/O expander and much more.
- 133 ready-to-run programs included
|
|
|

|
|
Microchip Enhanced Mid-Range Core Architecture Support
The CCS code optimizing C compiler supports up to 56K instructions and 4K RAM for these new 14-bit opcode devices. The Enhanced Mid-Range core's 16-level hardware stack is supported by the compiler's 16-level call stack, reducing the number of inlined system functions that must be coded. Built-in system functions are provided for all of the enhanced peripherals including A/D converters and comparators, SPI and I2C serial buses, PWM, mTouch™. non-volatile memory, op-amp and LCD
External Memory Support
The compiler contains features to simplify using external memory chips.

|
Addressmod capability to create user defined address spaces in memory device
|

|
Generation of multiple HEX files for chips with external memory
|
|
|

|
System Compatibility
The compiler runs under Windows 95, 98, ME, NT4, 2000, XP, Vista, or Linux. It outputs hex and debug files that are selectable and compatible with popular emulators and programmers including the MPLAB® IDE for source level debugging.
Buy Now
PCWH – CCS C Compiler plus IDE for PIC10/ PIC12/ PIC16/ PIC18 MCUs
PCWHD – CCS C Compiler plus IDE for PIC10/ PIC12/ PIC16/ PIC18/ PIC24/ dsPIC MCUs
PCM - CCS C Compiler for PIC16 MCUs
PCH - CCS C Compiler for PIC18 MCUs
PCD - CCS C Compiler for PIC24 and dsPIC MCUs
|