[En-Nut-Discussion] Implementing an SPI Interface on an Ethernut 3

Harald Kipp harald.kipp at egnite.de
Tue Aug 15 13:34:35 CEST 2006


Hello Mattias,

For Ethernut 3 there are too possibilities:

1. Software SPI (Bit Banging)
This is slow and consumes some processing power. The latter may
be reduced by using timer interrupts, but this will be even
slower than simple polling.

2. CPLD Implementation
Ethernut 3 comes with a pre-loaded CPLD, which includes a
hardware SPI for the MMC socket. This can be easily modified
for other ports.

You can find the latest NPL Version at
http://www.ethernut.de/arc/
Download npl30d-v7.zip

This includes a Makefile for building a binary, which can be
downloaded to Ethernut 3 and will reprogram the CPLD.

The file npl/npl30d.v contains the Verilog source code.

Do not forget to add
C:\Xilinx71\bin\nt
(or similar)
to your PATH environment before running make.

More infos about Ethernut 3 CPLD programming is available at
http://www.ethernut.de/en/documents/npl.html
However, this is still based on the Xilinx GUI, while the
archive above is much easier to use, if you like command line
tools.

The required jumper setting on Ethernut 3 CPLD reprogramming
is here:
http://www.ethernut.de/img/at91-xc95-emergency.png

Harald


At 12:13 15.08.2006 +0200, you wrote:
>Hello,
>Due to processing-power limitations on the ethernut 2 we plan to switch over
>to the ethernut 3. The Ethernut 3 however
>does not have a native SPI Interface. Since we need that for our desired
>application, i d'like to ask you guys for input on how to implement this on
>the ethernut 3.
>
>Regards,
>
>Mattias Moser
>Dipl. Ing. ETH
>Institute of Robotics and Intelligent Systems ETHZ




More information about the En-Nut-Discussion mailing list