Siang Kai
Created September 25, 2017 © GPL3+

DIY Pen Holder.

This is a project inspired by AdiK on hackster. I modified the project for my assignment purpose.

IntermediateShowcase (no instructions)7 days37
DIY Pen Holder.

Things used in this project

Story

Read more

Schematics

Schematic Diagram

Below is the schematic diagram for the project. Please take note that the MicroSwitch is placed in a self-made pencil case instead of placing it on the breadboard.

Code

PenStand_trigger.ino

Arduino
Make sure to download the library file named : LedControl.h The pins are declared in the code and make sure you connect the right pin between your Arduino and the LED Module
#include <LedControl.h>

#include "LedControl.h"

LedControl lc=LedControl(12,11,10,3);  // Pins: DIN,CLK,CS, # of Display connected

unsigned long delayTime2=800;
unsigned long delayTime=500;  

int pushButton = 2;
int ledModule = 9;

// Put values in arrays



byte invader1a[] =
{
   B00011000,  
   B11011100,
   B00110110,
   B01011111,
   B01011111,
   B00110110,
   B11011100,
   B00011000,
};

byte invader1b[] =
{
   B10011000,  
   B01011100,
   B10110110,
   B01011111,
   B01011111,
   B10110110,
   B01011100,
   B10011000,
};

byte invader1c[] =
{
  B00000000,
  B00000000, 
  B00000000, 
  B00000000, 
  B00000000, 
  B00000000, 
  B00000000, 
  B00000000,  
  
};

byte invader2a[] =
{
  B01111000, 
  B00111100,
  B11110111,
  B00111100,
  B00111100,
  B11110111,
  B00111100,
  B01111000,
};

byte invader2b[] =
{
  B00111110, 
  B10111100,
  B01110111,
  B00111100,
  B00111100,
  B01110111,
  B10111100,
  B00111110,
};

byte invader2c[] =
{
  B00000000, 
  B00000000,
  B00000000,
  B00000000,
  B00000000,
  B00000000,
  B00000000,
  B00000000,
};



void setup()
{
  Serial.begin(9600);
  pinMode(ledModule, OUTPUT);
  pinMode(pushButton, INPUT);
  lc.shutdown(0,false);  // Wake up displays
  lc.shutdown(1,false);
  lc.setIntensity(0,5);  // Set intensity levels
  lc.setIntensity(1,5);
  lc.clearDisplay(0);  // Clear Displays
  lc.clearDisplay(1);
}


//  Take values in Arrays and Display them
void sinvader1a()
{
  for (int i = 0; i < 8; i++)  
  {
    lc.setRow(0,i,invader1a[i]);
  }
}

void sinvader1b()
{
  for (int i = 0; i < 8; i++)
  {
    lc.setRow(0,i,invader1b[i]);
  }
}

void sinvader1c()
{
  for (int i = 0; i < 8; i++)
  {
    lc.setRow(0,i,invader1c[i]);
  }
}

void sinvader2a()
{
  for (int i = 0; i < 8; i++)
  {
    lc.setRow(1,i,invader2a[i]);
  }
}

void sinvader2b()
{
  for (int i = 0; i < 8; i++)
  {
    lc.setRow(1,i,invader2b[i]);
  }
}

void sinvader2c()
{
  for (int i = 0; i < 8; i++)
  {
    lc.setRow(1,i,invader2c[i]);
  }
}




void loop()
{

int buttonState = digitalRead(pushButton);
  
Serial.println(buttonState);
  
if (buttonState ==HIGH) {


    sinvader1a();
    sinvader2a();
    delay(delayTime2);
    sinvader1b();
    sinvader2b();
    delay(delayTime2);
    sinvader1a();
    sinvader2a();
    delay(delayTime2);
    sinvader1b();
    sinvader2b();
    delay(delayTime2);
    sinvader1a();
    sinvader2a();
    
    delay(delayTime);
    sinvader1c();
    sinvader2c();
    


}
  
}


  

LedControl.h

This is the library from GitHub that you needed to download and include in your Arduino IDE code.

Credits

Siang Kai

Siang Kai

1 project • 0 followers
Thanks to AdiK.

Comments