Hi everyone.
I am new to Arduino and new to coding. I have tried to research the answer to my topic but I can't seem to find the right answer. I'm not a programmer of engineer. I'm a technician and a car main dealer and mainly do software updates to vehicles and electrical diagnostics. Anyway enough about me and here is my first code attempt and question.
I have written some code and successfully powered two 7 segment displays and counted to 20. The displays are common anode and the circuit works perfectly.
May question is the code is long and I wonder if there is a better way to write the code? As I'm learning any advice, suggestions or links to reading material would be highly appreciated. Here is my very basic code.
int segE1=0;
int segD1=1;
int segC1=2;
int segB1=3;
int segA1=4;
int segG1=5;
int segF1=6;
int segF2=7;
int segA2=8;
int segB2=9;
int segE2=10;
int segD2=11;
int segG2=12;
int segC2=13;
int wait=1000;
void setup() {
pinMode(segA1,OUTPUT);
pinMode(segB1,OUTPUT);
pinMode(segC1,OUTPUT);
pinMode(segD1,OUTPUT);
pinMode(segE1,OUTPUT);
pinMode(segF1,OUTPUT);
pinMode(segG1,OUTPUT);
pinMode(segA2,OUTPUT);
pinMode(segB2,OUTPUT);
pinMode(segC2,OUTPUT);
pinMode(segD2,OUTPUT);
pinMode(segE2,OUTPUT);
pinMode(segF2,OUTPUT);
pinMode(segG2,OUTPUT);
}
void loop() {
digitalWrite(segA1,LOW); // 00
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,HIGH);
delay(wait);
digitalWrite(segA1,LOW); //01
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,HIGH);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,HIGH);
delay(wait);
digitalWrite(segA1,LOW); //02
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,HIGH);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //03
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //04
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,HIGH);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //05
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,HIGH);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //06
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,HIGH);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //7
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,HIGH);
delay(wait);
digitalWrite(segA1,LOW); //08
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //09
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,LOW);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //10
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,HIGH);
delay(wait);
digitalWrite(segA1,HIGH); //11
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,HIGH);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,HIGH);
delay(wait);
digitalWrite(segA1,HIGH); //12
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,HIGH);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //13
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //14
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,HIGH);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //15
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,HIGH);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //16
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,HIGH);
digitalWrite(segB2,HIGH);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //17
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,HIGH);
digitalWrite(segG2,HIGH);
delay(wait);
digitalWrite(segA1,HIGH); //18
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,HIGH); //19
digitalWrite(segB1,LOW);
digitalWrite(segC1,LOW);
digitalWrite(segD1,HIGH);
digitalWrite(segE1,HIGH);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,HIGH);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,HIGH);
digitalWrite(segE2,HIGH);
digitalWrite(segF2,LOW);
digitalWrite(segG2,LOW);
delay(wait);
digitalWrite(segA1,LOW); //20
digitalWrite(segB1,LOW);
digitalWrite(segC1,HIGH);
digitalWrite(segD1,LOW);
digitalWrite(segE1,LOW);
digitalWrite(segF1,HIGH);
digitalWrite(segG1,LOW);
digitalWrite(segA2,LOW);
digitalWrite(segB2,LOW);
digitalWrite(segC2,LOW);
digitalWrite(segD2,LOW);
digitalWrite(segE2,LOW);
digitalWrite(segF2,LOW);
digitalWrite(segG2,HIGH);
delay(wait);
}







