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

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
27.0 Chameleon Hands-On Programming Tutorials and Demos
Either you spent the past couple days reading up to this section or you cheated and skipped here! No matter how you got
here, finally it’s time to see some actual code and the Chameleon AVR 8-bit in action! First, some ground rules.
After experimenting with all the tutorial demos you will have a command of all the sub-systems of the Chameleon AVR 8-
bit as well as be able to use the provided APIs to get things done. Then I suggest you start with the demos as templates
to get your own programs up and running before trying to do things from scratch.
27.1 Setup to Compile the Demos and Tutorials
To compile and run any of the tutorial demos you will need to have one of two things setup:
1. An AVRStudio project open and ready to go along with an AVRISP MKII programmer to directly download to the
Chameleon’s AVR programming port.
2. An Arduino “Sketch” project along with the Arduino bootloader previously FLASHED into the AVR 328P processor (this
is how the Chameleon AVR ships).
In a nutshell, if you just got your Chameleon AVR, it comes pre-FLASHED with a the Arduino bootloader and you can use
method 2 to run all the experiments. If on the other hand, you prefer a more robust tool like the Atmel AVRStudio IDE and
you have purchases the AVR ISPMKII programmer (or similar) then you can compile and program the Chameleon AVR
via the 6-pin ISP port. Both methods and setups were covered earlier in the manual. But, let’s briefly review a couple
details about the differences between the AVRStudio and Arduino version of each demo.
27.1.1 Differences Between the AVRStudio and Arduino Demos and General Porting Strategies
Before we get into the pre-setup of AVRStudio and the Arduino tool, let’s take a step back and discuss the differences
between the two tools and software as you write it.
First off, with AVRStudio and the Arduino tool, you program in C/C++. Technically, AVRStudio you can program in straight
C while the Arduino tool you can use C/C++. That said, we made all programs C, so they work on both tool chains. So
assuming we start with a simple C program on AVRStudio then porting it to Arduino requires only a few changes relating a
number of topic areas that we will cover below:
Include Files
The Arduino tool isn’t as flexible as AVRStudio. The whole point of the Arduino tool is to insulate the user from the
complexities of compilers, linkers, make files, etc. Thus, you have to code in the “template” that Arduino provides, to this
end, the search paths are a little different. When programming in AVRStudio, your header files will typically be included
like this:
Every tutorial was designed to show off some aspect of the Chameleon AVR’s hardware or a particular library.
Tutorials are not designed to be mind blowing or amazing, they are designed to show you how to use each
system and are very simple to get you started.
The Chameleon’s AVR’s API is far from bug free. There are probably lots of little bugs that I haven’t found, so
beware. However, the APIs don’t really do much, but send messages to the objects running on the Propeller chip,
so ultimately if something doesn’t work its probably the driver!
Each tutorial demo follows the same outline; the demo will be introduced, a screen shot (if applicable),
compilation instructions for both the Arduino mode of operation and straight AVRStudio.
Finally, the tutorials are organized in order of various sub-systems like keyboard, sound, graphics, etc. And each
demo might have a couple versions with different video drivers and/or VGA/NTSC support. I will tend to review
only one version of the demo since the others are usually variants. However, compilation files for each demo
version will be included.
© 2009 NURVE NETWORKS LLC “Exploring the Chameleon AVR 8-Bit”
205

Related parts for Chameleon-AVR