Control Pi-Plate With Spark Core

The ppDAQC board from Pi-Plates.com is an inexpensive yet powerful solution for expanding the input/output capabilities of the Spark Core. And since Pi-Plates are stackable, it is a simple task to scale up the I/O capabilities of a single Core. All that is required for connectivity are the four SPI signals (signals A2-A5) as well as a single digital output (D6). Power can come from the Core or from the ppDAQC board.

Control Pi-Plate With Spark Core

Step 1: Required Components

To build this assembly the following components are required:

1. A ppDAQC board from Pi-Plates.com

2. A Spark Core

3. A 5VDC power supply or the USB power supply included with the Core.

4. A small protoboard (currently included with the Core Evaluation kit)

5. Jumper wires

Step 2: Connections – 1

The diagram and table explain how the ppDAQC and the Spark Core board are connected. This implementation uses an external 5VDC supply that provides power for the Spark Core through the ppDAQC board. This approach allows you to drive peripherals with the open collector pins that would pull more than 1 amp. If you’re just playing around, use the USB power supply that came with your Spark Core.

All Spark applications for the ppDAQC require three files:

1. ppDAQC.ccp – a lightweight set of library functions

2. ppDAQC.h – the header file with all of the function prototypes

3. yourapplication.ino – your application program

The application program has to have the following structure:

#include "ppDAQC.h"

extern int ppFRAME; //____ppDAQC I/O ports that are initialized below

extern int ppCE; //

void setup()

{

SPI.begin();

delay(1); // Wait 1msec

SPI.setClockDivider(SPI_CLOCK_DIV64);

delay(1); // Wait 1msec

SPI.setDataMode(SPI_MODE0); //All of these function are required for

//initializing the SPI/Pi-Plate interface

pinMode(ppFRAME,OUTPUT); //

pinMode(ppCE,OUTPUT); //

digitalWrite(ppCE,HIGH); //

//initialization for your application variables go below:

}

void loop()

{

// Your application code

}

About The Author

Ibrar Ayyub

I am an experienced technical writer with a Master's degree in computer science from BZU Multan University. I have written for various industries, mainly home automation and engineering. My writing style is clear and simple, and I am skilled in using infographics and diagrams. I am a great researcher and am able to present information in a well-organized and logical manner.

Follow Us:
LinkedinTwitter