The problem is the sensor array elements do not represent its correct state in vertual terminal of proteus.
Can anybody tell me what is wrong with my project? Here I attach the proteus schematic screen shot as well.
int DSW11= 53;
int DSW12= 52;
int DSW13= 51;
int DSW14= 50;
int DSW15= 49;
int DSW16= 48;
int DSW17= 47;
int DSW18= 46;
int DSW21 = 15;
int DSW22 = 14;
int DSW23 = 2;
int DSW24 = 3;
int DSW25 = 4;
int DSW26 = 5;
int DSW27 = 6;
int DSW28 = 7;
int D1= 25;
int D2= 24;
int D3= 23;
int D4= 22;
int sensorValue46;
int sensorValue47;
int sensorValue48;
int sensorValue49;
int sensorValue50;
int sensorValue51;
int sensorValue52;
int sensorValue53;
int sensorValue7;
int sensorValue6;
int sensorValue5;
int sensorValue4;
int sensorValue3;
int sensorValue2;
int sensorValue14;
int sensorValue15;
int DSW1[] ={sensorValue46,sensorValue47,sensorValue48,sensorValue49,sensorValue50,sensorValue51,sensorValue52,sensorValue53};
int DSW2[] ={sensorValue7,sensorValue6,sensorValue5,sensorValue4,sensorValue3,sensorValue2,sensorValue14,sensorValue15};
bool result;
int waterlevel=0;
int i;
void setup() {
// put your setup code here, to run once:
pinMode (15 , INPUT);
pinMode (14 , INPUT);
pinMode (2 , INPUT);
pinMode (3 , INPUT);
pinMode (4 , INPUT);
pinMode (5 , INPUT);
pinMode (6 , INPUT);
pinMode (7 , INPUT);
pinMode (53 , INPUT);
pinMode (52 , INPUT);
pinMode (51 , INPUT);
pinMode (50 , INPUT);
pinMode (49, INPUT);
pinMode (48 , INPUT);
pinMode (47 , INPUT);
pinMode (46 , INPUT);
pinMode (25, OUTPUT);
pinMode (24, OUTPUT);
pinMode (23, OUTPUT);
pinMode (22, OUTPUT);
Serial.begin (9600);
sensorValue46 = digitalRead (DSW18);
digitalWrite (25, HIGH);
}
void loop() {
// put your main code here, to run repeatedly:
DSW1[0]= sensorValue46;
DSW1[1]= sensorValue47;
DSW1[2]= sensorValue48;
DSW1[3]= sensorValue49;
DSW1[4]= sensorValue50;
DSW1[5]= sensorValue51;
DSW1[6]= sensorValue52;
DSW1[7]= sensorValue53;
DSW2[0]= sensorValue7;
DSW2[1]= sensorValue6;
DSW2[2]= sensorValue5;
DSW2[3]= sensorValue4;
DSW2[4]= sensorValue3;
DSW2[5]= sensorValue2;
DSW2[6]= sensorValue14;
DSW2[7]= sensorValue15;
DipSwitch1IncRead ();
DipSwitch2IncRead ();
DipSwitch1DecRead ();
DipSwitch2DecRead ();
}
void DipSwitch1IncRead (){
int X1 =waterlevel;
if(digitalRead (DSW28)==LOW){
int X1 = digitalRead(DSW18);
if (X1 == HIGH){
Serial.println("X1");
}
}
if (digitalRead (DSW18)==HIGH && digitalRead (DSW28)==LOW){
for (i=0; i<8; i++){
if (digitalRead (DSW1[i])==HIGH){
Serial.print ("DSW1[]={");
for ( i=0; i<8; i++){
Serial.print (DSW1[i]);
}
Serial.print ("}");
Serial.println ("");
}
}
}
if (digitalRead (DSW12)==HIGH){
digitalWrite (24, HIGH);
}
}
void DipSwitch2IncRead (){
int X2 = waterlevel;
if (digitalRead (DSW28)==HIGH){
int X2 = digitalRead (DSW28);
if (X2 == HIGH){
Serial.println("X2");
}
}
if (digitalRead (DSW28)==HIGH){
for (i=0; i<8; i++){
if (digitalRead (DSW2[i])==HIGH){
Serial.print ("DSW2[]={");
for ( i=0; i<8; i++){
Serial.print (DSW2[i]);
}
Serial.print ("}");
Serial.println ("");
}
}
}
if (digitalRead (DSW27)==HIGH){
digitalWrite (25, LOW);
}
}
void DipSwitch2DecRead (){
int X3= waterlevel;
if (digitalRead(DSW21)==HIGH){
int X3 = digitalRead (DSW21);
if (X3 == LOW){
Serial.println("X2");
}
}
if (digitalRead (DSW21)==HIGH ){
for (i=7; i>=0; i--){
if (digitalRead (DSW2[i])==LOW){
Serial.print ("DSW2[]={");
for (i=7; i>=0; i--){
Serial.print (DSW2[i]);
}
Serial.print ("}");
Serial.println ("");
}
}
}
if (digitalRead (DSW27)==LOW) {
digitalWrite (25, HIGH);
}
}
void DipSwitch1DecRead (){
int X4 = waterlevel;
if (digitalRead(DSW11)==HIGH){
int X4 = digitalRead (DSW11);
if (X4 == LOW){
Serial.println("X1");
}
}
if (digitalRead (DSW11)== HIGH && digitalRead (DSW28)==LOW ){
for (i=7; i>=0; i--){
if (digitalRead (DSW1[i])==LOW){
Serial.print ("DSW1[]={");
for (i=7; i>=0; i--){
Serial.print (DSW1[i]);
}
Serial.print("}");
Serial.println ("");
}
}
}
if (digitalRead (DSW12)==LOW){
digitalWrite (24,LOW);
}
}