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

 
 
> Проблемы с модулем MAC LPC2368
Romanello
сообщение Nov 27 2007, 13:45
Сообщение #1


Частый гость
**

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



Беру Keilовский пример делаю инициализацию MAC, когда доходит до MAC_MAC1 = MAC1_RES_TX | MAC1_RES_MCS_TX | MAC1_RES_RX | MAC1_RES_MCS_RX |
MAC1_SIM_RES | MAC1_SOFT_RES;


то уходит на DAbt_Handler, кто может подсказать почему так происходит и что делать?


void Init_EMAC(void)
{
// Keil: function modified to access the EMAC
// Initializes the EMAC ethernet controller
unsigned int regv,tout,id1,id2;

/* Enable P1 Ethernet Pins. */
PINSEL2 = 0x55555555;
PINSEL3 = (PINSEL3 & ~0x0000000F) | 0x00000005;

/* Power Up the EMAC controller. */
PCONP |= 0x40000000;

/* Reset all EMAC internal modules. */
MAC_MAC1 = MAC1_RES_TX | MAC1_RES_MCS_TX | MAC1_RES_RX | MAC1_RES_MCS_RX |
MAC1_SIM_RES | MAC1_SOFT_RES;
MAC_COMMAND = CR_REG_RES | CR_TX_RES | CR_RX_RES;
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
Andy Mozzhevilov
сообщение Nov 28 2007, 05:47
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206



data abort - следствие обращения к несуществующему адресу.
Пройдите в отладчике непосредственно до иструкции, которая приводит к исключению.
Посмотрите, к какому адресу происходит обращение. Разберитесь, почему он неправильный.


--------------------
Пасу котов...
Go to the top of the page
 
+Quote Post
Romanello
сообщение Nov 28 2007, 07:12
Сообщение #3


Частый гость
**

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



Любое обращение к регистрам Ethernet контроллера, чтение или запись вызывает это прерывание.
Go to the top of the page
 
+Quote Post
abcdefg
сообщение Nov 28 2007, 09:44
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 201
Регистрация: 23-01-06
Из: Msk
Пользователь №: 13 490



Цитата(Romanello @ Nov 28 2007, 10:12) *
Любое обращение к регистрам Ethernet контроллера, чтение или запись вызывает это прерывание.


смотрите тогда как эти регистры определены в .h файле
Go to the top of the page
 
+Quote Post
Romanello
сообщение Nov 28 2007, 09:49
Сообщение #5


Частый гость
**

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



Да определены они по документации правильно, более того я беру Keilовский пример работы с Ethernet, и происходит такая хня. Неужели никто не пробовал работать с Ethernetом на Keil.
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Nov 28 2007, 11:45
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(Romanello @ Nov 28 2007, 12:49) *
Да определены они по документации правильно, более того я беру Keilовский пример работы с Ethernet, и происходит такая хня. Неужели никто не пробовал работать с Ethernetом на Keil.


Я подключал PHY по RMII. Били 2 проблемы:

Первая вот здесь:

PINSEL2 = 0x50151105; /* selects P1[0,1,4,8,9,10,14,15] */

Позже вышла эррата версии 1,2 и там для разных ревизий в этот регистр нужно писать разные значения.
Причем если перепутать - процессор вылетал в DataAbort или в Prefeth(давно было, точно не помню, в эррате все написано).

Вторая более уникальная.
При выполнении программы из флэшь наблюдался улет в функции инициализации MAC:
EMAC_TxDisable();
EMAC_RxDisable();``//* вот после этого вылетал в неопределенное состояние
Причем при выполнении кода из RAM все было нормально.
Решилась проблема не совсем удачно. Просто закоментировал и все заработало. Потом стоит функция разрешения работы и подпрограмма используется всего один раз при инициализации микроконтроллера, поэтому данная строка не влияет на дальнейшую работу.

Контроллер LPC2468, rev A, код пробовал компилировать в обоих режимах. Компилятор IAR.
Может это вам чем-нибудь поможет.


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th July 2025 - 09:11
Рейтинг@Mail.ru


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