Export to GitHub

arduino - issue #240

SPI library.


Posted on May 6, 2010 by Happy Rhino

What change would like to see?

An SPI library.

Why?

To provide a standard API for users and library writers.

Would this cause any incompatibilities with previous versions? If so, how can these be mitigated?

No.

Comment #1

Posted on May 7, 2010 by Helpful Bird

Just for reference, here's a link to an SPI library on the playground: http://www.arduino.cc/playground/Code/Spi

FWIW, for my own purposes I implemented a slightly different public interface and then subclassed it for my actual device:

class SpiDevice { public: SpiDevice();

void begin(); // Uses default (pin 10)
void begin(byte selectPin);

// May make these private (or protected) in the final library?
void deselect();
void select();

byte transfer(volatile byte data);
void transfer_bulk(const uint8_t* srcptr, unsigned long int length);

};

Comment #2

Posted on Aug 2, 2010 by Happy Rhino

Added as part of a rewrite of the Ethernet library by Christian Maglie (r1023).

Status: Fixed

Labels:
Type-Enhancement Priority-Medium Component-Core Milestone-0019