[En-Nut-Discussion] Ethernut and EasyToWeb?

Ole Reinhardt ole.reinhardt at kernelconcepts.de
Mon Jun 7 12:14:51 CEST 2004


Hi,

> I am trying to use ethernut with my easytoweb board
> (http://www.easytoweb.net/).
> It uses the cs8900a ethernet chip connected to atmega128 with 3 adressbits
> and 8 databits. A simple logic activates the chip for base address 0xf000.
> No interrupts are connected.

I have build an own board with the CS8900 and I'm running ethernut on it
quite succesfully.

You have to use the current cvs version of Nut/Os. Dont change anything
in the current cs8900.h but set the following global defines in the
Makedefs file located in the ethernut root directory:

DEFS  = -DNUT_CPU_FREQ=16000000 -DNUT_3WAITSTATES -DMCAN $(HWDEF)

NUT_CPU_FREQ should be changed to your clockspeed.

Next you have to change some parts of your application code to correctly
initialize the cs8900.c.

Basemon won't work with the cs8900, but you could try the httpd demo.

First register your device with:

NutRegisterDevice(&devEth0cs, 0xf000, 0);

Next change every device name string "eth0" to "eth0cs". Recompile and
reinstall Nut/Os after making these changed and then recompile your
application.

Now it should work quite fine. Perhaps you need to reset your board a
few times because the mac address first need to be programmed correctly
to the eeprom of your atmega128. The cs8900.c driver reads his mac
address from eeprom, but the cs8900 seems to became confused by an
uninitialized mac (0xFF:0xFF:0xFF:0xFF:0xFF:0xFF) which is the default
after a chip erase.

You shoudl also set the fuses of your atmega correctly to use the
external clock and not to overwrite eeprom after reprogramming.

Hopy I could help you,

Ole Reinhardt

-- 
kernel concepts    Tel: +49-271-771091-14
Dreisbachstr. 24   Fax: +49-271-771091-19
D-57250 Netphen    E+ : +49-177-7420433
--





More information about the En-Nut-Discussion mailing list