Library to use 595 shift registers

Committer:
henryeherman
Date:
Wed Oct 30 18:15:52 2013 +0000
Revision:
0:46b1b63c40e6
Shift register for driving chip select lines on Elixys Synthesizer board

Who changed what in which revision?

UserRevisionLine numberNew contents of line
henryeherman 0:46b1b63c40e6 1 #include "mbed.h"
henryeherman 0:46b1b63c40e6 2 #include "ShiftRegister.h"
henryeherman 0:46b1b63c40e6 3
henryeherman 0:46b1b63c40e6 4 using namespace mbed;
henryeherman 0:46b1b63c40e6 5
henryeherman 0:46b1b63c40e6 6 ShiftRegister::ShiftRegister(DigitalOut &clk, DigitalOut &dat,
henryeherman 0:46b1b63c40e6 7 DigitalOut &latch, DigitalOut &clr,
henryeherman 0:46b1b63c40e6 8 DigitalOut &oe): _clk(clk), _dat(dat),
henryeherman 0:46b1b63c40e6 9 _latch(latch), _clr(clr),
henryeherman 0:46b1b63c40e6 10 _oe(oe) {
henryeherman 0:46b1b63c40e6 11
henryeherman 0:46b1b63c40e6 12 _clk = 1;
henryeherman 0:46b1b63c40e6 13 _dat = 1;
henryeherman 0:46b1b63c40e6 14 _clr = 0;
henryeherman 0:46b1b63c40e6 15 _oe = 1;
henryeherman 0:46b1b63c40e6 16 _clr = 1;
henryeherman 0:46b1b63c40e6 17 _oe = 0;
henryeherman 0:46b1b63c40e6 18 }
henryeherman 0:46b1b63c40e6 19
henryeherman 0:46b1b63c40e6 20 ShiftRegister::~ShiftRegister() {
henryeherman 0:46b1b63c40e6 21 // Nothing to do!
henryeherman 0:46b1b63c40e6 22 clear();
henryeherman 0:46b1b63c40e6 23 }
henryeherman 0:46b1b63c40e6 24
henryeherman 0:46b1b63c40e6 25
henryeherman 0:46b1b63c40e6 26
henryeherman 0:46b1b63c40e6 27 void ShiftRegister::clear() {
henryeherman 0:46b1b63c40e6 28 _clk = 1;
henryeherman 0:46b1b63c40e6 29 _dat = 1;
henryeherman 0:46b1b63c40e6 30 _clr = 0;
henryeherman 0:46b1b63c40e6 31 _oe = 1;
henryeherman 0:46b1b63c40e6 32 _clr = 1;
henryeherman 0:46b1b63c40e6 33 _oe = 0;
henryeherman 0:46b1b63c40e6 34 }