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

 
 
> USB Error Event, коды ошибок
toweroff
сообщение Mar 3 2014, 22:21
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Добрый день

В примерах Keil есть возможность обрабатывать ошибки USB. Из обработчика прерывания вызывается функция, в которую в качестве параметра передается код ошибки
Не то чтобы оно нужно, но заинтересовало, что же за ошибки могут быть. Но то ли в гугле забанили, то ли в usb.org, но что-то не могу найти описания этих ошибок с кодами
Или это у каждого контроллера (точнее, USB-ядра в его составе) свои коды ошибок? Вряд ли...

В общем, поделитесь, пожалуйста, информацией, если есть
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ig_z
сообщение Mar 4 2014, 00:20
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 437
Регистрация: 27-08-04
Пользователь №: 551



QUOTE (toweroff @ Mar 4 2014, 00:21) *
В общем, поделитесь, пожалуйста, информацией, если есть


Я прикрутил к кейловскому стеку (для LPC):

CODE

#if USB_ERROR_EVENT

static const char UsbErrorMsgs[8][32] =
{
"-------| PID_ERR --------------",
"------|- Unexpected Packet ----",
"-----|-- Data CRC error -------",
"----|--- TIMEOUT -------------",
"---|---- End of packet error --",
"--|----- Buffer Overrun -------",
"-|------ Bit stuff error ------",
"|------- Wrong toggle bit -----"
};

void USB_Error_Event(uint32_t error) // void USB_Error_Event (DWORD error)
{
TT_EN(Usb_ErrorEvent);
TT_ERR_MSG("error = 0x%X", error);

if (error & 0x000000FFL)
{
uint32_t i, err_msk;

for (i = 0, err_msk = 0x1; i < 8 ; i++, err_msk <<= 1)
{
if (error & err_msk)
{
TT_ERR_STR(UsbErrorMsgs[i]);
}
}
}

if (error & 0xFFFFFF00L)
{
TT_ERR_STR("USB_UNEXPECTED Error");
}

if (error == 0)
{
TT_ERR_STR("UNEXPECTED (error == 0)");
}

TT_EX();
}

#endif


Реально наблюдал только ошибки "Unexpected Packet" на LPC2368.
На LPC1766 таких ошибок не наблюдал
Go to the top of the page
 
+Quote Post
toweroff
сообщение Mar 4 2014, 14:45
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(ig_z @ Mar 4 2014, 04:20) *
Я прикрутил к кейловскому стеку (для LPC):

Реально наблюдал только ошибки "Unexpected Packet" на LPC2368.
На LPC1766 таких ошибок не наблюдал

спасибо!
стр.379 мануала LP177x... как говорится, смотрю в книгу - вижу фигу biggrin.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:13
Рейтинг@Mail.ru


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