Blog Zonaduino

  • Home
  • Sub Menu
    • Lorem Ipsum
    • Ipsum Lorem
    • Muspi Merol
    • Merol Muspi
  • Menu
  • Sub Sub Menu
    • Lorem Ipsum
    • Ipsum Lorem
      • Lorem Ipsum
      • Ipsum Lorem
      • Muspi Merol
      • Merol Muspi
    • Muspi Merol
    • Merol Muspi
  • 404
Home » Arduino » Arduino Projects » Dunia Komputer » Mikrokontroler » Cara Membuat Cable Tester RJ45 (Ethernet) Menggunakan Arduino

Cara Membuat Cable Tester RJ45 (Ethernet) Menggunakan Arduino



ZONADUINO- Baik sobat sesuai judul diatas, yaitu "Cara Membuat Cable Tester RJ45 (Ethernet)". Admin membagikan Project ini kepada sobat sekalian, dan sebelum membahas lebih dalam silahkan cermati baik-baik cara kerja dari Project ini.

https://www.youtube.com/watch?v=6MR6qU3fXBc

Ide ini lahir tatkala kita mau memeriksa kabel UTP RJ45 untuk jaringan, untuk itu admin membagikan Project sederhana ini kepada seluruh pecinta dunia Mikro terlebih lagi pecinta Arduino. Memang alat ini dipasaran juga ada tapi jika kita bisa membuatnya sendiri akan menambah dan melatih kreatifitas kita bukan?

 

Dalam penggunaan IC SN74HC595 terintegrasi kecil ini bertujuan untuk memperbanyak output Arduino Uno untuk pin-pin pada RJ45.

Alat dan Bahan :

  1. Resistor 10k ohm × 16

  2. IC sn74hc595n × 1

  3. Arduino UNO & Genuino UNO × 1


Skema :



 

/*

 Tester per cavi ethernet


*/

//Librerie


#include <LiquidCrystal.h>

// inizializzo e assegno porte LCD

LiquidCrystal lcd( 4, 5, 6, 7, 8, 9);

// abilito pin per pilotare IC74HC595

int latchPin = 12;  

int clockPin = 11;  

int dataPin = 13;

byte pinOut = 0;    // da modificare

int uscita = 0;  // da modificare

int Lo1 = 0;

int Lo2 = 0;

int Lo3 = 0;

int Lo4 = 0;

int Lo5 = 0;

int Lo6 = 0;

int Lo7 = 0;

int Lo8 = 0;

int cavo = 0;

int eth1 = 0;

int eth2 = 0;

int eth3 = 0;

int eth4 = 0;

int eth5 = 0;

int eth6 = 0;

int eth7 = 0;

int eth8 = 0;

int testeth1 = 0;

int verifi1 = 0;



//Assegno variabili alle porte

int ethIn1 = 14;

int ethIn2 = 15;

int ethIn3 = 16;

int ethIn4 = 17;

int ethIn5 = 18;

int ethIn6 = 19;

int ethIn7 = 2;

int ethIn8 = 3;



void setup() {

   lcd.begin(16,2);

   lcd.setCursor(0,0);

   lcd.print("Progetto Tester");

   lcd.setCursor(4,1);

   lcd.print("Ethernet");

   delay(3000);

   lcd.clear();

   Serial.begin(9600);

 

 //configuro uscita IC

   pinMode(latchPin, OUTPUT);

   pinMode(dataPin, OUTPUT);

   pinMode(clockPin, OUTPUT);


    pinOut = 0;


  //Assegno gli stati alle porte


 pinMode(ethIn1, INPUT);

 pinMode(ethIn2, INPUT);

 pinMode(ethIn3, INPUT);

 pinMode(ethIn4, INPUT);

 pinMode(ethIn5, INPUT);

 pinMode(ethIn6, INPUT);

 pinMode(ethIn7, INPUT);

 pinMode(ethIn8, INPUT);

 


}


void loop() {


   Serial.print("---------------INIZIO----------------");

   cavo = 0;

   Lo1 = 0;

   Lo2 = 0;

   Lo3 = 0;

   Lo4 = 0;

   Lo5 = 0;

   Lo6 = 0;

   Lo7 = 0;

   Lo8 = 0;

   lcd.clear();

   lcd.print("Processo: ");

   lcd.setCursor(0,1);

   //inserisco ciclo

   for (int uscita=0; uscita<= 7; uscita++){

      

   Serial.println();

   Serial.print("Pin uscita: ");

   Serial.print(uscita);

   

   //lcd.begin(16, 2);

   lcd.print(uscita + 1);

   pinOut = 0;


   bitSet(pinOut, uscita);

   digitalWrite(latchPin, LOW);

   shiftOut(dataPin, clockPin, LSBFIRST, pinOut);

   digitalWrite(latchPin, HIGH);

   


  //leggo stato entrata ethIn1

 int eth1 = digitalRead(ethIn1);

 int eth2 = digitalRead(ethIn2);

 int eth3 = digitalRead(ethIn3);

 int eth4 = digitalRead(ethIn4);

 int eth5 = digitalRead(ethIn5);

 int eth6 = digitalRead(ethIn6);

 int eth7 = digitalRead(ethIn7);

 int eth8 = digitalRead(ethIn8);

 int testeth1 = analogRead(ethIn1);

 

   //inserisco verifica


    if (uscita == 0 && eth1 == 1)

   {

     Lo1 = 1;

   }

   else

   {

     if (uscita == 0 && eth3 == 1) // se incrociato cambia valore

     {Lo1 = 256 ;

     }

   }

      

       

       if (uscita == 1 && eth2 == 1)

   {

     Lo2 = 2 ;

   }

   else

   {

           if (uscita == 1 && eth6 == 1) // se incrociato cambia valore

     {Lo2 = 512 ;

     }

   }

     

     

     if (uscita == 2 && eth3 == 1)

   {

     Lo3 = 4 ;

   }

   else

   {

           if (uscita == 2 && eth1 == 1) // se incrociato cambia valore

     {Lo4 = 1024 ;

     }

   }

       

       

       if (uscita == 3 && eth4 == 1)

   {

     Lo4 = 8 ;

   }

   else

   {

     

   }

       

       

       if (uscita == 4 && eth5 == 1)

   {

     Lo5 = 16;

   }

   else

   {

     

   }

       

       

       if (uscita == 5 && eth6 == 1)

   {

     Lo6 = 32;

   }

   else

   {

           if (uscita == 5 && eth2 == 1) // se incrociato cambia valore

     {Lo6 = 2024 ;

     }

   }

     

     

     if (uscita == 6 && eth7 == 1)

   {

     Lo7 = 64;

   }

   else

   {

     

   }

       

       

       if (uscita == 7 && eth8 == 1)

   {

     Lo8 = 128;

   }

   else

   {

     

   }

     Serial.println();

     Serial.print("Stato lettura porte: ");

     Serial.print(eth1);    

     Serial.print(eth2);   

     Serial.print(eth3);

     Serial.print(eth4);

     Serial.print(eth5);

     Serial.print(eth6);

     Serial.print(eth7);

     Serial.print(eth8);

     

     

     cavo = Lo1 + Lo2 + Lo3 + Lo4 + Lo5 + Lo6 + Lo7 + Lo8 ;

     Serial.println();

     Serial.print("Somma valori riscontrati: ");

     Serial.print(cavo);

  }

     

     

     

   

     

     

     if ( cavo == 255 )

     {

       lcd.clear();

       lcd.print("cavo dritto   ok");

       delay(2000);

       

     }

       else

   {

           if (cavo == 3008 )

             {

              lcd.clear();

               lcd.print("cavo inc.  ok");

               delay(2000);

             }

             else

             {

             lcd.clear();

             lcd.print("Cavo diverso");

             lcd.setCursor(0,1);

             lcd.print("o difettoso");

             

             delay(1000);

             lcd.clear();

             if ( cavo == 2496 )

             {

               lcd.print("Pin 2 / 6 ");

               delay(2000);

             }

             else

             {

                 

             }


              }

             }

             // insserisco sistema verifica pin per eventuale errore

             //inserisco ciclo


              

             lcd.print("Inizio verifica");

             delay(1000);

             lcd.clear();

             lcd.print("out: ");

             lcd.setCursor(0,1);

             lcd.print("in : ");

            uscita = 0;

   for (int uscita=0; uscita<= 7; uscita++){

   delay(250);

  

   

   pinOut = 0;

   bitSet(pinOut, uscita);

   digitalWrite(latchPin, LOW);

   shiftOut(dataPin, clockPin, LSBFIRST, pinOut);

   digitalWrite(latchPin, HIGH);

 //leggo stato entrata ethIn1

 int eth1 = digitalRead(ethIn1);

 int eth2 = digitalRead(ethIn2);

 int eth3 = digitalRead(ethIn3);

 int eth4 = digitalRead(ethIn4);

 int eth5 = digitalRead(ethIn5);

 int eth6 = digitalRead(ethIn6);

 int eth7 = digitalRead(ethIn7);

 int eth8 = digitalRead(ethIn8);


  //invio info al seriale stato porte

       Serial.println();

     Serial.print("Stato lettura porte verifica finale: ");

     Serial.print(eth1);    

     Serial.print(eth2);   

     Serial.print(eth3);

     Serial.print(eth4);

     Serial.print(eth5);

     Serial.print(eth6);

     Serial.print(eth7);

     Serial.print(eth8);

 

   //inserisco verifica porta1


    if (eth1 == 1)

   {

     verifi1 = 1;

   }

   else

   {

         if (eth2 == 1)

         {verifi1 = 2;

         }

         else

         {

             if (eth3 == 1)

             {verifi1 = 3;

             }

             else

             {

                 if (eth4 == 1)

                  {verifi1 = 4;

                  }

                  else

                  {

                       if (eth5 == 1)

                       {verifi1 = 5;

                       }

                       else

                       {

                           if (eth6 == 1)

                           {verifi1 = 6;

                            }

                            else

                            {

                                 if (eth7 == 1)

                                  {verifi1 = 7;

                                  }

                                  else

                                  {

                                       if (eth8 == 1)

                                       {verifi1 = 8;

                                       }

                                       else

                                       {

                                       }

                                   }

                              }

                          }

                      }

                    }

                  }                               

                 }

      

             

             

             //lcd.print("Errore: ");

             

             lcd.setCursor(uscita+5,0);

             

             lcd.print(uscita+1);

             lcd.setCursor(uscita+5,1);

             

             lcd.print(verifi1);

             //delay(250);

             verifi1 = 0;

             //fine verifica errori

             }

              delay(2000);

            // }

             //}

   //}

}


Cara Membuat Cable Tester RJ45 (Ethernet) Menggunakan Arduino , Pada: 11:18:00



Share to

Facebook Google+ Twitter

Related with Cara Membuat Cable Tester RJ45 (Ethernet) Menggunakan Arduino :

Tags: #Arduino, #Arduino Projects, #Dunia Komputer, #Mikrokontroler Diposkan oleh syafrie di 11:18:00

0 komentar :

Post a Comment

« Next Prev »
  • Home

Labels

Acer Alat Ukur Analog Applications Arduino Arduino Projects Artikel atmega8 Blogger CMS CNC Coding Drone Dunia Komputer Edukasi Elektronika Analog Elektronika Dasar Flashing HP Google Adsense HandPhone IBM Internet Laptop Laptop Rusak Library Logic Probe Mekatronika Mikrokontroler Netbook Netbook Rusak PLC Pneumatik Robot Robotic Sekilas Info Dunia Elektronika Sensor Service Service Compaq Service FUJITSU Service HP Service IBM Service Lenovo Service LG Service Medion Service Panasonic Service Toshiba Servie Sevice Acer Software Tak Berkategori Trainer Tutorial Ultrasonik
Copyright © 2016 Blog Zonaduino All Rights Reserved | Sonic SEO Template