simple MCP4XXX digital potentiometer library
datasheet: http://ww1.microchip.com/downloads/en/DeviceDoc/22060b.pdf
MCP4XXX.cpp
- Committer:
- jyam
- Date:
- 2013-11-27
- Revision:
- 0:dc2196d5163f
- Child:
- 1:d0bc73e899a3
File content as of revision 0:dc2196d5163f:
#include "MCP4XXX.h" MCP4XXX::MCP4XXX(PinName miso, PinName mosi, PinName clk, PinName cs) { _cs = new DigitalOut(cs); _spi = new SPI(miso, mosi, clk); _spi->format(8,0); _spi->frequency(1000000); _lvl = 0x00; } MCP4XXX::~MCP4XXX() { delete _cs; delete _spi; } void MCP4XXX::setLevel(unsigned char lvl, bool isR0) { *_cs = 0; if (isR0) _spi->write(P0); else _spi->write(P1); _spi->write(lvl); *_cs = 1; _lvl = lvl; } unsigned char MCP4XXX::getLevel() { return _lvl; }