A new 32-bit Arduino Shield Compatible platform.

 

Home

Store

Products

Flexis MCU

Getting Started

Resources

Support

Contact

 

 

 
 
 

 


1. Check the hardware:

Firebird32 board:

To reduce assembling labor cost, multiple headers are replaced by a single header ( less insertions= lower labor cost ).  We will pull out all unused pins between headers before shipping.

One pin  between headers D11 and D10
One pin  between headers D10 and D6
Two pins between headers J4 and J5
Two pins between headers J5 and J6
Pin 7-Pin10 on header J1 (the LCD header)

In case we did not pull all pins out, you need to do it by yourself.  At first, you push those pins down a little bit from the component side of PCB, then pull them out from the solder side of PCB with a pair of pliers.

 

Carefully examine the default jumper settings before turning on the board:

 

Figure 1

 

Figure 2

Each of 3-pin headers labeled with D11, D10 and D6 has a jumper on the left side, so it makes the D11 as MOSI signal, the D10 as /SS signal, the D6 as one input of the analog comparator. The jumpers come in black, the color is used for illustration only.                          The 2x3 header for A4 and A5 has 2 jumpers placed on the left 4 pins as shown on the above picture, so the pin A4 and the pin A5 of the analog port are two analog inputs.  When the jumpers are placed on the right 4 pins, the pin A4 and the pin A5 of the analog port become the SDA and SCL of I2C. 

 

Make a ground test point:

 

Figure 3

  Figure 4
To save cost, we use a 2-pin male header as a GND test point. You need to cut the right side pin, then bend the left side pin to make a loop for a ground test point.   After the left pin is bent, this is what a ground test point should look like. It's handy for the ground connection of a scope.

 

 

To prevent component leads from scratching your table surface:

We will try our best to include a large rubber feet with every Firebird32 board ( your chance of getting it will be >99.99% ). If in case we miss it, we are not responsible for re-sending it. You can buy a similar one at any hardware or department store.

 

Figure 5

 

Figure 6



You need to cut the rubber feet into 4 small pieces and stick them at four corners on the solder side of the board. This will prevent any component lead from scratching your table surface. 
  WARNING:  For the safety reason, use a pair of pliers to hold the rubber feet and keep your hand away from the cutter or scissors.


 

 

If you do not plan to use a breadboard then skip the following 3 pictures.

We will try our best to include a large rubber feet with every solderless breadboard ( your chance of getting it will be  >99.99% ). If in case we miss it, we are not responsible for re-sending it. You can buy a similar one at any hardware or department store.

   

Figure 7

 

Figure 8

 

Figure 9

You need to cut the rubber feet into 4 small pieces and fold the 4 corners of the backing paper as shown on the above picture. For the best result, you may cut all corners off, or use a piece of scotch tape to hold down each corner.    Align up the 4 small pieces of rubber feet with the 4 right angle symbols on the PC board, then firmly press each piece. Make sure that all rubber feet are not placed over any component.   Flip the breadboard over and align the 4 corners with the rubber feet and firmly press it down.
The breadboard should sit over the chip securely.


 

Firebird32-Nano 40-pin DIP module:

The BDM header is installed at the factory but the speaker and male headers on the Firebird32-Nano are not included and they are sold as options. You can solder in the speaker and whatever male headers are needed in your applications. For OEM and university orders we will offer the module with all components installed as an option. Please contact us for details.

The best way to solder the two 20x1 male headers is to use a solderless breadboard as a holder.  At first, place two 20x1 headers at 0.7" apart, then place the Nano module over the headers and solder one pin at a time. The breadboard will keep headers straight all the time during soldering.

The Firebird32-Nano is a 40-pin DIP module and its pinouts are not compatible to the Arduino-Nano because we like to make our Nano module with more futures.  If there is a demand for a 30-pin Arduino-Nano pin compatible DIP module in the future we will make it available.

 

Firebird32-Mini 28-pin DIP module:

The male headers on the Firebird32-Mini are not installed except the BDM header. You can solder in whatever male headers are needed in your applications. For OEM and university orders we will offer the module with all male headers installed as an option. Please contact us for details.

The best way to solder the two 14x1 male headers is to use a solderless breadboard as a holder.  At first, place two 14x1 headers at 0.6" apart, then place the Mini module over the headers and solder one pin at a time.  The breadboard will keep headers straight all the time during soldering.

The Firebird32-Mini is a 28-pin DIP module and its pinouts of upper 24 pins are compatible to the Arduino-Mini or BASIC-Stamp.

 

2.  Run the demo program:

Firebird32 board:

The Firebird32 is preloaded with a demo program at factory written by Jim Donelson or Rich Testardi.  The board can be powered by a BDM or a USB port or an AC adapter.  When it's powered by a BDM, no USB cable or AC adapter should be plugged in.  When it's powered by a USB port or an AC adapter, Its auto sensing and switching circuit will automatically select power from the two sources. There is no need to manually select the source of the power.

When it's powered the power LED ( the green LED labeled with "ON") should be lit.

If your Firebird32 is not installed with StickOS BASIC, The demo program will run after power up or whenever the reset button is pressed.  It it does not, check the power LED first.  If it's off, the BDM cable may be plugged upside down or the USB cable may not be plugged in or the AC adapter's DC output has a wrong voltage polarity. If the power LED is on, but the demo program does not run, then the demo program is probably erased or not installed.

If your Firebird32 is installed with StickOS BASIC, the demo program is installed in flash memory, but AUTORUN feature is set to "OFF", so the demo program will not run automatically.  You need to following instructions in the section #3, "Write your first program", to set up communication between StickOS and TeraTerm, then manually RUN the demo program.

 

Firebird32-Nano 40-pin DIP module:

The Firebird32-Nano is preloaded with a demo program written by Jim Donelson or Rich Testardi.  The board can be powered by a BDM or a USB port or 9V DC at the pins labeled with "VIN" and GND. When it's powered by a BDM, no USB cable or 9V DC should be connected to the  module.  When it's powered by a USB port or 9VDC, its auto sensing and switching circuit will automatically select power from a USB port or VIN.  There is no need to manually select the source of the power.

When it's powered the power LED ( the green LED labeled with "ON") should be lit. 

If your Firebird32-Nano is not installed with StickOS BASIC, The demo program will run after power up or whenever the reset button is pressed.  It it does not, check the power LED first.  If it's off, the BDM cable may be plugged upside down or the USB cable may not be plugged in or the or the VIN and GND are swapped.  If the power LED is on, but the demo program does not run, then the demo program is probably erased or not installed.

If your Firebird32-Nano is installed with StickOS BASIC, the demo program is installed in flash memory, but AUTORUN feature is set to "OFF", so the demo program will not run automatically.  You need to following instructions in the section #3, "Write your first program", to set up communication between StickOS and TeraTerm, then manually RUN the demo program.

 

Firebird32-Mini 28-pin DIP module:

The Firebird32-Mini is preloaded with a demo program written by Jim Donelson or Rich Tetsardi. Since it does not have much features, the demo program only flashes the D13 LED.  Since it dose not have USB jack, the module can be powered by a BDM or a UTB module or 9V DC at the pins labeled with "VIN" and GND.

When it's powered the power LED ( the green LED labeled with "ON") will be lit. 

If your Firebird32-Mini is not installed with StickOS BASIC, The demo program will run after power up or whenever the reset button is pressed.  It it does not, check the power LED first. If it's off, the BDM cable or the UTB cable may be plugged upside down or the VIN and GND are swapped.  If the power LED is on, but the D13 LED does not flash, then the demo program is probably erased or not installed.

If your Firebird32-Mini is installed with StickOS BASIC, the demo program is installed in flash memory, but AUTORUN feature is set to "OFF", so the demo program will not run automatically after power up.  You need to following instructions in the section #3, "Write your first program", to set up communication between StickOS and TeraTerm, then manually RUN the demo program.

 

3.  Write your first program:

Developing a StickOS BASIC program ( For the Firebird32 installed with StickOS BASIC only ):

For beginners, the StickOS BASIC language is easy to use. It's easier than any IDE. The Firebird32-Mini 28-pin DIP module pre-installed with the StickOS BASIC is like a modern BASIC Stamp.

The StickOS is authored by Rich Tastardi who won the 2nd place of Freescale's "Can your badge do this" competition in 2008 and is considered as one of CodeWarrior experts. 

Once hardware is ready, you can follow the steps below:

Download and read the StickOS User's Guide from www.cpustick.com.

1.  Go to http://www.cpustick.com/firebird32.htm  and following the instructions to install the USB driver cpustick.inf and Tera Term.

2.  There is no need to install an IDE, just connect the board to a USB port on your PC. 

3.  The power on LED is lit and the LED13 (heartbeat LED) should keep flashing at 1Hz rate, 

4.  Press the Enter key on your PC keyboard.  If the StickOS is installed it will display a sign-on message on screen as the following:

>Welcome to StickOS for Freescale MCF51JM128 Firebird32 v1.84c!
Copyright (c) 2008-2010; all rights reserved.
http://www.cpustick.com
support@cpustick.com
(checksum 0x1c5)
>

At this moment, you can enter RUN, then Enter key on your PC keyboard, the demo program will run automatically. To stop it, you need to press CTRL C.

5.  Since the Heartbeat LED is controlled by the output pin PTE6,
     you can enable it by entering the command "pins heartbeat pte6" without quotes,
     or disable it by entering the command "pins heartbeat none" without quotes ( the command must be in all lower case ).

6.  Let us disable it by entering the command pins heartbeat none, so the LED13 can be controlled by the following program.

7.  Let us write a simple StickOS BASIC program to turns the D13 LED on for one second, then off for one second, repeatedly.

   
  10 dim LED13 as pin pte6 for digital output
  20 while 1 do
  30   let LED13 = 1
  40   sleep 1000 ms
  50   let LED13 = 0
  60   sleep 1000 ms
  70 endwhile
 
 
void setup() {
   pinMode(13, OUTPUT);
}
void loop() {
   digitalWrite(13, HIGH);
   delay(1000);
   digitalWrite(13, LOW);
   delay(1000);
}
 

It's very nice, Isn't it? After comparing it to the Arduino sketch with the same function at the right side, do you think it is easier for a young child to understand?  At least you don't need to explain what the words void and digitalWrite mean to a child.
 

8,  Then enter the RUN command, the D13 LED should flash with one second on and one second off, repeatedly
 

Using CodeWarrior for developing C and Assembly programs:

For the advanced users and EE/ECE students, the C and assembly language are most popular. The Firebird32 board with CodeWarrior is a perfect low cost embedded toolset for educational purposes.

To develop and debug C and assembly programs you need a BDM. The BDM stands for Background Debug Module. It's the same type of debugger hardware called ICD or ICE by other chip makers. If you don't have a BDM, the P & E Microsystem's USB-ML-UNIVERSAL BDM at $119 is the best BDM that you can buy. You should buy it if you can afford it, otherwise you can buy our USBDM for $19.

If you buy the USBDM, you need to read instructions for Installing drivers for the USBDM.

Let us write a simple C program to turns the D13 LED on for half second, then off for half second, repeatedly.

/*  FireBird32 Tutorial Series
    Blink the LED
   
    main.c
    Created By Nick Schulze
    8th July 2011

    www.HowNotToEngineer.com
*/

#include "Firebird.h"

 
void main(void) {
   Firebird_init();
   SET_OUTPUT(D13);    
   for(;;){
      DIGITAL_HIGH(D13);
      DelayMillis(500);
      DIGITAL_LOW(D13);
      DelayMillis(500);
   }
}
 
void setup() {
   pinMode(13, OUTPUT);
}

void loop() {
   digitalWrite(13, HIGH);
   delay(1000);
   digitalWrite(13, LOW);
   delay(1000);
}
 

Comparing it to the Arduino sketch with the same function at the right side, they are almost identical, Ain't they?

The demo program is written and copyrighted by Nick Schulze.

 

Using CodeSourcery for developing C++ programs:

Joel Guittet, a CodeWarrior expert, has developed a great tutorial to help you to install and create projects with CodeSourcery for C++ programming without code size limitation.

Source code of a simple C++ "Hello world" application is available on the following web site:
http://myfreescalewebpage.free.fr/advanced/codesourcery.htm

Firebird32 has been used in his CodeSourcery tutorial to create the C++ "Hello world" application.
http://myfreescalewebpage.free.fr/advanced/firebird32.htm