Sequencer Arduino Code
/*Dit programma is een seqencer t.b.v het N.O.V loop antenne project. * als de ptt afkomstig uit de transceiver laag is schakeld relais rx uit schakeld de spanning van de ontvangst versterker * Na de ingestelde tijd via de dip schakelaars schakeld het antenne relais om * bij het openen van het ptt signaal schakeld het antenne relais af. * En na de ingestelde tijd schakeld het andere relais de voeding weer in van de rx versterker van de loop antenne. * Als keuze schakelaar gemaakt wordt schakeld het relais DE ANTENNE NAAR DE TRANSCEIVER rx loop antenne is dan buiten gebruik. * programma geschreven door Arjan Broekhuizen PE1ABE */ // geef pin nummer op const int ptt = 2; // wordt aangeboden door de transceiver laag bij tx const int keuzeschakelaar = 3; // keuze tussen ontvangen op loop of op tx antenne const int ledrx = 8; // groen const int ledtx = 9; // rood const int ledkeuze = 10; // blauw const int dipschakelaar1 = 4; // 25ms const int dipschakelaar2 = 5; // 50ms const int dipschakelaar3 = 6; // 100ms const int dipschakelaar4 = 7; // 200ms const int rxuit = 11; // uitgang hoog bij rx const int txuit = 12; // uitgang hoog bij tx // variabelen int pttvar = 0; // int keuzeschakelaarvar = 0;// int dip1var = 0; // int dip2var = 0; // int dip3var = 0; // int dip4var = 0; // void setup() { pinMode(rxuit, OUTPUT); pinMode(txuit, OUTPUT); pinMode(ledrx, OUTPUT); pinMode(ledtx, OUTPUT); pinMode(ledkeuze, OUTPUT); pinMode(ptt, INPUT); pinMode(keuzeschakelaar, INPUT); pinMode(dipschakelaar1, INPUT); pinMode(dipschakelaar2, INPUT); pinMode(dipschakelaar3, INPUT); pinMode(dipschakelaar4, INPUT); } void loop() { pttvar = digitalRead(ptt); keuzeschakelaarvar = digitalRead(keuzeschakelaar); dip1var = digitalRead(dipschakelaar1); dip2var = digitalRead(dipschakelaar2); dip3var = digitalRead(dipschakelaar3); dip4var = digitalRead(dipschakelaar4); if (keuzeschakelaarvar == LOW) { digitalWrite(txuit,LOW); digitalWrite(rxuit,LOW); digitalWrite(ledrx,HIGH); digitalWrite(ledtx,HIGH); digitalWrite(ledkeuze,LOW);//led keuze aan blauw } //ZENDEN if ( (pttvar == LOW) && (keuzeschakelaarvar == HIGH)) { digitalWrite(rxuit,LOW); //spanning van de loop digitalWrite(ledrx,HIGH); digitalWrite(ledtx,LOW); //led tx aan rood digitalWrite(ledkeuze,HIGH); //----DIPSCHAKELAAR--------------------------------------------------------- if (dip1var == LOW) { delay(25); } if (dip2var == LOW){ delay(50); } if (dip3var == LOW){ delay(100); } if (dip4var == LOW){ delay(200); } //---------------------------------------------------------------------------- digitalWrite(txuit,LOW);// TRANSCEIVER SCHAKELD NAAR DE ZEND ANTENNE } //ONTVANGST if ((pttvar == HIGH) && (keuzeschakelaarvar== HIGH)) { digitalWrite(txuit,HIGH); //transceiver schakelt naar loop digitalWrite(ledrx,LOW); //groene led aan ontvangst digitalWrite(ledtx,HIGH); digitalWrite(ledkeuze,HIGH); //----DIPSCHAKELAAR----------------------------------------------------------- if (dip1var == LOW){ delay(25); } if (dip2var == LOW){ delay(50); } if (dip3var == LOW){ delay(100); } if (dip4var == LOW){ delay(200); } //----------------------------------------------------------------------------- digitalWrite(rxuit,HIGH);//SPANNING OP DE LOOP } } //PE1ABE//