simple library that can be used to write to a 595 shift register array

Committer:
henryeherman
Date:
Wed Oct 30 06:59:59 2013 +0000
Revision:
0:c3a7963d0844
Library to drive 595 shift registers

Who changed what in which revision?

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