-
Data: 2014-03-21 11:40:01
Temat: Re: minimalny terminal
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2014-03-20 12:08, g...@g...com pisze:
> Nie mam na razie ani interfejsu ETH ani know-how to jego obslugi ani
> nawet routera :)
Obsługa tak naprawdę nie jest skomplikowana, chociaż trzeba się wczytać
w kody przykładów dołączonych do biblioteki. W przypadku tuxgraphics
wygląda to następująco (w skrócie):
1) Dodajemy pliki nagłówkowe, w niektórych z nich konfigurujemy
bibliotekę do naszego konkretnego zastosowania (obsługiwane funkcje) i
procesora.
2) Na początku programu definiujemy kilka tablic (numer MAC, własny
numer IP, numery IP zdalnych hostów jeśli korzystamy z funkcjonalności
klienta) oraz stałych (numery portów z których będziemy korzystać).
Potem wywołujemy funkcje inicjujące, podając im powyższe argumenty.
3) W głównej pętli programu cyklicznie sprawdzamy czy przyszła nowa
ramka Ethernet. Jeśli się pojawiła, odczytujemy ją do przygotowanego
wcześniej bufora.
4) W przypadku odebrania pakietu, w następnej kolejności przekazujemy go
funkcji, która sprawdzi co w nim siedzi (obsługa ICMP, ARP, TCP). Jeśli
przyjdzie pakiet TCP, dostaniemy wskaźnik do początku danych, które
można parsować. W zależności od zawartości pakietu można przygotować
odpowiedź.
5) Jeśli funkcja powie nam, że nie było pakietu TCP, trzeba jeszcze
sprawdzić czy nie było pakietu UDP (ta kwestia została potraktowana
przez autora trochę po macoszemu) - dosłownie kilka dodatkowych linijek
kodu, wszystko przystępnie wyjaśnione w niebieskiej książce pana
Kardasia. ;)
W cięższych stosach (albo w sp0rzętowym stosie układów Wiznetu) pewnie
jest jeszcze łatwiej, ale tego akurat jeszcze nie przerabiałem, może za
wyjątkiem paru przykładów Arduino z Ethernet Shieldem. ;)
> Podstawowa funkcja mini-terminala to ma byc mierzenie temperatury
> wewnatrz salonu, a interfejs uzytkownika to dodatkowy bajer. Wole
> zeby to dzialalo bez zaleznosci od LANu. Jak juz postawie sieci
> dobuduje interfejs ETH, to wtedy mini-terminala nie bede potrzebowal
> bo obsluze wszystko ze smartfona/tableta.
Jeśli tak, to tak naprawdę wystarczy pociągnąć RS485. Tylko dwa
urządzenia, brak konieczności implementacji rozwiązania multimaster itp.
Tylko czy faktycznie chcesz ciągnąć dodatkowy kabel, skoro i tak ma to
być rozwiązanie tymczasowe, docelowo zastąpione przez LAN?
Bo jak sądzę nie można raczej liczyć na tak dogodny zbieg okoliczności,
żeby już teraz centralne urządzenie i mini-terminal były umieszczone w
pobliżu końcówek jednego, już istniejącego kabla ethernetowego. Wtedy
parę skrętki mógłbyś tymczasowo wykorzystać na RS-a.
> Swoja droga, systemy alarmowe jak lacza maniupulatory z centrala?
> Czegos takiego bym potrzebowal. Ciekawe czy to rs485 czy jakies
> autorskie rozwiazania.
Nie wiem jak instalacje alarmowe, jak jak na razie widziałem tylko kilka
fabrycznych urządzeń do zdalnego włączania odbiorników energii
elektrycznej albo odczytywania takich danych jak temperatura, wilgotność
czy ciśnienie. Było to zrealizowane w ten sposób, że jedno urządzenie
master udostępniało interfejs webowy po Ethernecie a ze slave'ami
łączyło się przez RS4855 lub radiowo.
W przypadku AVR-ów odpuściłbym sobie nterfejs webowy, przerzucając go na
inne urządzenie, ale to tylko moje zdanie. ;)
Najnowsze wątki z tej grupy
- ładowarka zmarła
- Podstawa bezpiecznikowa jako rozłącznik DC
- Napięcie akumulatora wyłączające UPS / jakie nowe akumulatory do UPS?
- nawigacja satelitarna
- SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- Głośnik piezoelektryczny
- Mala autonomiczna kamera monitoringu
- czas na emeryturę i EB
- Generowanie sumy kontrolnej z fragmentu pliku bin
- Re: Mala autonomiczna kamera monitoringu
- HDMI
- Re: Mala autonomiczna kamera monitoringu
- Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
- Re: Kamera monitoringu z kartą SIM
Najnowsze wątki
- 2024-07-01 W-wa naklejki wjazd do centrum
- 2024-07-01 ładowarka zmarła
- 2024-07-01 Koder szuka pracy. Koduję w j.: Asembler, C, C++ (z Qt) i D.
- 2024-07-01 Kraków => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-07-01 Białystok => Full Stack Web Developer (.Net Core, Angular6+) <=
- 2024-07-01 Berlin => Technical Rollouter (Radio Systems Software Installation and
- 2024-07-01 Warszawa => Key Account Manager <=
- 2024-07-01 Gdańsk => Programista Full Stack .Net <=
- 2024-07-01 Zabrze => Junior HelpDesk <=
- 2024-07-01 Warszawa => Key Account Manager <=
- 2024-07-01 Bielsko-Biała => Expert Migration Architect (Azure) <=
- 2024-07-01 Mini Netykieta polskich grup dyskusyjnych
- 2024-07-01 Re: Jak wypełnić polecenie francuskiego sądu blokowania niektórych zapytań DNS? Blokując Francję
- 2024-07-01 Re: Powtórne wezwanie na PO-komisję uzdrowi Ziobrę już w 10 dni
- 2024-07-01 CA -- problem z logowaniem