PIC32 - strony WWW w pamięci programu

Aug 23, 2017 3 Replies

Próbuję właśnie uruchomić serwer HTTP ze stosu TCP/IP od Microchipa (stara wersja z MLA, ciągle nie przerzuciłem się na Harmony). Wszystko znaje sie być właściwie skonfigurowane. Odkomentowane #define'y odpowiedzialne za kompilację serwera HTTP2 i obsługę MPFS2. Zakomentowane te, które dodają pobieranie stron z zewnętrznej pamieci EEPROM/Flash, tak więc powinien ich szukać w pamięci programu.



Za pomocą programu udostępnionego przez Microchip przekonwertowałem katalog ze stronami WWW do pliku MPFSImg2.c, który dodałem do projektu, podobnie jak HTTPPrint.h.



Całość się skompilowała i załadowała do MCU.



Serwer najwyraźniej działa, przy czym za każdym razem zwraca mi "404: File not found". Nie ma znaczenia czy wpiszę w przeglądarkę sam adres IP czy próbuję się odwoływać bezpośrednio do plików. Za każdym razem to samo. Ktoś ma pomysł co mogę robić nie tak?


Użytkownik "Atlantis" snipped-for-privacy@wp.pl napisał w wiadomości news:599dd93e$0$661$ snipped-for-privacy@news.neostrada.pl...

Ścieżka dostępu? Masz jak podpatrzeć, co serwer myśli, że się do niego odwołało? (w sensie zgadzania się ścieżek). Czy jak odwołasz się <serwer_IP>/ścieżka, to on to widzi jako <serwer_IP>/ścieżka, czy np. /<coś>/ścieżka? Dasz radę dokompilować, aby ci pokazywał, co otrzymał jako wywołanie i/lub czego nie znalazł? Podobny problem lata temu miałem, gdy stawiałem serwer FTP, przegapiłem, że ścieżkę dla usera przypiąłem mu nie tam, gdzie trzeba, do nieistniejącego katalogu. I jak zwykle, eufemistycznie mówiąc, zwróć uwagę nawet na przecinek "w komentach".

Daj sobie spokój z mpfs,Http2 można łatwo przerobić na serwer z prawdziwego zdarzenia z handlerami cgi oraz z fatfs na pendrive/sd. Pliki strony modyfikujesz sobie poprzez upload po http.

W dniu 2017-08-24 o 21:10, Marek pisze:

Generalnie na chwilę obecną MPFS2 operujący na wkompilowanym obrazie w zupełności mi wystarczy. Serwer WWW jest mi potrzebny właściwie tylko do dwóch rzeczy: obsługi prostego menu konfiguracyjnego oraz czytania paru danych za pośrednictwem json-a. Fakt, że strony nie mogą być w żaden sposób modyfikowane przez użytkownika jest tutaj tylko zaletą. A tak naprawdę wystarczy mi na nie tylko kilka - kilkanaście kB flasha.

A co do głównego problemu to okazało się, że przeoczyłem jeden drobiazg

- MPFS nie jest inicjowany przez serwer - trzeba to zrobić ręcznie w funkcji main().

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required