Electronic – Arduino Mega/uM-FPU coprocessor

arduinofloating point

I recently acquired a number of components including an Arduino Mega microcontroller and a uM-FPU V3.1 Floating Point Co-processor.

Using a breadboard I have built the circuit shown on Page 2 of the document uMFPU-V3_1 Arduino.pdf from the Micromega website.

enter image description here

I am having some difficulty in getting the circuit to function as expected.

PC details: Window Vista 64,
Microcontroller: Arduino Mega (genuine),
Arduino IDE: Version 0018

The documentation (uMFPU-V3_1_Arduino.pdf) says to download the support files (uMFPU-V3_1-Arduino.zip) and place the folders (Fpu, FpuSerial, Spi) in the hardware/libraries subdirectory of the Arduino application directory.

It seems that the directory structure of the Arduino IDE has recently changed? Earlier versions of the IDE apparently had the libraries located as suggested in the document above, but the current version 0018 of the Arduino IDE seems to have the /libraries subdirectory located directly in the Arduino application directory.

The sketches provided in the documentation (sample.pde, graph.pde etc.) seem to only compile in the IDE version 0018 with the FPU libraries placed in the new directory location.

With the libraries in the new location, the example sketches (sample.pde, graph.pde etc) can be compiled without error and uploaded to the Arduino. At the moment, when the sketches run on the microcontroller, the Arduino IDE Serial Monitor only responds with the message 'Sample' or 'Graph' and nothing else. There is no indication of a connection to the FPU with version details, no display of the results of FP calculations or even the message 'uM-FPU not detected'.

I also have tried using older versions of the Arduino IDE (0016) (with the libraries placed in the location suggested in the documentation) on another computer with Windows XP (not 64bit) and the result seems to be the same.

Hopefully someone may have some ideas or suggestions about where the problem may be? Could it be a faulty FPU chip or the Arduino board itself?

Best Answer

Arduino Mega hardware SPI pins are not located in the same place as on the ordinary Arduino. You will need to change the library.