Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const int decpin = 6;
- int latchPin = 8;
- int clockPin = 12;
- int dataPin1 = 9;
- int dataPin2 = 11;
- byte data;
- byte dataArray[10];
- int X=0;
- void setup()
- {
- pinMode(latchPin, OUTPUT);
- pinMode(decpin, INPUT);
- Serial.begin(9600);
- }
- void loop() {
- if(decpin>3.3)
- {
- dataArray[0] = 0x00;
- dataArray[1] = 0x00;
- dataArray[2] = 0x80;
- dataArray[3] = 0xC0;
- dataArray[4] = 0xE0;
- dataArray[5] = 0xF0;
- dataArray[6] = 0xF8;
- dataArray[7] = 0xFC;
- dataArray[8] = 0xFE;
- dataArray[9] = 0xFF;
- delay(500);
- for (int j = 0; j < 10; j++)
- {
- data = dataArray[j];
- digitalWrite(latchPin, 0);
- shiftOut(dataPin2, clockPin, data);
- shiftOut(dataPin1, X,X);
- digitalWrite(latchPin, 1);
- delay(100);
- }
- }
- else if(decpin<3.3)
- //LEFT
- {
- dataArray[0] = 0x00;
- dataArray[1] = 0x00;
- dataArray[2] = 0x01;
- dataArray[3] = 0x03;
- dataArray[4] = 0x07;
- dataArray[5] = 0x0F;
- dataArray[6] = 0x1F;
- dataArray[7] = 0x3F;
- dataArray[8] = 0x7F;
- dataArray[9] = 0xFF;
- delay(500);
- for (int K = 0; K < 10; K++)
- {
- data = dataArray[K];
- digitalWrite(latchPin, 0);
- shiftOut(dataPin1, clockPin, data);
- shiftOut(dataPin2, X,X);
- digitalWrite(latchPin, 1);
- delay(100);
- }
- }
- }
- void shiftOut(int myDataPin1, int myClockPin, byte myDataOut) {
- int i=0;
- int pinState;
- pinMode(myClockPin, OUTPUT);
- pinMode(myDataPin1, OUTPUT);
- digitalWrite(myDataPin1, 0);
- digitalWrite(myClockPin, 0);
- for (i=8; i>=0; i--) {
- digitalWrite(myClockPin, 0);
- if ( myDataOut & (1<<i) ) {
- pinState= 1;
- }
- else {
- pinState= 0;
- }
- digitalWrite(myDataPin1, pinState);
- digitalWrite(myClockPin, 1);
- //digitalWrite(myDataPin1, 0);
- }
- digitalWrite(myClockPin, 0);
- }
Add Comment
Please, Sign In to add comment