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

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
Function Prototype:
Description:
Example(s):
SPI_Prop_Print_String( DEVICE_NTSC, “Hello World!”);
SPI_Prop_Print_String( DEVICE_VGA, “Hello World!”);
Note: in this case, we are directly using the SPI command function to send commands to the Propeller, so you don’t need
the NTSC API source files.
_______________________________________________________________________________________________
20.0 NTSC Library Module Primer
The basic premise of the Chameleon design is that it leverages drivers running on the Propeller chip to do all the media
and graphics. Thus, whatever features the particular driver running on the Propeller side does is the only features we can
access via the PIC side. That doesn’t mean we can’t abstract functionality and add higher level functions that build on the
sub-functions, however, this probably isn’t productive since you will want to change drivers, re-write the Propeller driver
and so forth. Thus, for the majority of the “media” drivers all the API functions do (including the NTSC) is expose some of
the base functionality in nice function calls so you don’t have to send SPI messages yourself. In the case of the enhanced
NTSC driver (CHAM_DEFAULT2_DRV_112.SPIN), we are using the following Propeller Object for the NTSC tile engine
and text display:
CHAM_GFX_DRV_001_TB_001.SPIN – NTSC tile engine with support for terminal mode graphics as well as tile
If your TV/LCD has trouble displaying this driver’s output then you can use the other default driver that uses the generic
Parallax NTSC tile driver (not as powerful, but more stable signal). The name of that driver is
CHAM_DEFAULT1_DRV_112.SPIN). Then it loads the following driver for NTSC:
TV_Text_Half_Height_011.spin – NTSC tile engine with 40x30 characters max resolution, limited scrolling, no
Hopefully, you can use the standard default2 driver which includes the more advanced graphics tile engine which
supports game like applications. But, again, the point is, you can change the Propeller driver and re-write it as you wish,
we simply give you a starting point to get going with. So, if you want to know what the driver supports, you can always
peek into the driver itself CHAM_GFX_DRV_001_TB_001.SPIN and to see the messages that are getting passed to it,
you always look into the CHAM_DEFAULT2_DRV_112.SPIN driver itself.
With that in mind, if you want to use the NTSC driver then you need the following files added to your project:
int SPI_Prop_Print_String(int device, char *string);
CHAM_PIC_NTSC_DRV_V010.c
CHAM_PIC_NTSC_DRV_V010.h
Print “Hello World!” on both the NTSC and VGA monitors.
the display. Typically, you will use the NTSC/VGA API to print to the terminals, but this was created as a
quick and dirty function during testing, you might find it useful. The first parameter is the device you want
to print on; DEVICE_NTSC or DEVICE_VGA, and the second parameter is the ASCIIZ string you want
printed. Returns the last byte received from the SPI transmission of all the commands.
SPI_Prop_Print_String(…)is a legacy function that uses terminal NTSC/VGA driver to print strings on
redefinition of characters.
graphics, smooth scrolling, color manipulation, large playfields, fixed font 8x8
with 32x24 characters on the screen at one time. In essence, the mode acts like
a “console” or terminal, you can print to it, it will scroll when you print the last line,
etc. Additionally, it supports more advanced “graphics” like functions for gaming
applications, but we will discuss that in the next section.
- Main C file source for “NTSC” module.
- Header file for “NTSC” module.
© 2009 NURVE NETWORKS LLC “Exploring the Chameleon PIC 16-Bit”
169

Related parts for Chameleon-PIC