SEARCH
TOOLBOX
LANGUAGES
modified on 27 March 2012 at 13:03 ••• 35,473 views

Eagle-100 Manual/Getting Started

From Manuals

Revision as of 13:03, 27 March 2012 by Support (Talk | contribs)
Jump to: navigation, search


Contents

Steps to Getting Started

Getting started with the Eagle 100 can be done in just 6 steps.

Run the Preloaded Application

The Eagle 100 come from the factory preloaded with an application called enet_io that demonstrates web-based I/O control. The preloaded applications should be run to test the board after receiving it. The full source code for the application is provided on the Eagle's Wiki. http://wiki.micromint.com/index.php/Eagle_Documentation

Eagle SBC enet_io Application

The Eagle Single Board Computer's (SBC) with Ethernet are shipped with the enet_io example application from the TI Stellarisware Library. This example application demonstrates web-based I/O control using the Ethernet controller and the lwIP TCP/IP Stack. DHCP is used to obtain an Ethernet address. If DHCP times out without obtaining an address, a static IP address will be chosen using AutoIP. The address that is selected will be shown on COM1, allowing access to the internal web pages served by the application via a normal web browser. Figure 2.1 shows the web page that will first be displayed.

Web interface
Figure 2.1: Web interface for the enet_io application

In order to demonstrate this application on an Eagle SBC without the optional USB Debug Port you will need the following software and equipment:

  • 1. A Personal Computer (PC) with a serial port or a USB to serial port adapter
  • 2. A DB9 to 2x5 adapter cable if using an Eagle SBC where COM1 is a 2x5 pin header
  • 3. A null modem cable
  • 4. A terminal program such as Putty, HyperTerminal, or TeraTerm
  • 5. A web browser
  • 6. One Ethernet cable
  • 7. One +5V power supply

Please follow these steps to run the enet_io application on an Eagle SBC without the optional USB Debug Port:

  • 1. If the Eagle SBC's COM1 port to the computer using the null modem cable. NOTE: Use the 2x5 adapter cable if COM1 is a 2x5 pin header.
  • 2. Connect the Eagle SBC's Ethernet port to an Ethernet Network.
  • 3. Start and set-up the terminal program with the following settings.
    • a. Baudrate – 115200
    • b. Data Bits – 8
    • c. Parity – None
    • d. Stop Bits – 1
    • e. Flow Control – None
  • 4. Apply power to the board.
  • 5. The Eagle SBC will transmit the boards IP address to the terminal
  • 6. Open a web browser.
  • 7. Type the IP address into the web browsers address bar and the web page in Figure 2.1 should load.
  • 8. Click on “I/O Control Demo 1 (HTTP Requests)”.
  • 9. Click on the “Toggle LED” button to turn the User LED on.

In order to demonstrate the enet_io application on an Eagle SBC with the optional USB Debug Port you will need the following software and equipment:

  • 1. A Personal Computer (PC) with a USB port
  • 2. A terminal program such as Putty, HyperTerminal, or TeraTerm
  • 3. A web browser
  • 4. One USB A to micro USB cable (Supplied with Eagle SBC with USB Debug Port)
  • 5. One Ethernet cable

Please follow these steps to run the enet_io application on an Eagle SBC with the optional USB Debug Port:

  • 1. Make sure two jumpers are set correctly to enable power to come from the Debug port and enable the virtual COM port. The Eagle 50 jumpers are JP1 for power and and JP6 for the virtual COM port.
  • 2. Connect the Eagle SBC's Ethernet port to an Ethernet Network.
  • 3. Connect the Eagle SBC to the PC by using the USB A to micro USB cable.
  • 4. Wait until the USB drivers have been installed. The USB drivers can be found in the Software Updates section on the Eagle's Wiki. http://wiki.micromint.com/index.php/Eagle_Documentation
  • 5. Find out what COM port the Eagle SBC's virtual COM port is by looking in Windows Device Manager’s PORTS (COM & LPT). The Eagle SBC's COM port is the one that says Stellaris Virtual COM Port.
  • 6. Start and set-up the terminal program for the COM port that the Eagle SBC is on and with the following settings.
    • a. Baudrate – 115200
    • b. Data Bits – 8
    • c. Parity – None
    • d. Stop Bits – 1
    • e. Flow Control – None
  • 7. Press the Reset button.
  • 8. The Eagle SBC will transmit the boards IP address to the terminal.
  • 9. Open a web browser.
  • 10. Type the IP address into the web browsers address bar and the web page in Figure 2.1 should load.
  • 11. Click on “I/O Control Demo 1 (HTTP Requests)”.
  • 12. Click on the “Toggle LED” button to turn the User LED on.

Programming Language Support

After testing the board with the example application, you should become familiar with development tools used to take advantage of the board’s functionality. The Eagle 100 Board Support Package (BSP) includes examples to use the board functionality with several development tools. Currently the following compilers and programming languages are supported:

  • IAR Embedded Workbench for ARM (ewarm) 5.20
  • GNU Toolchain (gcc) for ARM 4.2.3 – CodeSourcery G++ 2008q1
  • GNU Toolchain (gcc) for ARM 4.3.0 – devkitARM 23b or WinARM 20080331
  • Jumentum BASIC 0.94
  • Lua 5.1.3

The tools included in the CDs shipped with the board include a kickstart version of the IAR Embedded Workbench for ARM, one of the GNU Toolchains for ARM, a BASIC interpreter and a LUA interpreter. Project files are included to build C, Assembler and DriverLib applications with both the IAR and CodeBlocks IDEs.

The Eagle 100 Setup CD includes tools and example applications to get you started with the Eagle 100 SBC functionality. The main menu is shown in Figure 2.2. Please select the tools button corresponding to the programming language you will be using and install the required components.

Setup CD Menu
Figure 2.2: Eagle Setup CD Main Menu

The IAR Kickstart CD installs a 32 KB code-sized limited version of the IAR C/C++ compiler and debugger. The IAR compiler generally produces the smallest code sizes for ARM targets and has excellent debugging capabilities. To install it select the "Install IAR Embedded Workbench" option from the CD main menu shown in Figure 2.3. Follow the instructions in the installation application. We suggest that you use the default directories, and the "Full" installation option.

IAR Setup Menu
Figure 2.3: IAR Kickstart CD Main Menu

Compiling Applications with IAR EWARM

To load the DriverLib workspace in the IAR IDE, select Programs> Micromint Eagle> IAR> DriverLib Examples from your Windows Start menu. The IAR Embedded Workbench for ARM will start and you will see a screen similar to that on Figure 2.4. Select the Blinky project by right clicking the project name and selecting "Set as Active". To rebuild the project select the "Make" button on the toolbar. You can also right click on the project name to select "Make" or "Rebuild". This will build a binary (.BIN) image file on the "ewarm\Exe\" directory of the project. To run the file you can select use of the firmware download procedures outlined later in this chapter. If the build and download is successful, the user LED on the Eagle SBC will start blinking.

IAR EWARM
Figure 2.4: Using the DriverLib projects with the IAR EWARM IDE

Compiling Applications with the GNU Toolchain

To load the DriverLib workspace in the CodeBlocks IDE, select Programs> Micromint Eagle> CodeBlocks> DriverLib Examples from your Windows Start menu. The CodeBlocks IDE will start and you will see a screen similar to that on Figure 2.5. Select the Blinky project by right clicking the project name and selecting "Activate project". To rebuild the project select the "Rebuild" button on the toolbar. You can also right click on the project name to select "Build" or "Rebuild". This will build a binary (.BIN) image file on the "gcc\" directory of the project. To run the file you can select use of the firmware download procedures outlined later in this chapter. If the build and download is successful, the user LED on the Eagle SBC will start blinking.

Codeblocks
Figure 2.5: Using the DriverLib projects with the CodeBlocks IDE

Compiling Applications from the Command Line

All example programs include a Makefile that allows you to build binary images from the command line using the GNU toolchain. The GNU "make" utility is installed as part of the GNU toolchain on the Eagle Setup CD. To build an image using the command line, just change to the project directory and execute "make".

Firmware Updates using the JTAG

The simplest way to download files to the Eagle SBC is by using a JTAG debugger probe that is supported by IDE in use. When you start a debugging session, the binary image file will be loaded automatically to the board. Using a JTAG debugger also allows you to place breakpoints and watch variables to find problem areas in your application. To use the J-Link debugger with IAR EWARM, select Projects> Options> Debugger with the project name selected in the workspace. On the "Setup" tab select "J-Link/J-Trace" as the driver and "main" as the location to run to start the debugger after a reset. Then select the "Download and debug" button on the toolbar and then the "Go" button to execute.

Firmware Updates using the Ethernet Bootloader

The Eagle 100 is shipped with an Ethernet bootloader that can be used to update the firmware on the board from an Ethernet connection. The bootloader uses the BOOTP and TFTP protocols to temporarily acquire an IP address and copy the binary image to the board. The LM Flash Programmer implements a small BOOTP and TFTP server to do this.

The bootloader uses the first 8 KB of the flash address space (0x00000000 to 0x00001fff). Programs loaded with the bootloader should be linked to start at address 0x00002000. That is done automatically if you use the “ewarm/application.icf” or “gcc/application.ld” linker scripts used in the examples.

You can overwrite the bootloader if you so desire by using the “ewarm/standalone.icf” or “gcc/ standalone.ld” linker scripts and downloading your binary image via the JTAG. Currently the bootloader cannot be overwritten via the Ethernet port.

Follow the below steps to use the LM Flash Programmer and the Ethernet bootloader:

  • 1. Connect the Eagle 100’s Ethernet port to the network.
  • 2. Apply power to the Eagle 100.
  • 3. Press and hold the Eagle 100’s “USER” button.
  • 4. Press and release the Eagle 100’s “RESET” button.
  • 5. Release the “USER” button. The Eagle 100’s “USER LED” should now be blinking approximately once a second.
  • 6. Open the LM Flash Programmer
  • 7. Select the "Setup" tab and you will see a screen similar to Figure 2.6
  • 8. For "Interface" select "Ethernet"
  • 9. For "Ethernet Adapter:" select the adapter that is connected to the computers network.
  • 10. For “Client IP Address:” enter an IP address that is on the same subnet as your Ethernet adapter. The last octet must be different than the Ethernet Adapters.
  • 11. For “Client MAC Address:” enter the Eagle 100’s serial number. It can be found on the bottom of the board and should start with 0021A3. Make sure to separate the octets with dashes (00-21-A3).
  • 12. Select the "Program" tab on the LM Flash Programmer software and you will see a screen similar to Figure 2.7.
  • 13. Click the “Browse” button and locate the application to be downloaded.
  • 14. Click on the “Program” button. It generally takes several seconds for the program to start downloading.
Ethernet configuration
Figure 2.6: Ethernet Bootloader Flash programmer configuration
Ethernet download
Figure 2.7: Ethernet Bootloader flash programmer download

Ethernet bootloader troubleshooting guide:

  • 1. Temporarily turn off the computers firewall. If this works add the LM Flash programmer to the Firewalls Exceptions list.
  • 2. Try bypassing the network by connecting the Eagle 100 directly to the computer Ethernet port. A regular CAT5 cable will work. Make sure to close the LM Flash Programmer software and start at step 2 in the above procedure.

Firmware Updates from the Command Line

The Luminary Flash Programmer can also be invoked from the command line. The following command line is equivalent to the procedure in the previous section but uses a command line interface instead of a GUI interface.

lmflash -i ethernet -n 192.168.1.201,192.168.1.210,00-21-A3-00-01-02 blinky.bin

To see all options available from the command line, use “lmflash –h”.


NEXT: Hardware

PREVIOUS: Introduction