2015-03-20 3 views
1

Мне нужно, чтобы мое программное обеспечение не было уведомлено о том, что USB-накопитель для хранения данных был вставлен, также мне нужна локация, в которой установлена ​​эта палочка. Возможно ли получить эту информацию, особенно местоположение на fs, где палка была смонтирована из любой библиотеки C?Место хранения файловой системы массового хранения Usb на QNX

Для instertion я уже знаю usbd_connect(), и я использую его. К сожалению, нет никакой информации относительно местоположения на fs.

рассматривает Йосип

ответ

3

IO-USB должен быть запущен на вашей цели.

Добавить библиотеки "usbdi" в свой проект.

Затем используйте следующий код snipet:

#include <sys/usbdi.h> 

static struct usbd_connection *conn_usb = NULL; 
static void cbinsert(struct usbd_connection *connection, usbd_device_instance_t *ins); 
static void cbremove(struct usbd_connection *connection, usbd_device_instance_t *ins); 

     int init(void) 
     { 
      usbd_funcs_t funcs = { _USBDI_NFUNCS, cbinsert, cbremove, NULL }; 
      usbd_connect_parm_t parm = {NULL, USB_VERSION, USBD_VERSION, 0, 0, NULL, 0, NULL, &funcs,0}; 

      if (usbd_connect(&parm, &conn_usb) != EOK) { 
       /* write your own error handler */ 
      } 

И затем, добавить свой индивидуальный обработчик:

static void cbinsert(struct usbd_connection *usb_connection,usbd_device_instance_t *usb_instance) 
{ 
    if (usb_instance->ident.dclass == 8 && usb_instance->ident.subclass == 6) { 
     /* USB mass storage */ 
    } else if (usb_instance->ident.dclass == 3 && usb_instance->ident.subclass == 1) { 
     /* USB mouse */ 
    } else { 
     /* unknown device */ 
    } 

Это является примером. Вам придется настроить его. Но все, что вам нужно, есть.

Надеюсь, что эта помощь! Emmanuel

1

Попробуйте использовать MCD (детектор содержимого мультимедиа) в QNX. Обратитесь к ссылкам ниже -

http://www.qnx.com/developers/docs/6.4.1/neutrino/utilities/m/mcd.html http://www.qnx.com/developers/docs/660/index.jsp?topic=%2Fcom.qnx.doc.dev_pub.ref_guide%2Ftopic%2Fdrivers.html

+0

Если вы знаете, как это сделать с помощью этого инструмента, а затем дать решение. Не используйте ответы, чтобы задавать вопросы. – Psytho

+0

@ Alex.S Изменен ответ. Наверное, этого достаточно. Я не думаю, что здесь нужно кормить ложкой. Автор может изучить это и решить его сам. – Shaibal

Смежные вопросы