A code for the spindling of bots.

Dependencies:   MX12 ServoRingBuffer mbed-src

Fork of SpindleBot by MRD Lab

SSPI/SSPI.cpp

Committer:
labmrd
Date:
2015-08-13
Revision:
14:7c5beaa9fb01
Parent:
4:e44ac08027bd

File content as of revision 14:7c5beaa9fb01:

#include "SSPI.h"


SSPI::SSPI(PinName mosi, PinName miso, PinName sclk)
        : MOSI(mosi),
          MISO(miso),
          SCLK(sclk) {
   
}


unsigned char SSPI::write(unsigned char data)
{
  unsigned char i;
  unsigned char out_data=0;
  wait_us(SCLK_DELAY_US);
  SCLK=0;
  for(i=0; i<8; i++)
  {
     wait_us(SCLK_DELAY_US);
     SCLK=1;
     wait_us(SCLK_DELAY_US);
     if(CHECK_BIT(data,7-i))
     {
         MOSI=1;
     }
     else
     {
         MOSI=0;
     }
     out_data= ( out_data << 1 ) | MISO.read();
     SCLK=0;
  }
  return out_data;
}