Accessories
Arduino for motors and lights library.
PortExpander74HC595.cpp
1 #include "Accessories.h"
2 
3 #ifndef NO_EXPANDER_74HC595
4 
6 {
7  this->psr = NULL;
8 }
9 
10 byte PortExpander74HC595::begin(int inId, int numberOfShiftRegisters, int serialDataPin, int clockPin, int latchPin)
11 {
12  this->id = inId;
13 
14  this->psr = new ShiftRegister74HC595(numberOfShiftRegisters, serialDataPin, clockPin, latchPin);
15  if (this->psr != NULL)
16  {
17  PortExpander::Add(this);
18  Serial.println(F("Expander 74HC595 succeed"));
19  return 1;
20  }
21 
22  return 0;
23 }
24 
25 void PortExpander74HC595::beginPin(int inPin, PIN_TYPE inType)
26 {
27 #ifdef ACCESSORIES_DEBUG_MODE
28  if (inType != OUTPUT)
29  Serial.println(F("74HC595 : only output digital pins"));
30 #endif
31 
32  this->psr->set(inPin, LOW);
33 }
34 
35 void PortExpander74HC595::digitalWrite(int inPin, int inValue)
36 {
37  this->psr->set(inPin, inValue);
38 }
39 
40 void PortExpander74HC595::analogWrite(int inPin, int inValue)
41 {
42 #ifdef ACCESSORIES_DEBUG_MODE
43  Serial.println(F("74HC595 : only digital pins"));
44 #endif
45  // this->psr->analogWrite(inPin, inValue);
46 }
47 
48 #endif
void analogWrite(int inPin, int inValue)
void digitalWrite(int inPin, int inValue)
void beginPin(int inPin, PIN_TYPE inType)
virtual byte begin()