an SPI interface the cmu pixy camera
Dependents: robotic_fish_ver_4_9_pixy UMO
pixy.h
- Committer:
- sandwich
- Date:
- 2014-06-03
- Revision:
- 2:fc86438b206f
- Parent:
- 1:439c7574a5ee
- Child:
- 4:440e747935db
File content as of revision 2:fc86438b206f:
#pragma once #include "mbed.h" #define INVALID_BLOCK 20 //a class to aid in SPI communication with the pixy camera //this details the object block format of returned data as described in //http://www.cmucam.org/projects/cmucam5/wiki/Pixy_Serial_Protocol //blatantly stole this from their code struct Block { uint16_t signature; uint16_t x; uint16_t y; uint16_t width; uint16_t height; }; class pixySPI { private: SPI* spi; Serial* debug; //SPI spi(p5, p6, p7); // mosi, miso, sclk short sync; //the block signature. 16 bits short readTwoBytesLSB(); void readNBytes(char* buf, int num); Block* blocks; //where the blocks are stored int numBlocks; //amt public: pixySPI(PinName mosi,PinName miso,PinName sclk, int nBlocks, Serial* ser); ~pixySPI(); void capture(); //fills in the blocks pointer char getRawData(); Block* getBlocks(); int getNumBlocks(); };