реклама на сайте
подробности

 
 
> SK-STM32F217 и LwIp стек
Acvarif
сообщение Jan 4 2012, 19:06
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Пытаюсь запустить на SK-STM32F217 (http://starterkit.ru/html/index.php?name=shop&op=view&id=62) демо приложение (udp_echo_server) для STM3220G-EVAL http://www.st.com/internet/evalboard/product/250374.jsp. Демка компилится в Keil без проблем и загружается в SK-STM32F217. Но совсем не работает.

Очевидно и не будет работать поскольку в платах стоят разные PHY (в SK-STM32F217 - ks8721bl) (в STM3220G-EVAL - DP83848C). Соединение по ногам идентичное. Регистры у них почти одинаковые. Очевидно все дело в том, что "почти".
Пробовал ли кто настроить демку (Ethernet) от STM3220G-EVAL под PHY типа ks8721bl?

Если у кого есть опыт в Ethernet stm32 подсобите пожалуйста примером UDP сервера (клиента) для stm32F2xx + PHY типа ks8721bl
В комплекте с SK-STM32F217 идет демка TCP/IP сервера на uIP стеке. Как заставить демку работать в режиме UDP сервера пока не допираю.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
IgorKossak
сообщение Jan 6 2012, 18:30
Сообщение #2


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Acvarif, научитесь, наконец, оформлять код.
Игнорирование моих комментариев Вам не поможет. Ещё одна моя правка Вашего сообщения и Вам обеспечена неделя read-only.
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Jan 6 2012, 20:30
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Цитата(IgorKossak @ Jan 6 2012, 21:30) *
Acvarif, научитесь, наконец, оформлять код.
Игнорирование моих комментариев Вам не поможет. Ещё одна моя правка Вашего сообщения и Вам обеспечена неделя read-only.


Да, помню. Читать мануалы?
Не то, чтобы сильно лень, всегда на это не хватает времени. Да и не всегда там есть, что нужно.
По поводу кода все понял.
Ниже инициализация GPIO для Ethernet sk-stm32f217 под новую библиотеку.
CODE
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA | RCC_AHB1Periph_GPIOB |
RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOG, ENABLE);

/* ETHERNET pins configuration */
/*
| | TYPE | num | GPIO port |
1. TD0 | out | 128 | PG13 |
2. TD1 | out | 129 | PG14 |
3. TEN | out | 70 | PB11 |
4. MC_REFC | out | 100 | PA8 |
5. CRS | in | 43 | PA7 |
6. RD0 | in | 44 | PC4 |
7. RD1 | in | 45 | PC5 |
8. MDC | out | 27 | PC1 |
9. MDIO |in/out| 36 | PA2 |
10.REFC | in | 35 | PA1 |
*/


// GPIO_Init(GPIOG,GPIO_Pin_13 + GPIO_AF + GPIO_Speed_100MHz + GPIO_PP + GPIO_AF11); /*1. PG13 -> TD0 */
// GPIO_Init(GPIOG,GPIO_Pin_14 + GPIO_AF + GPIO_Speed_100MHz + GPIO_PP + GPIO_AF11); /*2. PG14 -> TD1 */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13 | GPIO_Pin_14;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOG, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOG, GPIO_PinSource13, GPIO_AF_ETH);
GPIO_PinAFConfig(GPIOG, GPIO_PinSource14, GPIO_AF_ETH);

// GPIO_Init(GPIOB,GPIO_Pin_11 + GPIO_AF + GPIO_Speed_50MHz + GPIO_PP + GPIO_AF11); /*3. PB11 -> TEN */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOB, GPIO_PinSource11, GPIO_AF_ETH);

// GPIO_Init(GPIOA,GPIO_Pin_8 + GPIO_AF + GPIO_Speed_100MHz + GPIO_AF0 + GPIO_PP); /*4. PA8 -> MCO1 50MHz output */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource8, GPIO_AF_MCO);

// GPIO_Init(GPIOA,GPIO_Pin_7 + GPIO_AF + GPIO_Speed_100MHz + GPIO_AF11); /*5. PA7 -> CRS */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource7, GPIO_AF_ETH);

// GPIO_Init(GPIOC,GPIO_Pin_4 + GPIO_AF + GPIO_Speed_100MHz + GPIO_AF11); /*6. PC4 -> RD0 */
// GPIO_Init(GPIOC,GPIO_Pin_5 + GPIO_AF + GPIO_Speed_100MHz + GPIO_AF11); /*7. PC5 -> RD1 */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOC, GPIO_PinSource8, GPIO_AF_ETH);
GPIO_PinAFConfig(GPIOC, GPIO_PinSource8, GPIO_AF_ETH);

// GPIO_Init(GPIOC,GPIO_Pin_1 + GPIO_AF + GPIO_Speed_50MHz + GPIO_PP + GPIO_AF11); /*8. PC1 -> MDC */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
GPIO_Init(GPIOC, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOC, GPIO_PinSource11, GPIO_AF_ETH);

// GPIO_Init(GPIOA,GPIO_Pin_2 + GPIO_AF + GPIO_Speed_50MHz + GPIO_OD + GPIO_AF11); /*9. PA2 -> MDIO */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_OType = GPIO_OType_OD;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource11, GPIO_AF_ETH);

// GPIO_Init(GPIOA,GPIO_Pin_1 + GPIO_AF + GPIO_Speed_50MHz + GPIO_AF11); /*10.PA1 -> REFC */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_PinAFConfig(GPIOA, GPIO_PinSource11, GPIO_AF_ETH);

А здесь конфигурация RCC и SYSCFG для Ethernet stm32 платки Startekit
CODE
// Enable SYSCFG clock

// RCC->APB2ENR |= (1 << 14);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SYSCFG, ENABLE);

#ifdef RMII_MODE
// SYSCFG->PMC |= (1<<23);
SYSCFG_ETH_MediaInterfaceConfig(SYSCFG_ETH_MediaInterface_RMII);
#else
// SYSCFG->PMC &= (~(1 << 23));
SYSCFG_ETH_MediaInterfaceConfig(SYSCFG_ETH_MediaInterface_MII);
#endif

// SYSCFG->CMPCR |= (1 << 0);
SYSCFG_CompensationCellCmd(ENABLE);
/*
RCC AHB1 peripheral clock register (RCC_AHB1ENR)
Bit 25 ETHMACEN: Ethernet MAC clock enable
Bit 26 ETHMACTXEN: Ethernet Transmission clock enable
Bit 27 ETHMACRXEN: Ethernet Reception clock enable
*/
// RCC->AHB2ENR |= (1 << 5);
RCC_AHB2PeriphClockCmd(RCC_AHB2Periph_HASH, ENABLE);
// RCC->AHB1ENR |= (1 << 25) + (1 << 26) + (1 << 27) + (1 << 12);
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_ETH_MAC | RCC_AHB1Periph_ETH_MAC_Tx |
RCC_AHB1Periph_ETH_MAC_Rx | RCC_AHB1Periph_CRC, ENABLE);

Надеюсь теперь MAC запустится

Сообщение отредактировал Acvarif - Jan 7 2012, 20:02
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Acvarif   SK-STM32F217 и LwIp стек   Jan 4 2012, 19:06
- - Rst7   Для начала посмотрите в драйвере PHY функцию поиск...   Jan 4 2012, 22:15
|- - Acvarif   Цитата(Rst7 @ Jan 5 2012, 02:15) Для нача...   Jan 5 2012, 07:23
- - Rst7   Ищите дальше. Посмотрите, что он при инициализации...   Jan 5 2012, 10:06
|- - Acvarif   Цитата(Rst7 @ Jan 5 2012, 14:06) Ищите да...   Jan 5 2012, 11:14
|- - Acvarif   Кое что раскопал. Вот правильная инициализация (на...   Jan 5 2012, 13:12
- - Rst7   QUOTE EthInitStatus = ETH_Init(&ETH_InitStruct...   Jan 5 2012, 13:24
|- - Acvarif   Цитата(Rst7 @ Jan 5 2012, 17:24) Ну а дал...   Jan 5 2012, 13:40
- - Rst7   QUOTE Хотя просто вызов ETH_GetSoftwareResetStatus...   Jan 5 2012, 13:50
|- - Acvarif   Цитата(Rst7 @ Jan 5 2012, 17:50) Не ту фу...   Jan 5 2012, 14:08
- - Rst7   QUOTE И что тут происходит. Нет нормального сброса...   Jan 5 2012, 14:46
|- - Acvarif   Цитата(Rst7 @ Jan 5 2012, 18:46) Похоже, ...   Jan 5 2012, 15:12
- - Rst7   QUOTE Я так понимаю из -за этого PHY работать не б...   Jan 5 2012, 15:16
|- - Acvarif   Цитата(Rst7 @ Jan 5 2012, 19:16) Ну пока ...   Jan 6 2012, 13:48
- - Acvarif   Цитата(Acvarif @ Jan 7 2012, 00:30) Надею...   Jan 9 2012, 06:35


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 17th June 2025 - 00:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016