|
||||||||||||||||||||||||||||||||||||
|
Ethernut is an Open Source Hardware and Software Project for building tiny Embedded Ethernet Devices. The well documented software is an Open Source implementation of a Real Time Operating System called Nut/OS and a TCP/IP protocol suite named Nut/Net. Several application examples are provided, including an embedded Webserver, a simple RS232 to TCP/IP gateway and an Internet Radio playing MP3 streams. For more information take a look at the Ethernut project. This project here is a port for the Olimex LPC-E2294 evaluation board using the CrossWorks for ARM toolchain from For this ARM port of Ethernut an evaluation board (LPC-E2294) from Olimex is used. An Ethernut 3.0 board is available by egnite. Here are some of the main features from the Olimex board which will be supported by this Ethernut port:
The advantage of this board is the huge external SRAM, which can be used as a "FLASH replacement" in the development stage of the software. The application code is downloaded into SRAM using a CrossConnect for ARM from Rowley Associates, too.
I had some trouble with my PC to get the board working correctly. I had problems with the RS232 to USB converter and the power supply from the USB. To solve these problems I have done some reworks. You may not need to do these reworks in general. The board could work with your PC, but I have done the following modifications:
The Ethernut httpserv application shows how to use this port of Ethernut. The application is based on the original httpserv with some small changes for the I have measured the stack usage of the threads from the httpserv for AVR and ARM. For the AVR an Ethernut 2.1b and for the ARM the Olimex board was used. The measurement was made with the listed compiler:
The compilers are little outdated, I will check it with the newest version too.
Now take a look at the code size (all values in bytes):
Unexpectedly, compiled using ARM mode (32 bit instructions) the code about the same size as the AVR code! You would expect that 32-bit instructions would result in larger code than the 16-bit instructions of the AVR. I think what is happening is the ARMs more powerful instruction set is providing better code density. You need CrossWorks for ARM to compile the software. In fact, you can use the evaluation version to build it.
The update is only for "ARM RAM Debug" mode. |
|||||||||||||||||||||||||||||||||||