|
Web server for ARM |
|
|
|
Dec 11 2008, 19:57
|
Местный
  
Группа: Участник
Сообщений: 236
Регистрация: 1-04-06
Пользователь №: 15 688

|
Цитата(Странник @ Dec 11 2008, 19:49)  Занимаюсь сейчас схожей задачей, вот что нарыл http://en.wikipedia.org/wiki/Tiny_web_serversДо связи... чего-то там все в одну кучу понамешано, но всё рано - любопытно, спасибо за ссылку
|
|
|
|
|
Dec 12 2008, 11:16
|
Местный
  
Группа: Участник
Сообщений: 236
Регистрация: 1-04-06
Пользователь №: 15 688

|
Цитата(etoja @ Dec 10 2008, 19:19)  Без чтения RFC и тщательного изучения исходников не обойтись. Сетевое взаимодействие с кавалерийского наскока не берётся. Ну и какие RFC прикажете читать ? Easy Web -> EMAC.c -> void Init_EMAC(void) Код /* Configure Full/Half Duplex mode. */ // if (regv & 0x0004) { regv = read_PHY (0x1f); //^^^^^^^^^^^^^^^^^^^^^^^^^ pcf8531_printf(0,3,"Reg x%x ",regv); regv=(regv>>2)&7; if ((regv==5)||(regv==6)) { /* Full duplex is enabled. */ MAC_MAC2 |= MAC2_FULL_DUP; MAC_COMMAND |= CR_FULL_DUP; MAC_IPGT = IPGT_FULL_DUP; // pcf8531_printf(0,3,"F "); } else { /* Half duplex mode. */ MAC_IPGT = IPGT_HALF_DUP; // pcf8531_printf(0,3,"H "); } Вот это regv в случае втыкания напрямую в сетевуху компьютера = 0x1598, а в случае хаба - 0x1588 причем на хабе при этом загорается лампочка 100 Мbit
|
|
|
|
|
Dec 16 2008, 11:58
|
Частый гость
 
Группа: Свой
Сообщений: 115
Регистрация: 23-01-07
Пользователь №: 24 688

|
Цитата Вот это regv в случае втыкания напрямую в сетевуху компьютера = 0x1598, а в случае хаба - 0x1588 а доку на PHY посмотреть? кабель поди один и тот же. для прямого соединения нужен кросс, а в хаб - прямой. сработало автоопределение, вот он и сообщает, что прямым кабелем воткнули не в хаб, а другую PHY.
|
|
|
|
|
Dec 24 2008, 07:46
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
WEB сервер по сути должен просто парсить CGI запросы и перекачивать файлы и больше ничего. С тех пор как появилась AJAX технология, отпадает даже необходимость с сриптах на стороне сервера. Такой WEB сервер пишется с нуля за день если однопоточный. Это буквально несколько сот строк кода. Главное надежный вандалоустойчивый TCP/IP стек и быстрая файловая система. Это есть у Micrium-а Основная работа заключается в разработке на JavaScript-е собственно страниц основаных на AJAX вызовах. Но это тема совсем не этого форума. Цитата(Странник @ Dec 15 2008, 18:27)  Есть такая вот задачка: На арм платформе нужно поднять WEB сервер, который бы генерил страницу с информацией о состоянии датчиков. Чтоб была возможность вводить конфигурационные параметры.(что то похожее на роутеры с ихним веб интерфейсом) В наличии: собственно ARM-400MHz; 256Mb RAM; 128Mb ROM Подскажите какие для этого обычно средства используют? (linux-apache-php-lsql?)
До связи...
|
|
|
|
|
Dec 26 2008, 10:51
|
Участник

Группа: Новичок
Сообщений: 29
Регистрация: 3-11-04
Пользователь №: 1 027

|
Отличный вариант LWIP + FatFs.
|
|
|
|
|
Dec 26 2008, 11:38
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Вариант реальный, но я бы назвал его крайним. Т.е. ну когда уже ничего лучше не достали. Сейчас самый писк это RLARM340 от Keil-а. Без преувеличения движок RTOS там реактивный. Для Cortex очень неплохо используют особенности ядра. Есть профайлер задач, т.е. можно видеть в работе состояния задач, стек и т.д. Это покруче чем Probe в uCOS-е В последней версии WEB сервера они реализовали технологию AJAX, причем настоящего AJAX именно на XML, а не скажем AJAH основанного на HTML-е. Цитата(KonstantinT @ Dec 26 2008, 15:21)  Отличный вариант LWIP + FatFs.
|
|
|
|
|
Dec 26 2008, 13:32
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(AlexandrY @ Dec 26 2008, 18:38)  В последней версии WEB сервера они реализовали технологию AJAX, причем настоящего AJAX именно на XML, а не скажем AJAH основанного на HTML-е.  А зачем оно надо...настоящщщее-то? Я вот использую AJAX (не знаю, настоящий или нет  ) в двух реализациях WEB-сервера , одна на AVR (ATmega128) вторая на ARM (AT91SAM7X256). В обоих случаях самописный TCPIP + FatFS(ChaN). AJAX нужна для уменьшения объема данных, гоняемых между клиентами и сервером, а что там, XML или еще чего, маленькому серверу должно быть по барабану, большой клиент пусть все разжевывает.
--------------------
|
|
|
|
|
Dec 26 2008, 13:53
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
XML и прочие навороты действительно не нужны если вы все делаете сам и для себя либо для узкого круга применений. Если же планировать что ваш движок AJAX будет доступен как сервис, скажем для развиваемых Google интернет приложений, то стоило бы подумать. Опять же сами WEB сайты дивайсов не в notepade разрабатываются. Наверно какие-то либы применяются. Большинство будет расчитано на XML. Уменьшение объема данных с AJAX я бы не акцентировал. Чаще наоборот бывает. Поскольку страницы с AJAX стараются делать динамическими, т.е. постоянно обновляемыми, то AJAX приводит к тому, что непрерывно перекачиваются данные. В итоге перекачаных данных гораздо больше чем со статическими страницами. Кардинальным способом сжатия пожалуй будет gzip или deflate, но тут уж никто из дешевых WEB серверов не поможет ;( Цитата(prottoss @ Dec 26 2008, 18:02)   А зачем оно надо...настоящщщее-то? Я вот использую AJAX (не знаю, настоящий или нет  ) в двух реализациях WEB-сервера , одна на AVR (ATmega128) вторая на ARM (AT91SAM7X256). В обоих случаях самописный TCPIP + FatFS(ChaN). AJAX нужна для уменьшения объема данных, гоняемых между клиентами и сервером, а что там, XML или еще чего, маленькому серверу должно быть по барабану, большой клиент пусть все разжевывает.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|