Chameleon-PIC Nurve Networks, Chameleon-PIC Datasheet - Page 142

MCU, MPU & DSP Development Tools PIC24 & PROPELLER DEV SYSTEM (SBC)

Chameleon-PIC

Manufacturer Part Number
Chameleon-PIC
Description
MCU, MPU & DSP Development Tools PIC24 & PROPELLER DEV SYSTEM (SBC)
Manufacturer
Nurve Networks
Datasheet

Specifications of Chameleon-PIC

Processor To Be Evaluated
PIC24
Data Bus Width
16 bit
Interface Type
USB, VGA, PS/2, I2C, ISP, SPI
Operating Supply Voltage
3.3 V, 5 V
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
// Max chip specified instruction rate (40 MIPS)
#define MAX_FCY_RATE 40000000L
// Pin direction constants. PICs use 0 for output, 1 for input on TRIS registers
#define PIN_DIR_OUTPUT 0
#define PIN_DIR_INPUT 1
The MAX_FCY_RATE is used by a number of libraries such as the UART init() function to configure the baud rate scalars.
The other defines are useful for configuring pin directions using the PIC24 TRIS registers.
// The chosen operating clock rate
extern unsigned long g_FCY;
// generic input device data record type, helps get back data from various multidata calls
typedef struct gid_event_type
Included in this header is the definition of a generic input device data record that is used for reading the mouse state from
the Propeller drivers.
Lastly, so that the user can change the system frequency if he wishes during run-time, there is a variable shadow of the
MAX_FCY_RATE constant that is loaded with said constant during startup. Thus, the variable is used in the Chameleon
PIC library for calculations. This gives it timing information and as noted the ability to be changed during run-time.
That wraps it up for the header file declarations. The remainder of the header file is simply the prototype listing for the
functions themselves which we will see in the next section.
17.1.2 API Listing Reference
The API listing for the “System” module CHAM_PIC_SYSTEM_V010.c is quite short. As said, this C file is a placeholder
for future functionality that relates to system level housekeeping and utility functions, so at this early stage there isn’t
much here. Considering that, Table 17.3 below lists the “System” API functions categorized by functionality.
Function Name
System Configuration
void SYS_ConfigureClock(unsigned long FCY);
17.1.3 API Functional Declarations
The following lists each function, a description, comments, and example usage of the function.
{
int x,y,z;
int buttons;
} gid_event, *gid_event_ptr;
// position data
// buttons, bit encoded
// bit4 = right-side button
// bit3 = left-side button
// bit2 = center/scrollwheel button
// bit1 = right button
// bit0 = left button
Table 17.3 – “System” module API functions listing.
Description
Configures the system PLL with the given clock rate. Currently
only the MAX_FCY_RATE variable is accept.
© 2009 NURVE NETWORKS LLC “Exploring the Chameleon PIC 16-Bit”
142

Related parts for Chameleon-PIC