|
This integrated C development environment gives developers the capability to quickly produce
very efficient code from an easily maintainable high level language.
The compiler includes built-in
functions to access the PIC hardware such as READ_ADC to read a value from the A/D converter.
Discrete I/O is handled by describing the port characteristics in a PRAGMA. Functions such
as INPUT and OUTPUT_HIGH will properly maintain the tri-state registers. Variables including
structures may be directly mapped to memory such as I/O ports to best represent the hardware structure
in C.
The microcontroller clock speed may be specified in a PRAGMA to permit built in functions to delay
for a given number of microseconds or milliseconds. Serial I/O functions allow standard functions such as
GETC and PRINTF to be used for RS-232 like I/O.
The hardware serial transceiver is used for applicable
parts when possible. For all other cases a software serial transceiver is generated by the compiler.
The standard C operators and the special built in functions are optimized to produce very efficient code
for the bit and I/O functions.
Functions may be implemented inline or separate, allowing to optimize
for either ROM concerns or speed concerns. Function parameters are passed in
reusable registers. Inline functions with reference parameters are implemented
efficiently with no memory overhead.
During the linking process the program structure, including the call tree, is analyzed.
Functions that call one another frequently are grouped together in the same page segment.
Calls across pages are handled automatically by the tool transparent to the user. Functions
may be implemented inline or separate. RAM is allocated efficiently by using the call tree
to determine how locations can be re-used. Constant strings and tables are saved in the device
ROM.
The output hex and debug files are select-able and compatible with popular emulators and programmers
including MPLAB for source level debugging. PCW includes a powerful Windows IDE. The compiler
requires Windows 95, 98, ME, NT4, 2000 or XP.
- Comprenhensive library support for RS232 serial I/O library, I/O, I2C, discrete I/O and precision delays.
- Source code drivers and examples included for LCD modules, keypads, 24xx &93xx serial E2PROM's, X10, DS1302 & NJU6355
Real Time Clocks, Dallas Touch Memory Devices, DS2223 & PCF8570 Serial SRAM, LTC1298 & PCF8591 A/D converters,
temperature sensors, digital pots, I/O expander and much more.
- Access to hardware features from easy to use C functions, Timers, A/D, EEPROM, SSP, PSP, I2C and more.
- Efficient function implementation allows call trees deeper than the hardware stack.
- Inline procedures supported to save stack space; Linker will automatically determine the best architecture
or it can be manually specified.
- Efficient function implementation allows call trees deeper than the hardware stack.
- Automatic linking to handle multiple code pages
- Supports 1, 8 and 16 bit integer types and 32 bit floating point variables & arithmetic.
One bit type (Short Int) permits the compiler to generate very efficient Bit oriented code.
- Compiler directives determine if tri-state registers are refreshed on ever I/O or if the I/O is as fast
as possible.
- Constants (including strings and arrays) are saved in program memory.
- #BIT and #BYTE will allow C variables to be placed at absolute addresses to map registers to C variables.
- Integrates with MPLAB and other simulators/emulators for source level debugging & Produces standard
HEX output for use with all programmers
- Assembly code may be inserted anywhere in the source and may reference C variables
- Constants (including strings and arrays) are saved in program memory
- Special windows show the RAM memory map, C/Assembly listing, and the calling tree
- Interrupt functions supported on PCM/PCH. The compiler generates all startup and clean up code as well
as identifying the correct interrupt function to be called.
-
Updates via the web for 30 days included
|
 |
Standard C Char |  |
atoi()
atol()
atoi32()
atof()
tolower()
toupper()
isalnum()
isalpha()
isamoung()
isdigit()
islower()
isspace()
isupper()
isxdigit()
strlen()
strcpy()
strncpy()
strcopy()
strcmp()
stricmp()
strncmp()
strcat()
strstr()
strchr()
strrchr()
strtok()
strspn()
strcspn()
strpbrk()
strlwr()
Delays |  |
delay_cycles()
delay_us()
delay_ms()
Capture/Compare/PWM |  |
setup_ccpX()
set_pwmX_duty()
Processor Controls |  |
sleep()
reset_cpu()
restart_cause()
disable_interrupts()
enable_interrupts()
ext_int_edge()
read_bank()
|
Standard C Memory |  |
memset()
memcpy()
RS232 I/O |  |
getc()
putc()
gets()
puts()
printf()
kbhit()
set_uart_speed()
I2C I/O |  |
i2c_start()
i2c_stop()
i2c_read()
i2c_write()
i2c_poll()
Discrete I/O |  |
output_low()
output_high()
output_float()
output_bit()
input()
output_X()
input_X()
port_b_pullups()
set_trix_X()
SPI 2 Wire I/O |  |
setup_spi()
spi_read()
spi_write()
spi_data_is_in()
Parallel Slave I/O |  |
setup_psp()
psp_input_full()
psp_output_full()
psp_overflow()
Timers |  |
setup_timer_X()
set_timer_X()
get_timer_X()
setup_counters()
setup_wdt()
restart_wdt()
|
Standard C Math |  |
abs()
abs32()
acos()
asin()
atan()
ceil()
cos()
exp()
floor()
labs()
log()
log10()
pwr()
sin()
sqrt()
tan()
A/D Conversion |  |
setup_adc_ports()
setup_adc()
set_adc_channel()
read_adc()
Analog Compare |  |
setup_comparator()
Voltage Ref |  |
setup_vref()
Internal EEPROM |  |
read_eeprom()
write_eeprom()
read_program_eeprom()
write_program_eeprom()
read_calibration()
Bit Manipulation |  |
shift_right()
shift_left()
rotate_right()
rotate_left()
bit_clear()
bit_set()
bit_test()
swap()
|
Standard C |  |
#define
#undef
#include
#if
#ifdef
#ifndef
#else
#endif
#list
#nolist
#error
#pragma
Function Qualifiers |  |
#inline
#seperate
#int_XXXXX
#int_global
#int_default
Standard C |  |
#device
#id
#fuses
|
Libraries |  |
#use delay
#use rs232
#use i2c
#use standard_io
#use fixed_io
#use fast_io
Standard C |  |
#byte
#bit
#locate
#reserve
#rom
#zero_ram
#asm
#endasm
Standard C |  |
#case
#opt
#priority
__date__
__device__
__pcb__
__pcm__
__pch__
|
|
- IF, ELSE, WHILE, DO, SWITCH, CASE, FOR, RETURN, GOTO, BREAK, CONTINUE
- ! ~ ++ -- + - , & |
- * / % << >> ^ && || ?:
- < <= > >= == !=
- = += -= *= /= %= >>= <<= &= ^= |=
- TYPEDEF, STATIC, AUTO, CONST, ENUM, STRUCT, UNION
- Arrays up to 5 subscripts
- Structures and Unions may be nested.
- Custom bit fields (1-8 bits) within structures.
- ENUMurated types
- CONSTant variables, arrays and strings.
- Full function parameter support (any number).
- Some support for C++ reference parameters.
COMPARISON |
|
CCS C compiler is packaged with a large number of example programs to show how to work with
PIC C and your microcontrollers. Also included is source code drivers for communicating
with EEPROMS, Real Time Clocks, LCD screens, A/D converters and etc.
|
|
C compiler with IDE for PIC12/PIC16/PIC18 Family
CODE: 110-01
US$425.00 + US$25( * ) = US$450.00
C compiler for 14-bit Family PIC:
16CXX/14000/16F8X/16F87X families.
It comes with DOS IDE & Command Line &
also with integration to MPLAB Development Environment.
|
 |
C compiler for 12-bit & 14-bit
Family PIC. Comes with a Windows
Integrated Development
Environment & command line
Compiler and DEVEDIT utility to
update chip database & fine tune
compiler code generation.
WIN32 CommandLine with integration to MPLAB
Development Environment and compiler is specific
to the new PIC18CXXX Family.
|
|
|