Command of the SPI version of the BigRelay card. The seller of this card is www.bitwizard.nl

Dependencies:   mbed

main.cpp

Committer:
snoeck
Date:
2013-11-11
Revision:
0:dea39d2fe9dd

File content as of revision 0:dea39d2fe9dd:

#include <mbed.h>
//SPI spi(p5, p6, p7); // mosi, miso, sclk
SPI spi(p11, p12, p13); // mosi, miso, sclk
DigitalOut cs(p8);
 
 void setupBigRelais()
 {
   cs = 1; //Cheap Select sur p8
     // Setup the spi for 8 bit data, high steady state clock,
    // second edge capture, with a 1MHz clock rate
    spi.format(8,3);
    spi.frequency(1000000);//freq 1MHz
 
    // Select the device by seting chip select low
    cs = 0;
    wait(0.0001);
    spi.write(0x9c);// addressz de la carte relais
    wait(0.0001);
    spi.write(0x30);//adresse du registre de direction
    wait(0.0001);
    spi.write(0xFF);//mise en sortie des relais
    wait(0.0001);
       }
       
 void commandBigRelais(int relay,int state)
 {
 int output;
 relay=relay|0x20;
 if (state == 1) output=0xFF;
 if (state == 0) output=0x00;
 
    cs = 0;
    wait(0.0001);
    spi.write(0x9c);// addressz de la carte relais
    wait(0.0001);
    spi.write(relay);
    wait(0.0001);
    spi.write(output);
    wait(0.0001);
    cs = 1;
  }
 
 
int main() {
    setupBigRelais();
    
    while (1)
    {
    commandBigRelais(4,1);
    
  wait(5);
  commandBigRelais(4,0);
  
    wait(5);
     }
 
 }