[ETHM] - Moduł ethernetowy z procesorem LPC2378
: środa 15 maja 2019, 01:15
Moduł z prockiem LPC2378
W ramach robienia porządków na dysku i ganiania
duchów przeszłości, natrafiłem w zakamarkach pamięci
na moduł ethernetowy z prockiem LPC2378. Jest to
bardzo wiekowa konstrukcja, pochodzi z czasów,
gdzie nie znałem innych procków z obsługą sieci (dzisiaj pewnie
zrobiłbym to inaczej, niemiej jest jak jest, takie były czasy).
Nawet poniższy tekst pochodzi sprzed kilku lathttps://www.youtube.com/watch?v=HSvaocTnazY
Poniższy moduł, będący aplikacją mikrokontrolera z rodziny ARM wraz z interfejsem umożliwiającym przyłączenie do sieci ethernet, powstał jako eksperyment z zastosowaniem elementów interfejsu sieciowego (do transmisji z prędkością 100 Mb). Generalnie może służyć do „ćwiczenia” aplikacji sieciowych z ewentualną możliwością wykorzystania go później jako gotowego elementu do zabudowy (w tym celu ma wyprowadzone możliwie dużo pinów na złącza modułu).Schemat blokowy przedstawia następujący rysunek:Poszczególne elementy blokowe mają następujący schemat ideowy. Część procesorowa zawiera mikrokontroler LPC2378 wraz z niezbędnymi elementami towarzyszącymi (układ generacji sygnału reset, obwody generacji sygnału zegarowego dla procesora, interfejs do przyłączenia programatora).Do budowy interfejsu ethernetowego wykorzystany jest układ obsługi warstwy fizycznej DP83848, który jest „napędzany” sygnałem zegarowym o częstotliwości 50MHz (pracuje w połączeniu z mikrokontrolerem ARM w oparciu o interfejs RMII). Sam układ DP83848 może pracować z podłączeniem MII lub RMII, jednak z racji, że procek umie tylko gadać po RMII, więc taki jest zastosowany sprzęg (odwieczny problem, by się dogadać to konieczne jest osiągnięcie konsensusu). Do komunikacji szeregowej wykorzystano UART0 (z czterech istniejących w mikrokontrolerze LPC2378). Cały moduł jest zasilany ze źródła napięcia o wartości 5V (moduł zawiera w sobie stabilizator LDO o napięciu wyjściowym 3,3V niezbędnym do zasilenia wszystkich komponentów modułu).
Do powyższego schematu zaprojektowana jest płyta PCB, której rysunki są następujące.Strona TOPStrona BOTTOMRozmieszczenie elementówRozmieszczenie istotnych elementów na płycie PCB jest następujące.W module są wyprowadzone punkty pomiarowe dla napięć 5V i 3,3V. Dodatkowo na potencjale GND (oznaczone jako GNDS) znajdują się punkty pomiarowe (do przyłączenia przykładowo oscyloskopu, woltomierza itp.).Z założenia, moduł przeznaczony jest jako urządzenie, do którego mogą być przyłączone inne urządzenia poprzez RS232. Z tego powodu port szeregowy jest wyprowadzony w identyczny sposób jak w komputerach PC. Implikuje to, że do połączenia z komputerem należy użyć przewodu zakończonego złączami damskimi i przewód powinien mieć skrzyżowane linie RxD i TxD.
W ramach robienia porządków na dysku i ganiania
duchów przeszłości, natrafiłem w zakamarkach pamięci
na moduł ethernetowy z prockiem LPC2378. Jest to
bardzo wiekowa konstrukcja, pochodzi z czasów,
gdzie nie znałem innych procków z obsługą sieci (dzisiaj pewnie
zrobiłbym to inaczej, niemiej jest jak jest, takie były czasy).
Nawet poniższy tekst pochodzi sprzed kilku lathttps://www.youtube.com/watch?v=HSvaocTnazY
Poniższy moduł, będący aplikacją mikrokontrolera z rodziny ARM wraz z interfejsem umożliwiającym przyłączenie do sieci ethernet, powstał jako eksperyment z zastosowaniem elementów interfejsu sieciowego (do transmisji z prędkością 100 Mb). Generalnie może służyć do „ćwiczenia” aplikacji sieciowych z ewentualną możliwością wykorzystania go później jako gotowego elementu do zabudowy (w tym celu ma wyprowadzone możliwie dużo pinów na złącza modułu).Schemat blokowy przedstawia następujący rysunek:Poszczególne elementy blokowe mają następujący schemat ideowy. Część procesorowa zawiera mikrokontroler LPC2378 wraz z niezbędnymi elementami towarzyszącymi (układ generacji sygnału reset, obwody generacji sygnału zegarowego dla procesora, interfejs do przyłączenia programatora).Do budowy interfejsu ethernetowego wykorzystany jest układ obsługi warstwy fizycznej DP83848, który jest „napędzany” sygnałem zegarowym o częstotliwości 50MHz (pracuje w połączeniu z mikrokontrolerem ARM w oparciu o interfejs RMII). Sam układ DP83848 może pracować z podłączeniem MII lub RMII, jednak z racji, że procek umie tylko gadać po RMII, więc taki jest zastosowany sprzęg (odwieczny problem, by się dogadać to konieczne jest osiągnięcie konsensusu). Do komunikacji szeregowej wykorzystano UART0 (z czterech istniejących w mikrokontrolerze LPC2378). Cały moduł jest zasilany ze źródła napięcia o wartości 5V (moduł zawiera w sobie stabilizator LDO o napięciu wyjściowym 3,3V niezbędnym do zasilenia wszystkich komponentów modułu).
Do powyższego schematu zaprojektowana jest płyta PCB, której rysunki są następujące.Strona TOPStrona BOTTOMRozmieszczenie elementówRozmieszczenie istotnych elementów na płycie PCB jest następujące.W module są wyprowadzone punkty pomiarowe dla napięć 5V i 3,3V. Dodatkowo na potencjale GND (oznaczone jako GNDS) znajdują się punkty pomiarowe (do przyłączenia przykładowo oscyloskopu, woltomierza itp.).Z założenia, moduł przeznaczony jest jako urządzenie, do którego mogą być przyłączone inne urządzenia poprzez RS232. Z tego powodu port szeregowy jest wyprowadzony w identyczny sposób jak w komputerach PC. Implikuje to, że do połączenia z komputerem należy użyć przewodu zakończonego złączami damskimi i przewód powinien mieć skrzyżowane linie RxD i TxD.