查看: 3377|回復: 0
打印 上一主題 下一主題

基于STM32Cube USB設備庫應用的幾個(gè)常見(jiàn)問(wèn)題

[復制鏈接]
跳轉到指定樓層
樓主
發(fā)表于 2016-11-10 14:39:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
關(guān)鍵詞: 融創(chuàng )芯城
1、如何動(dòng)態(tài)地修改設備描述符或字符串描述符?
在文件usbd_desc.c里,與設備和字符串相關(guān)的描述符可以通過(guò)GetDescriptor的回調函數進(jìn)行動(dòng)態(tài)調整。
2、如何讓大容量存儲類(lèi)驅動(dòng)支持多個(gè)邏輯盤(pán)【LUN】?
在文件usbd_msc_storage_xxx.c中修改STORAGE_LUN_NBR!緓xx代表使用的存儲介質(zhì)】
STORAGE_Inquirydata數組里包含了每個(gè)LUN的標準查詢(xún)數據【inquiry data】。
比如用到2個(gè)LUN。
constint8_t STORAGE_Inquirydata[] = {
/*LUN 0 */
0x00,
0x80,
0x02,
0x02,
(USBD_STD_INQUIRY_LENGTH- 5),
0x00,
0x00,
0x00,
'S','T', 'M', ' ', ' ', ' ', ' ', ' ', /* Manufacturer:
8bytes */
'm','i', 'c', 'r', 'o', 'S', 'D', ' ', /* Product:
16Bytes */
'F','l', 'a', 's', 'h', ' ', ' ', ' ',
'1','.', '0' ,'0', /* Version: 4 Bytes */
/*LUN 1 */
0x00,
0x80,
0x02,
0x02,
(USBD_STD_INQUIRY_LENGTH- 5),
0x00,
0x00,
0x00,
'S','T', 'M', ' ', ' ', ' ', ' ', ' ', /* Manufacturer:8 bytes */
'N','a', 'n', 'd', ' ', ' ', ' ', ' ', /* Product:16 Bytes */
'F','l', 'a', 's', 'h', ' ', ' ', ' ',
'1','.', '0' ,'0', /* Version: 4 Bytes */
};

3、端點(diǎn)的地址在哪里定義?
端點(diǎn)地址一般在各個(gè)類(lèi)驅動(dòng)的頭文件里定義。
比如MSC類(lèi)的端點(diǎn)定義就在 usbd_msc.h定義如下:
#define MSC_EPIN_ADDR 0x81    //For Endpoint 1 IN
#defineMSC_EPOUT_ADDR 0x01 // For Endpoint 1 OUT
4、USB設備庫是否可以任意運行在FULL SPEED或HIGH SPEED模式?
是的,該庫支持USB OTG FS和USBOTG HS模式。其中,USB OTG FS內核僅支持FS模式,USB OTG HS內核既支持FS模式也支持HS模式。
用戶(hù)通過(guò)如下宏選擇合適的USB核:
"USE_USB_HS"http:// USB High Speed (HS) Core
"USE_USB_FS"http:// USB Full Speed (FS) Core
"USE_USB_HS"and "USE_USB_HS_IN_FS" // USBHigh Speed (HS) Core in FS mode
5、如何在USB設備類(lèi)驅動(dòng)里面修改或增加端點(diǎn)?
a.使用USBD_LL_OpenEP()進(jìn)行端點(diǎn)的初始化。
b.在usb_conf.c里為新定義的端點(diǎn)配置發(fā)送或接收FIFO。
STM32F2、STM32F4等支持OTG功能的MCU為例。
用到HAL_PCD_SetRxFiFo()和HAL_PCD_SetTxFiFo()配置TX/RX的FIFO。
注意配置TX和RX FIFO的大小時(shí)不得超過(guò)對應的USB核所擁有的全部FIFO.
USBOTG FS core的FIFO 為320 x 32 bits(1.25 Kbytes)
USBOTG HS core的FIFO 為1024 x 32bits (4 Kbytes)
對于僅支持FS核的STM32F0,STM32L0, STM32F1 and STM32F3系列,
使用HAL_PCD_PMA_Config() 進(jìn)行PMA的配置。
6. USB設備庫與實(shí)時(shí)操作系統兼容嗎?
是的,該USB 設備庫可以配合RTOS使用。其中CMSIS RTOS的封裝器實(shí)現對OS內核的抽象。
關(guān)于STM32CUBE USB設備庫應用介紹的更多細節,請查看ST官方提供的使用手冊UM1734。
**************融創(chuàng )芯城*************

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页