Chameleon-AVR Nurve Networks, Chameleon-AVR Datasheet - Page 194

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

Chameleon-AVR

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

Specifications of Chameleon-AVR

Processor To Be Evaluated
AVR 328P
Data Bus Width
8 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
Example(s):
_________________________________________________________________________________________________
Function Prototype:
Description:
Example(s):
23.0 Sound 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 is the only features we can
access via the AVR 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 sound) is expose some of
the base functionality in nice function calls so you don’t have to send SPI messages yourself.
For sound, we decided to re-use a driver from the HYDRA development that was designed for both PWM and PCM
(samples) with multiple channels. The same sound driver is used in both Default1 and Default2, so the same idea apply to
either driver you load on the Propeller (CHAM_DEFAULT1_DRV_112.SPIN or CHAM_DEFAULT2_DRV_112.SPIN). The
actual driver object used for sound is:
NS_sound_drv_052_11khz_16bit.spin – This is an 11Khz, 16bit sound driver with 9 independent audio channels! It’s
However, I only exposed a portion of its abilities thru the current SPI messages since sound is something that you will
probably want either a little or a lot, no need to waste messages. You can always add more. Therefore, the abilities you
see exposed in the following API are just a taste of what it can do. For example, to save commands, I mashed sound
commands into a single SPI packet, so you only can control 4 channels with limited frequency and control. In other words,
if you need more than simple 4 channel sound, then you will have to add messages to the SPI driver and add them
yourself.
int GFX_Set_Top_Overscan_Color(int col);
Read the current color and increment the chroma portion of the color (upper 4 bits).
Read the current color and increment the chroma portion of the color (upper 4 bits).
Propeller color format [chroma 4-bit | chroma enable 1-bit | luma 3-bit]. Returns 1.
Propeller color format [chroma 4-bit | chroma enable 1-bit | luma 3-bit]. Returns 1.
GFX_Set_Top_Overscan_Color(…) sets the top overscan color to col where col is in normal
pretty cool.
© 2009 NURVE NETWORKS LLC “Exploring the Chameleon AVR 8-Bit”
194

Related parts for Chameleon-AVR