//task = make it go through numbers in a loop and have a pause/play button
int buttonPin = 13;
int buttonState, buttonStateOld;
int counter = 0;
int pressCounter = 0;
int potState;
int count1 = 0;
int count2 = 0;
int vert = A1;
int horz = A2;
int btn = 12;
int vertState,vertStateOld;
int horzState,horzStateOld;
int potPin = A0;
int A = 7;
int B = 8;
int C = 2;
int D = 3;
int E = 4;
int F = 5;
int G = 6;
int dig1 = 11;
int dig2 = 10;
int num = 0;
int LED = 9;
int RED = A3;
int GREEN = A4;
int BLUE = A5;
long startTime;
void setup() {
// put your setup code here, to run once:
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(dig1, OUTPUT);
pinMode(dig2, OUTPUT);
pinMode(buttonPin, INPUT);
pinMode(potPin, INPUT);
pinMode(RED, OUTPUT);
pinMode(GREEN, OUTPUT);
pinMode(BLUE, OUTPUT);
pinMode(LED, OUTPUT);
Serial.begin(9600);
}
void loop() {
project1();
}
void project1(){
vertState = analogRead(vert);
horzState = analogRead(horz);
if (vertState == 1023 && vertStateOld == 512) {
count1++;
delay(100);
}
if (vertState == 0 && vertStateOld == 512) {
count1--;
delay(100);
}
if (horzState == 1023 && horzStateOld == 512) {
count2++;
delay(100);
}
if (horzState == 0 && horzStateOld == 512) {
count2--;
delay(100);
}
else{
delay(50);
}
vertStateOld = vertState;
horzStateOld = horzState;
Serial.print(count1);
Serial.print(" - ");
Serial.println(count2);
}
void project1_sigcheck(){
int a = analogRead(vert);
int b = analogRead(horz);
int c = digitalRead(btn);
Serial.print(a);
Serial.print(" - ");
Serial.print(b);
Serial.print(" - ");
Serial.println(c);
}
void midtermExercise2(){
potState = analogRead(potPin) / 102;
Serial.println(potState);
if (potState == 0){
clear();
number0();
}
if (potState == 1){
clear();
number1();
}
if (potState == 2){
clear();
number2();
}
if (potState == 3){
clear();
number3();
}
if (potState == 4){
clear();
number4();
}
if (potState == 5){
clear();
number5();
}
if (potState == 6){
clear();
number6();
}
if (potState == 7){
clear();
number7();
}
if (potState == 8){
clear();
number8();
}
if (potState == 9){
clear();
number9();
}
}
void midtermExercise1(){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH && buttonStateOld == LOW) {
num++;
delay(100);
}
else{
delay(50);
}
buttonStateOld = buttonState;
twoDigitShow();
if(num % 4 == 0){
analogWrite(RED, 0);
analogWrite(GREEN, 0);
analogWrite(BLUE, 0);
}
if(num % 4 == 1){
analogWrite(RED, 0);
analogWrite(GREEN, 255);
analogWrite(BLUE, 255);
}
if(num % 4 == 2){
analogWrite(RED, 255);
analogWrite(GREEN, 0);
analogWrite(BLUE, 255);
}
if(num % 4 == 3){
analogWrite(RED, 255);
analogWrite(GREEN, 255);
analogWrite(BLUE, 0);
}
}
void allInOne(){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH && buttonStateOld == LOW) {
num++;
delay(100);
}
else{
delay(50);
}
buttonStateOld = buttonState;
twoDigitShow();
if(num % 2 == 1){
analogWrite(RED, 0);
analogWrite(GREEN, 255);
analogWrite(BLUE, 0);
potState = analogRead(potPin) / 4;
analogWrite(LED, potState);
Serial.println(potState);
}
if(num % 2 == 0){
analogWrite(RED, 255);
analogWrite(GREEN, 0);
analogWrite(BLUE, 0);
analogWrite(LED, 0);
}
}
void potTest(){
counter = analogRead(potPin);
Serial.println(counter);
delay(100);
}
void a_frankenstein_of_a_code(){
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH && buttonStateOld == LOW) {
counter++;
delay(100);
Serial.println(counter);
}
else{
delay(50);
}
buttonStateOld = buttonState;
int b=counter%10;
int a=counter/10;
if(counter<10) {
clear();
delay(10);
digitalWrite(dig1, HIGH);
showDigit(b);
}
if(counter>9) {
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
delay(10);
showDigit(b);
delay(1);
clear();
delay(10);
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
delay(10);
showDigit(a);
delay(1);
clear();
delay(10);
}
}
void buttonCounter(){
buttonState = !digitalRead(buttonPin);
if(buttonState == 1 && buttonStateOld ==0){
counter++;
Serial.println(counter);
counter = counter % 10;
}
else{
delay(50);
}
buttonStateOld = buttonState;
clear();
delay(50);
if(counter==0){
number0();
}
if(counter==1){
number1();
}
if(counter==2){
number2();
}
if(counter==3){
number3();
}
if(counter==4){
number4();
}
if(counter==5){
number5();
}
if(counter==6){
number6();
}
if(counter==7){
number7();
}
if(counter==8){
number8();
}
if(counter==9){
number9();
}
}
void numberRoll_playPause() {
buttonState = !digitalRead(buttonPin);
if(buttonState == 1 && buttonStateOld ==0){
pressCounter++;
if(pressCounter % 2 == 1){
Serial.println(num);
}
}
else{
delay(1);
}
buttonStateOld = buttonState;
if(pressCounter % 2 == 1){
num++;
delay(1);
if(num == 100){
num = 0;
}
}
int b=num%10;
int a=num/10;
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
showDigit(b);
delay(2);
clear();
delay(1);
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
showDigit(a);
delay(2);
clear();
delay(1);
}
void twoDigitShow(){
int b=num%10;
int a=num/10;
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
showDigit(b);
delay(5);
clear();
delay(1);
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
showDigit(a);
delay(5);
clear();
delay(1);
}
void millisUsageCounter() {
if(millis() - startTime > 1000)
{
num++;
if(num == 100){
num = 0;
}
startTime = millis();
}
int b=num%10;
int a=num/10;
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
delay(10);
showDigit(b);
delay(1);
clear();
delay(30);
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
delay(10);
showDigit(a);
delay(1);
clear();
delay(30);
}
void counter1() {
for(int i=10; i<100; i++) {
int b=i%10;
int a=i/10;
delay(600);
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
delay(1000);
showDigit(b);
delay(1);
clear();
delay(0);
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
delay(1000);
showDigit(a);
delay(1);
clear();
delay(0);
}
}
void showDigit(int digit) {
switch(digit) {
case 0:
number0();
break;
case 1:
number1();
break;
case 2:
number2();
break;
case 3:
number3();
break;
case 4:
number4();
break;
case 5:
number5();
break;
case 6:
number6();
break;
case 7:
number7();
break;
case 8:
number8();
break;
case 9:
number9();
break;
}
}
void test1() {
digitalWrite(dig1, HIGH);
digitalWrite(dig2, LOW);
delay(1);
number1();
delay(10);
clear();
delay(10);
digitalWrite(dig1, LOW);
digitalWrite(dig2, HIGH);
delay(1);
number2();
delay(10);
clear();
delay(10);
}
void oneToFive () {
number1();
delay(500);
clear();
delay(100);
number2();
delay(500);
clear();
delay(100);
number3();
delay(500);
clear();
delay(100);
number4();
delay(500);
clear();
delay(100);
number5();
delay(500);
clear();
delay(100);
}
void clear() {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
}
void number0 () {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, LOW);
}
void number1 () {
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
}
void number2() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
}
void number3() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
}
void number4() {
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void number5() {
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void number6() {
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void number7() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
}
void number8() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void number9() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}