Icom by voltage

/* ICOM Bandecoder
by Ondrej Kolonicny OK1CDJ, ondra@ok1cdj.com
based on Marios Nicolaou 5B4WN Icom decoder to BCD
v 1.0 - 20.3.2013 

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
*/

int icomBandPin = A7;    // select the input where is icom voltage output connected
int sensedVoltage=0;
float calculatedVoltage=0;
int band=0;
int counter =0;
int previousValue=0;

int b160 = 9;
int b80 = 8;
int b40 = 7;
int b30 = 6;
int b20 = 5;
int b17 = 4;
int b15 = 3;
int b12 = 2;
int b10 = 11;
int b6 = 10;

void setup() {
  pinMode(b160, OUTPUT);
  pinMode(b80, OUTPUT);
  pinMode(b40, OUTPUT);
  pinMode(b30, OUTPUT);
  pinMode(b20, OUTPUT);
  pinMode(b17, OUTPUT);
  pinMode(b15, OUTPUT);
  pinMode(b12, OUTPUT);
  pinMode(b10, OUTPUT);
  pinMode(b6, OUTPUT);
 }
 void loop() {
   // read the value from the sensor:
   sensedVoltage = analogRead(icomBandPin);    
   // measure voltage 5 times
   if (counter==5) {   
   calculatedVoltage = float(sensedVoltage)*5/1024;
   setBand(calculatedVoltage);
   delay (20);
                  
 } else {
   if (abs(previousValue-sensedVoltage)>10) {
    //means change or spurious number 
     previousValue=sensedVoltage;
   } else {
     counter++; 
     previousValue=sensedVoltage;
   }
 }
}

int  setBand(float voltage) {
   int band=0;
  
if (voltage>4.20 && voltage<4.68) {
 band=160; 
  digitalWrite(b160, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b6, LOW);
 
} else if (voltage>3.50 && voltage<4.20) {
 band=80;
  digitalWrite(b80, HIGH);
  digitalWrite(b160, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b6, LOW);
 
} else if (voltage>=2.95 && voltage<3.50) {
  band=40;
  digitalWrite(b40, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b160, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b6, LOW);
} else if(voltage>=2.30 && voltage<2.95) {
  band=20;
  digitalWrite(b20, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b160, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b6, LOW);
  
} else if (voltage>=1.70 && voltage<2.30) {
  band=15;
  digitalWrite(b15, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b160, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b6, LOW);
  
} else if (voltage>=1.2 && voltage<1.7) {
  band=10;
  digitalWrite(b10, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b160, LOW);
  digitalWrite(b6, LOW);
  
} else if (voltage>=0.75 && voltage<1.2) {
  band=6;
  digitalWrite(b6, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b30, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b160, LOW);
} else if (voltage  <0.75) {
  band=30;
  digitalWrite(b30, HIGH);
  digitalWrite(b80, LOW);
  digitalWrite(b40, LOW);
  digitalWrite(b160, LOW);
  digitalWrite(b20, LOW);
  digitalWrite(b17, LOW);
  digitalWrite(b15, LOW);
  digitalWrite(b12, LOW);
  digitalWrite(b10, LOW);
  digitalWrite(b6, LOW);
}
 return band; 
}