[英]Usb mass storage file system location on QNX
我需要通知我的軟件,表明已插入USB大容量存儲棒,也需要安裝該棒的locationa。 是否有可能獲得此信息,尤其是從任何C庫中已安裝Stick的fs上的位置?
我已經知道了usbd_connect()並正在使用它。 不幸的是,沒有關於fs位置的信息。
問候喬西
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 */
}
這是一個例子。 您將必須對其進行自定義。 但是您所需的一切都在那里。
希望對您有所幫助! 伊曼紐爾
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.