Oleg_IT 0 8 октября, 2013 Опубликовано 8 октября, 2013 · Жалоба Продолжение работы, которая обсуждалась здесь Демо плата SK-MLPC2478, приложение EMAC. Отдельный вход Ethernet для этой платы. Формирую ARP запрос, по WireShark вижу, что сообщение в PC приходит и формируется ответ, но прерывания в ARM-е, по приходу данных, нет, прерывания возникают только по отправке данных, данные отправлены, буфер пуст. Где, что посмотреть, проверить почему нет прерываний? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 8 октября, 2013 Опубликовано 8 октября, 2013 · Жалоба мак адрес в емаке есть? задали? правильный? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_IT 0 8 октября, 2013 Опубликовано 8 октября, 2013 · Жалоба мак адрес в емаке есть? задали? правильный? А что значит правильный? Он у меня из примера остался. В приложении скриншоты с WireShark Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
сарматъ 0 8 октября, 2013 Опубликовано 8 октября, 2013 (изменено) · Жалоба а айпи адреса правильно обрабатываются?маска сети какая? Изменено 8 октября, 2013 пользователем сарматъ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_IT 0 9 октября, 2013 Опубликовано 9 октября, 2013 · Жалоба Маска 255.255.0.0. Попробывал другие варианты прерываний нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
сарматъ 0 9 октября, 2013 Опубликовано 9 октября, 2013 · Жалоба для начала можно попробывать разрешить прием всех пакетов не зависимо от мак адреса и посмотреть вообще что то приходит или нет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_IT 0 9 октября, 2013 Опубликовано 9 октября, 2013 · Жалоба для начала можно попробывать разрешить прием всех пакетов не зависимо от мак адреса и посмотреть вообще что то приходит или нет А я не запрещал. Где разрешить/запретить прописывается? Я сейчас без библиотеки работаю, всё сам делаю, и пакеты генерю и на выход их посылаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
сарматъ 0 9 октября, 2013 Опубликовано 9 октября, 2013 (изменено) · Жалоба для каждого процессора периферия настраивается по своему думаю в мануале по процессору должен быть описан порядок работы с мак-контроллером в частности правила фильтрации пакетов ну и конечно сами прерывания должны быть разрешены явно а не просто "не запрещены" еще такой момент вы подсоединяете плату чрез маршрутизатор? хорошо было бы убедиться что маршрутизатор отправляет пакеты на соотв порт Изменено 9 октября, 2013 пользователем сарматъ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_IT 0 9 октября, 2013 Опубликовано 9 октября, 2013 · Жалоба для каждого процессора периферия настраивается по своему думаю в мануале по процессору должен быть описан порядок работы с мак-контроллером в частности правила фильтрации пакетов ну и конечно сами прерывания должны быть разрешены явно а не просто "не запрещены" еще такой момент вы подсоединяете плату чрез маршрутизатор? хорошо было бы убедиться что маршрутизатор отправляет пакеты на соотв порт Нет, соединение точка-точка. Провода целые, не рваные, проверял. По первым двум советам проверю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_IT 0 9 октября, 2013 Опубликовано 9 октября, 2013 · Жалоба Проблема банальна. При формировании запроса у меня один порядок байтов в MAC адресе был, а при инициализации MAC в PHY обратный. Тогда другой вопрос. В PC одно направление байтов в SUN и в ARM другое. Как определяется из какой системы пришёл пакет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 9 октября, 2013 Опубликовано 9 октября, 2013 · Жалоба Проблема банальна. При формировании запроса у меня один порядок байтов в MAC адресе был, а при инициализации MAC в PHY обратный. Тогда другой вопрос. В PC одно направление байтов в SUN и в ARM другое. Как определяется из какой системы пришёл пакет? езернет весь BIG Endian, что РС, что Юникс, что Макинтош... а ARMы разные бывают, обычно Little Endian Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Oleg_IT 0 11 октября, 2013 Опубликовано 11 октября, 2013 · Жалоба При компиляции можно определить какая система BIG или Little Endian? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 11 октября, 2013 Опубликовано 11 октября, 2013 · Жалоба скорее всего на этапе создания проекта. У некоторых сред и армов можно выбрать в свойствах проекта. В "софтварных" плисовых процессорах можно выбрать на уровне создания проца. Только я бы не стал менять Little Endian процессор на Big, ибо для процессора удобнее и быстрее быть Little Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
сарматъ 0 11 октября, 2013 Опубликовано 11 октября, 2013 · Жалоба для процессора удобнее и быстрее быть Little а почему так? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Golikov 0 11 октября, 2013 Опубликовано 11 октября, 2013 · Жалоба потому для чего этот формат придумали к примеру logn int BigData = 128. void *p = (void *)&BigData; это все сработает правильно char ch_data = *p; short int m_data = *p; int mm_data = *p; long int l_data = *p; потому что в адресах памяти самый младший байт лежим первым, и взяв его в чаровский указатель вы получите верное 8 битное число. Запихав в 16 бит, вы опять же получите верное 16 битное число и так далее... То есть такой формат позволяет легко преобразовывать длинный тип в короткие, и обратно при некоторой сноровке short int Data = 232443; void *p = (void *)&Data; long int b_data = *p; b_data &= 0x0000FFFF; в формате Big Endian младшая часть числа всегда лежит на разном расстоянии от начала в зависимости от размерности числа, и чтобы получить правильное число из памяти надо знать и учитывать размерность числа записанного и приемника, это несколько осложняет процесс.... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться