SPI library used to communicate with an altera development board attached to four zigbee-header pins.

Committer:
gatedClock
Date:
Wed Aug 14 14:47:12 2013 +0000
Revision:
4:aa1fe8707bef
Parent:
3:de99451ab3c0
Child:
5:b14dcaae260e
mmSPI::setSPIfrequency(float fFreq)

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gatedClock 2:bebcf53b72dc 1 #ifndef mmSPI_H // include guard.
gatedClock 2:bebcf53b72dc 2 #define mmSPI_H // include guard.
gatedClock 0:fb42c5acf810 3 /*----------------------------------------------//------------------------------
gatedClock 0:fb42c5acf810 4 student : m-moore
gatedClock 0:fb42c5acf810 5 class : external SPI interface
gatedClock 0:fb42c5acf810 6 directory : mmSPI
gatedClock 0:fb42c5acf810 7 file : mmSPI.h
gatedClock 1:15706d15d123 8 ----description---------------------------------//------------------------------
gatedClock 1:15706d15d123 9 ----notes---------------------------------------//------------------------------
gatedClock 1:15706d15d123 10 1. the SPI interface pins are routed to the zigbee header.
gatedClock 0:fb42c5acf810 11 ------------------------------------------------//----------------------------*/
gatedClock 0:fb42c5acf810 12 #include "mbed.h" // standard mbed.org class.
gatedClock 1:15706d15d123 13 //---defines------------------------------------//------------------------------
gatedClock 3:de99451ab3c0 14 #define mmSPI_MOSI p9 // SPI interface pin.
gatedClock 3:de99451ab3c0 15 #define mmSPI_MISO p10 // SPI interface pin.
gatedClock 3:de99451ab3c0 16 #define mmSPI_SCLK p30 // SPI interface pin.
gatedClock 2:bebcf53b72dc 17
gatedClock 2:bebcf53b72dc 18
gatedClock 3:de99451ab3c0 19
gatedClock 0:fb42c5acf810 20 /*----------------------------------------------//------------------------------
gatedClock 0:fb42c5acf810 21 ------------------------------------------------//----------------------------*/
gatedClock 2:bebcf53b72dc 22
gatedClock 0:fb42c5acf810 23 //==============================================//==============================
gatedClock 0:fb42c5acf810 24 class mmSPI
gatedClock 0:fb42c5acf810 25 {
gatedClock 0:fb42c5acf810 26 public:
gatedClock 0:fb42c5acf810 27 mmSPI(); // constructor.
gatedClock 0:fb42c5acf810 28 ~mmSPI(); // destructor.
gatedClock 3:de99451ab3c0 29 void allocations(); // object allocations.
gatedClock 4:aa1fe8707bef 30 void setSPIfrequency(float); // set SPI clock frequency.
gatedClock 1:15706d15d123 31 char transceive_byte(char); // byte transceive.
gatedClock 0:fb42c5acf810 32 private:
gatedClock 2:bebcf53b72dc 33
gatedClock 3:de99451ab3c0 34 DigitalOut * pMOSI; // SPI pin.
gatedClock 3:de99451ab3c0 35 DigitalOut * pMISO; // SPI pin.
gatedClock 3:de99451ab3c0 36 DigitalOut * pSCLK; // SPI pin.
gatedClock 4:aa1fe8707bef 37 float fSPIfreq; // SPI clock frequency.
gatedClock 4:aa1fe8707bef 38 float fSPIquarterP; // SPI quarter period.
gatedClock 3:de99451ab3c0 39
gatedClock 2:bebcf53b72dc 40
gatedClock 2:bebcf53b72dc 41
gatedClock 0:fb42c5acf810 42 };
gatedClock 2:bebcf53b72dc 43 //----------------------------------------------//------------------------------
gatedClock 2:bebcf53b72dc 44 #endif // include guard.