Перейти к содержанию
    

LUFA HID Keyboard LPC4337

Здравсвуйте!

 

Возникла задача сделать печаталку, т.е. микроконтроллер прикидывается клавиатурой и периодически посылает коды нажатия клавиш.

С LUFA имел уже дело, так что для хида решил ее же и использовать. Взял пример для Keyboard (пробовал оба: из Class и LowLevel), но результат один и тот же:

Срабатывание ровно 1 раз.

bool CALLBACK_HID_Device_CreateHIDReport(USB_ClassInfo_HID_Device_t* const HIDInterfaceInfo,
                                         uint8_t* const ReportID,
                                         const uint8_t ReportType,
                                         void* ReportData,
                                         uint16_t* const ReportSize)
{
   USB_KeyboardReport_Data_t* KeyboardReport = (USB_KeyboardReport_Data_t*)ReportData;

   uint8_t JoyStatus_LCL    = Joystick_GetStatus();
   uint8_t ButtonStatus_LCL = Buttons_GetStatus();

   uint8_t UsedKeyCodes = 0;

   if(ButtonStatus_LCL)
      KeyboardReport->KeyCode[UsedKeyCodes++] = HID_KEYBOARD_SC_D;

   KeyboardReport->Modifier = HID_KEYBOARD_MODIFIER_LEFTGUI;

   *ReportSize = sizeof(USB_KeyboardReport_Data_t);
   return false;
}

Проверил выводом устройство запускается, проходят контрол запросы, конфигурирование, дальше срабатывает этот колбэк и после все, никаких контрол запросов не происходит.

 

P.S. Пример от NXP который использует встроенный USB стек (USB ROM) в микроконтроллере успешно работает.

P.P.S ОС: Windows 8/1-64, среда разработки: LPCXpresso 7.6.2

 

В чем может быть причина?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...