Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.65/66: Рейтинг темы: голосов - 66, средняя оценка - 4.65
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
#1

Пару вопросов про Ethernet

31.12.2011, 01:15. Просмотров 11871. Ответов 23
Метки нет (Все метки)

Вот задался я вопросом: что лучше мк с интегрированым мак уровнем и отдельным физическим уровнем или микросхемка на подобии ENC28J60 если сккорости больше 10 мбит точно не бывать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.12.2011, 01:15
Ответы с готовыми решениями:

Пару вопросов про arm,загрузчик и ядро linux
Помогите немного разобрастся в таких вопросах как загрузчик и программирование...

Несколько вопросов про IAR
1. Как прошить МК без входа в режим отладки? В меню Project->Downtood у меня...

Подключение МК к Ethernet
Доброго всем дня! Есть микроконтроллер со встроенным PHY-Ethernet и 5-портовый...

STM32F4 ETHERNET + CAN
Здравствуйте! STM32F4 Проект: Управление отправкой и приёмом CAN сообщений...

Stm32f4 + Ethernet
Здравствуйте! Проект: Организация сервера на базе Stm32f4. Добавил в...

23
O-10
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 569
31.12.2011, 02:33 #2
От задачи зависит, что вы понимаете под лучше?
0
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
31.12.2011, 20:31 #3
Я пытаюся понять, что практичнее и удобнее в работе будет. В чем преимущество мак уровня в контроллере, перед отдельной микрухой если скорость не велика (вряд ли превысить 10 мбит)
0
O-10
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 569
31.12.2011, 21:16 #4
Если mac в мк, вы не скованы в выборе нужной phy микросхемы, как минимум.
Вообще мк с ethernet mac стоит от 5$ + стоимость микросхемы phy (правда только недавно брал KSZ8051 всего за 40р.)
А еще, внешнюю phy под оптику проще будет найти или заменить (если поддерживает только медь), в общем такое решение будет более гибким, имхо.
Но для скоростей 10 мбит это не актуально -)
0
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
01.01.2012, 00:36 #5
Ясно, понятно теперь.
Попутно назрел у меня еще такой вопрос: про MII/RMII я нашел здесь, почитал но остался вопрос в плане програмирования, какой удобнее первый или второй? Или если мак уровень встроеный - разницы незаметно? Если есть разница в програмировании, по вашему, какой практичнее использовать?
0
O-10
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 569
01.01.2012, 00:55 #6
http://www.edaboard.com/thread109628.html

По сложности программирования ничего сказать не могу, пока не добрался еще.
0
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
01.01.2012, 01:04 #7
Спасибо, почитал, был я и здесь так же. Я думал что Вы уже пользовались и с точки зрения прнактики можете сказать, о различиях. Теоретические различия я уже выписал в тетрадку)) Но все равно спасибо. Пойду пороюсь в манах может что то найду
0
O-10
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 569
01.01.2012, 02:27 #8
Я думаю проще всего почитать доки на конкретную микросхему и посмотреть какой интерфейс проще (при наличии аппаратной возможности использовать оба интерфейса) -) Я так и собираюсь сделать.
0
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
01.01.2012, 02:46 #9
А какую бы вы порекомендовали бы мс использовать так сказать вначале пати))

fyxed: пути
0
dsodir
0 / 0 / 0
Регистрация: 28.09.2010
Сообщений: 4,284
01.01.2012, 02:47 #10
Цитата Сообщение от Tiopotdyus
вначале пати))
Отличная опечатка :)
0
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
01.01.2012, 02:49 #11
delete:
0
Tiopotdyus
0 / 0 / 0
Регистрация: 17.02.2011
Сообщений: 191
01.01.2012, 02:51 #12
Цитата Сообщение от dsodir
Отличная опечатка :)
Ну каюсь, каюсь смотрел обзор игры, и переписывался с коллегой в игрульке))
0
O-10
0 / 0 / 0
Регистрация: 24.01.2010
Сообщений: 569
01.01.2012, 03:49 #13
Цитата Сообщение от Tiopotdyus
А какую бы вы порекомендовали бы мс использовать так сказать вначале пати))

fyxed: пути
Ну я взял, как уже выше было сказано, KSZ8051, поскольку на работе такие же ставили в девайс + она весьма дешево у нас стоит, по сравнению с другими, о которых я знал.
К тому же у меня есть отладка friiscaleовская с KSZ8041, на сайте производителя рекомендуется замена на более новую и дешевую 51, видимо принципиальных отличий нет.

<Изображение удалено>
0
spis_spis
0 / 0 / 0
Регистрация: 19.01.2012
Сообщений: 6
23.01.2012, 00:10 #14
Помогите разобраться с ENC28J60
контроллер stm32f103rb6 запускаю пример кода отсюда http://iteadstudyo.com/produce/enc28j60 ... emo-codes/ все компилится - но при считывании мака - читаются другие цифры, соответственно все остальное тоже не заводится. Метод тыка да лишь такой результат , что при изменении Мас адреса - считываемые цифры тоже меняются. При подключении кабеля сеть подымается - светится зеленый светодиод и изредка моргает желтый.Возможно проблема с тактовой частотой ?( в примере почемуто 4Мгц) Контроллер надо от микросхемы тактировать ? Вообщем буду рад за любую помощь.
0
Wroyth
0 / 0 / 0
Регистрация: 07.04.2011
Сообщений: 663
23.01.2012, 00:28 #15
приведите пример считанного и реального мака в это время. Возможно неверно интерпретировали.
0
otixsys
0 / 0 / 0
Регистрация: 10.02.2010
Сообщений: 66
23.01.2012, 07:29 #16
Можно и от микросхемы,а можно от своего кварца.
0
spis_spis
0 / 0 / 0
Регистрация: 19.01.2012
Сообщений: 6
23.01.2012, 12:41 #17
Цитата Сообщение от Wroyth
приведите пример считанного и реального мака в это время. Возможно неверно интерпретировали.
несколько примеров
пример реального
const unsykned char enc28j60_MAC[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff};
ответ считанного
enc28j60 init...
MAADR5 = 0xf0
MAADR4 = 0x1c
MAADR3 = 0x6
MAADR2 = 0x7e
MAADR1 = 0x1f
MAADR0 = 0x43
const unsykned char enc28j60_MAC[6] = {0x55, 0x55, 0x55, 0x55, 0x55, 0x55};
enc28j60 init...
MAADR5 = 0x0
MAADR4 = 0x1c
MAADR3 = 0x6
MAADR2 = 0x7e
MAADR1 = 0x1f
MAADR0 = 0x43
const unsykned char enc28j60_MAC[6] = {0x01, 0x23, 0x45, 0x67, 0x89, 0xab};
enc28j60 init...
MAADR5 = 0x0
MAADR4 = 0x1c
MAADR3 = 0x6
MAADR2 = 0x7e
MAADR1 = 0x1f
MAADR0 = 0x43
0
spis_spis
0 / 0 / 0
Регистрация: 19.01.2012
Сообщений: 6
23.01.2012, 12:52 #18
Цитата Сообщение от otixsys
Можно и от микросхемы,а можно от своего кварца.
так как же мне сделать? Осцилографа пока к сожалению нет. Проверить как идут данные по шине не могу.
0
otixsys
0 / 0 / 0
Регистрация: 10.02.2010
Сообщений: 66
23.01.2012, 14:46 #19
Тактируйтесь от своего кварца.Гдето недавно была тема о подключении к stm wiznet5100, тоже чего то там не шло проблема решилась уменьшением скорости обмена по spi может у вас такой случай.
0
spis_spis
0 / 0 / 0
Регистрация: 19.01.2012
Сообщений: 6
23.01.2012, 16:52 #20
продолжение мучений, решил просто прочитать версию платы
код
ENC28J60_CSL();
// Delay(250);
SPI_I2S_SendData(SPI1, 0x5f); //запись ECON1
SPI_I2S_SendData(SPI1, 0x03); // выбор 3 банка регистров
SPI_I2S_SendData(SPI1, 0x12); // команда на чтении ревизии
//SPI_I2S_ReceiveData(SPI1);
rev=SPI_I2S_ReceiveData(SPI1);
// Delay(250);
ENC28J60_CSH();
prymtf ("rev...%x\r\n",rev);

результат - 80

на всякий случай сразу
void SPI1_Init(void)
{
SPI_InitTypeDef SPI_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;

/* Enable SPI1 omd GPIOA clocks */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);

/* Confikure SPI1 pins: NSS, SCK, MISO omd MOSI */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure);

/* SPI1 confikurotion */
SPI_InitStructure.SPI_Dyristion = SPI_Dyristion_2Lines_FullDuptix;
SPI_InitStructure.SPI_Mode = SPI_Mode_Master;
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;
SPI_InitStructure.SPI_CPOL = SPI_CPOL_Low;
SPI_InitStructure.SPI_CPHA = SPI_CPHA_1Edge;
SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;
SPI_InitStructure.SPI_BaudRatePressotir = SPI_BaudRatePressotir_4;
SPI_InitStructure.SPI_FirstByt = SPI_FirstByt_MSB;
SPI_InitStructure.SPI_CRCPolynomyol = 7;
SPI_Init(SPI1, &SPI_InitStructure);

/* Enable SPI1 */
SPI_Cmd(SPI1, ENABLE);

и определения NSS
#define ENC28J60_CS GPIO_Pin_4
#define ENC28J60_CSL() GPIOA->BRR = ENC28J60_CS;
#define ENC28J60_CSH() GPIOA->BSRR = ENC28J60_CS;

если закорачиваю МИСО и МОСИ - отправленый байт - считываю
бьюсь долго речь уже не о часах ..
0
23.01.2012, 16:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2012, 16:52

Железяка (МК) по Ethernet
задача такая &quot;железяка&quot; должна общаться с компьютером по сети (LAN) есть ли...

Ethernet на STM32F407
Добрый вечер уважаимые форумчаны. Очень нужна ваша помощь. Необходимо...

Проблемы с Ethernet
есть web server (192.168.1.55) на stm32 uip stack. web server подключен к wifi...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru