This shows you the differences between two versions of the page.
|
pm:prj2025:ajipa:bogdan.trifan2412-rj45-tester [2025/05/24 15:56] bogdan.trifan2412 |
pm:prj2025:ajipa:bogdan.trifan2412-rj45-tester [2025/05/30 07:03] (current) bogdan.trifan2412 |
||
|---|---|---|---|
| Line 21: | Line 21: | ||
| Prin simpla apăsare a unui buton, utilizatorul poate selecta tipul de cablu testat: | Prin simpla apăsare a unui buton, utilizatorul poate selecta tipul de cablu testat: | ||
| - | - **Straight-through** – pentru conectarea dispozitivelor aflate pe //layere diferite// (ex: PC – switch) | + | - **Straight-through** - pentru conectarea dispozitivelor aflate pe //layere diferite// (ex: PC – switch) |
| - | - **Crossover** – pentru conectarea dispozitivelor de //același layer// (ex: PC – PC) | + | - **Crossover** - pentru conectarea dispozitivelor de //același layer// (ex: PC – PC) |
| + | - **Rollover** (numit si //cablu de consola//) - pentru a conecta un dispozitiv la un echipament de retea si pentru a avea acces direct la CLI | ||
| După selectare, pe ecranul principal (128x160 SPI) este afișată o imagine cu ordinea corectă a firelor pentru tipul respectiv de cablu. | După selectare, pe ecranul principal (128x160 SPI) este afișată o imagine cu ordinea corectă a firelor pentru tipul respectiv de cablu. | ||
| Line 41: | Line 42: | ||
| Testarea poate fi oprită forțat, în orice moment, prin apăsarea unui buton. | Testarea poate fi oprită forțat, în orice moment, prin apăsarea unui buton. | ||
| - | În timp ce display-ul pe SPI (de rezoluție mai mare) afișează ordinea firelor în mufa RJ-45, LCD-ul cu modul I2C va scrie pe ecran tipul de cablu **straight-through**\**crossover** și indexul pinului de pe **sender** de pe care se trimit semnale (ex: //Testing pin 1...8//), sau mesajul //Testing all pins//. | + | În timp ce display-ul pe SPI (de rezoluție mai mare) afișează ordinea firelor în mufa RJ-45, LCD-ul cu modul I2C va scrie pe ecran tipul de cablu **straight-through**\**crossover**\**rollover** și indexul pinului de pe **sender** de pe care se trimit semnale (ex: //Testing pin 1...8//), sau mesajul //Testing all pins//. |
| ==== De ce este util? ==== | ==== De ce este util? ==== | ||
| Line 90: | Line 91: | ||
| * Calalalt tip de fire (silicon - multifilar): sunt bune de lipit, dar in niciun caz nu se pot infige intr-un breadboard | * Calalalt tip de fire (silicon - multifilar): sunt bune de lipit, dar in niciun caz nu se pot infige intr-un breadboard | ||
| </note> | </note> | ||
| + | |||
| + | |||
| + | ==== Schema electrica ==== | ||
| + | |||
| + | |||
| + | {{:pm:prj2025:ajipa:rj45-schematics.jpg?800}} | ||
| + | |||
| Line 116: | Line 124: | ||
| | D16 (etichetat A2) | CLK 74HC165 | | | D16 (etichetat A2) | CLK 74HC165 | | ||
| | A4 | (I2C) SDA | | | A4 | (I2C) SDA | | ||
| - | | A5 | (I2C) SDA | | + | | A5 | (I2C) SCL | |
| === 160x128 Display (pe SPI) === | === 160x128 Display (pe SPI) === | ||
| - | {{:pm:prj2025:ajipa:SPI%20128x160%20display.jpeg}} | + | {{pm:prj2025:ajipa:spi_128x160_display.jpeg?400}} |
| Line 161: | Line 169: | ||
| === 74HC595 shift register === | === 74HC595 shift register === | ||
| - | > Shift register-ul **74HC595** are o singura intrare si **8 iesiri paralele**. | + | <note tip> |
| + | Shift register-ul **74HC595** are o singura intrare si **8 iesiri paralele**. | ||
| + | </note> | ||
| - | {{{{:pm:prj2025:ajipa:SN74HC595N.png}} | + | {{:pm:prj2025:ajipa:SN74HC595N.png}} |
| Line 180: | Line 190: | ||
| | 11 | SRCLK | Arduino D8 | | | 11 | SRCLK | Arduino D8 | | ||
| | 12 | RCLK | Arduino D7 | | | 12 | RCLK | Arduino D7 | | ||
| - | | 13 | !OE | GND | + | | 13 | !OE | GND | |
| | 14 | SER | Arduino D6 | | | 14 | SER | Arduino D6 | | ||
| | 16 | Vcc | 5V | | | 16 | Vcc | 5V | | ||
| Line 196: | Line 206: | ||
| </note> | </note> | ||
| - |  | + | |
| + | {{:pm:prj2025:ajipa:74HC165.png}} | ||
| ^ Index pin 74HC165 ^ Denumire pin 74HC165 ^ Corespondent ^ | ^ Index pin 74HC165 ^ Denumire pin 74HC165 ^ Corespondent ^ | ||
| Line 222: | Line 234: | ||
| </note> | </note> | ||
| - | |||
| - | ==== Schema electrica ==== | ||
| - | |||
| - | |||
| - | {{:pm:prj2025:ajipa:rj45-schematics.jpg?800}} | ||
| Line 275: | Line 282: | ||
| Am asociat fiecarui buton cate o intrerupere: | Am asociat fiecarui buton cate o intrerupere: | ||
| - | * Butonul **albastru** - intreruperea **INT0** - schimba tipul de cablare (crossover/straigh-through) | + | * Butonul **albastru** - intreruperea **INT0** - schimba tipul de cablare (crossover/straigh-through/rollover) |
| * Butonul **rosu** - intreruperea **INT1** - opreste fortat rularea testului | * Butonul **rosu** - intreruperea **INT1** - opreste fortat rularea testului | ||
| * Butonul **alb** - intreruperea **PCINT20** (din **PCINT2_vect**) - porneste algoritmul de testare: | * Butonul **alb** - intreruperea **PCINT20** (din **PCINT2_vect**) - porneste algoritmul de testare: | ||
| Line 301: | Line 308: | ||
| * Functia este apelata in urma apasarii butonului **rosu**. | * Functia este apelata in urma apasarii butonului **rosu**. | ||
| * Opreste fortat algoritmul de testare, | * Opreste fortat algoritmul de testare, | ||
| - | * dar nu inainte de a afisa pe ecranul LCD pe I2C un mesaj sugestiv in acest sens | + | * dar nu inainte de a afisa pe ecranul LCD pe I2C un mesaj sugestiv in acest sens: **lcd.print("Force stop!");** |
| - | * **lcd.print("Force stop!");** | + | |
| * **void write_to_sender_socket()**: | * **void write_to_sender_socket()**: | ||
| * Variabila **bool pinsSenderSocket[8]** retine starea pinilor din mufa RJ-45 de transmisie | * Variabila **bool pinsSenderSocket[8]** retine starea pinilor din mufa RJ-45 de transmisie | ||
| Line 361: | Line 367: | ||
| Repo GitHub: https://github.com/TrifanBogdan24/RJ45-tester | Repo GitHub: https://github.com/TrifanBogdan24/RJ45-tester | ||
| - | YouTube: https://www.youtube.com/shorts/l0MMbmgLmWM | + | [[https://www.youtube.com/embed/1yIg8dGbAU8|link]] YouTube: |
| + | |||
| + | |||
| + | |||
| + | <html> | ||
| + | <iframe width="400" height="600" | ||
| + | src="https://www.youtube.com/embed/1yIg8dGbAU8" | ||
| + | frameborder="0" | ||
| + | allow="autoplay; encrypted-media" | ||
| + | allowfullscreen> | ||
| + | </iframe> | ||
| + | </html> | ||