本文轉(zhuǎn)自公眾號(hào),歡迎關(guān)注
基于DWC2的USB驅(qū)動(dòng)開發(fā)-UVC的相機(jī)終端詳解 (qq.com)
一.前言
本篇來(lái)詳細(xì)分析下UVC的相機(jī)終端相關(guān)的內(nèi)容,同樣的我們理論結(jié)合實(shí)踐來(lái)進(jìn)行。
二.相機(jī)單元簡(jiǎn)介
攝像機(jī)終端(CT)控制傳輸視頻流的設(shè)備組件的機(jī)械(或等效數(shù)字)功能。因此,它僅適用于具有可控鏡頭或傳感器特性的視頻捕獲設(shè)備。相機(jī)端子始終表示為具有單個(gè)輸出引腳的輸入端子。簡(jiǎn)單理解就是相機(jī)終端是是一個(gè)輸入終端,他的前面沒有其他單元和終端了,它只有一個(gè)輸出引腳,后面一般接到處理單元。
它提供了對(duì)以下功能的支持:
- Scanning Mode (Progressive or Interlaced)掃描模式(逐行掃描或交錯(cuò)掃描)
- Auto-Exposure Mode 自動(dòng)曝光模式
- Auto-Exposure Priority自動(dòng)曝光優(yōu)先級(jí)
- Exposure Time曝光時(shí)間
- Focus對(duì)焦
- Auto-Focus自動(dòng)對(duì)焦
- Simple Focus簡(jiǎn)單對(duì)焦
- Iris光圈
- Zoom縮放
- Pan水平左右移動(dòng)鏡頭 X軸旋轉(zhuǎn) 橫搖
- Roll滾角
- Tilt垂直上下移動(dòng)鏡頭 Y軸旋轉(zhuǎn) 豎搖
- Digital Windowing數(shù)字窗口
- Region of Interest 感興趣區(qū)域
對(duì)上述功能的支持都是可選的。對(duì)焦控制等有些是支持自動(dòng)控制開關(guān)的,如果支持自動(dòng)控制的屬性其為打開狀態(tài),則設(shè)備將自動(dòng)調(diào)整,并且讀取請(qǐng)求將反映自動(dòng)調(diào)整的值。此時(shí)手動(dòng)方式設(shè)置對(duì)應(yīng)屬性將導(dǎo)致STALL,即設(shè)備要返回STALL,錯(cuò)誤代碼為bRequestErrorCode=“錯(cuò)誤狀態(tài)”。
當(dāng)退出自動(dòng)模式時(shí),相應(yīng)屬性保持在轉(zhuǎn)換前的有效值。
相機(jī)終端是特殊的輸入終端,符號(hào)和輸入終端一致,注意其左邊沒有引腳,即他就是輸入前面不再有輸入了,右邊輸出只接一個(gè)引腳。
三.拓?fù)浣Y(jié)構(gòu)
以下從描述符來(lái)看處理單元的拓?fù)浣Y(jié)構(gòu),如下圖是一個(gè)實(shí)際的UVC產(chǎn)品的描述符,只截取了和UVC相關(guān)的IAD下的描述符。
可以看到處理單元的ID是 bTerminalID=1 ,它沒有bSourceID了,他就是輸入最源頭了。其后面是bUnitID=2的處理單元,該單元的bSourceID=1表示其源頭是本相機(jī)終端。
相機(jī)終端采集到數(shù)據(jù),到后面進(jìn)行處理,所以相機(jī)終端后面接處理單元,這也是好理解的。
其拓?fù)淙缦?br />
順便提一下:
這里為什么有些叫終端Terminal ,有些叫單元Unit呢,從名字就可以看出,終端就是首末,要么就是前面沒有前導(dǎo),要么就是后面沒有后繼所以叫終端,而單元是位于中間的前后都有。
四.相機(jī)終端描述符
處理終端的描述符應(yīng)該位于UVC的控制接口描述符VideoControl Interface Descriptors的Class-specific VC Interface Header Descriptor的后面
如下所示紅色線所指示
本實(shí)例終端描述符對(duì)應(yīng)的具體內(nèi)容如下
相機(jī)單元的描述詳細(xì)內(nèi)容見規(guī)格書P66
3.7.2.3 Camera Terminal Descriptor
偏移 | 區(qū)域 | 大小 | 值 | 說(shuō)明 |
---|---|---|---|---|
0 | bLength | 1 | 數(shù)字值,18 | 本描述符的字節(jié)數(shù) |
1 | bDescriptorType | 1 | 常數(shù)CS_INTERFACE=0x24 | 描述符類型 |
2 | bDescriptorSubtype | 1 | 常數(shù)VC_INPUT_TERMINAL=0x02 | 描述符子類 |
3 | bTerminalID | 1 | 數(shù)字 | 終端ID |
4 | wTerminalType | 2 | 常數(shù)ITT_CAMERA | 終端類型 |
6 | bAssocTerminal | 1 | 常數(shù) | 與此輸入終端關(guān)聯(lián)的輸出終端ID |
7 | iTerminal | 1 | Index | 描述本終端的字符串描述索引,填0則沒有字符串描述符。 |
8 | wObjectiveFocalLengthMin | 2 | 數(shù)字 | 如果不支持光學(xué)變焦,則Lmin的值;該字段應(yīng)設(shè)置為0 |
10 | wObjectiveFocalLengthMax | 2 | 數(shù)字 | 不支持光學(xué)變焦時(shí)的Lmax值;該字段應(yīng)設(shè)置為0。 |
12 | wOcularFocalLength | 2 | 數(shù)字 | 如果不支持“光學(xué)縮放”Locular該字段應(yīng)設(shè)置為0。 |
14 | bControlSize | 1 | 數(shù)字 3 | bmControls域的字節(jié)數(shù) |
15 | bmControls | 3 | Bitmap |
l其中bDescriptorType的定義參考規(guī)格書的P171 A.5. Video Class-Specific VC Interface Descriptor Subtypes
l其中bDescriptorSubtype的定義參考規(guī)格書的P172 A.4. Video Class-Specific Descriptor Types
l其中bTerminalID
攝像頭終端由bTerminalID字段中的值唯一標(biāo)識(shí)。 非零常數(shù) ,同一功能接口內(nèi)的任何其他單元或終端都不能具有相同的ID。
這里為什么要是非零常數(shù)呢?為什么從0開始編號(hào)呢,因?yàn)樵谡?qǐng)求中wIndex的高8位為0用于區(qū)分是接口請(qǐng)求,其他非0值為對(duì)應(yīng)終端和單元ID,所以不能從0開始編號(hào)了。
在本功能對(duì)應(yīng)的接口內(nèi)該值和其他單元和終端的ID不能重復(fù)。
lwTerminalType字段用于說(shuō)明是什么類型的終端。對(duì)于攝像機(jī)終端,該字段應(yīng)設(shè)置為ITT_Camera,見規(guī)格書P177 Table B- 2 Input Terminal Types
lbAssociateTerminal字段用于將輸出端子與該輸入端子相關(guān)聯(lián),從而有效地實(shí)現(xiàn)雙向端子對(duì)。
為0則是單向端子。
l其中bmControls,表示支持的處理類型
某一位置位則對(duì)應(yīng)的處理支持,小端模式
D0: Scanning Mode
D1: Auto-Exposure Mode
D2: Auto-Exposure Priority
D3: Exposure Time (Absolute)
D4: Exposure Time (Relative)
D5: Focus (Absolute)
D6 : Focus (Relative)
D7: Iris (Absolute)
D8 : Iris (Relative)
D9: Zoom (Absolute)
D10: Zoom (Relative)
D11: PanTilt (Absolute)
D12: PanTilt (Relative)
D13: Roll (Absolute)
D14: Roll (Relative)
D15: Reserved
D16: Reserved
D17: Focus, Auto
D18: Privacy
D19: Focus, Simple
D20: Window
D21: Region of Interest
D22 – D23: Reserved, set to zero
以下是對(duì)應(yīng)一個(gè)實(shí)例,
-------- Video Control Input Terminal Descriptor ------
bLength : 0x12 (18 bytes)
bDescriptorType : 0x24 (Video Control Interface)
bDescriptorSubtype : 0x02 (Input Terminal)
bTerminalID : 0x01 (1)
wTerminalType : 0x0201 (ITT_CAMERA)
bAssocTerminal : 0x00 (Not associated with an Output Terminal)
iTerminal : 0x00 (No String Descriptor)
Camera Input Terminal Data:
wObjectiveFocalLengthMin : 0x0000
wObjectiveFocalLengthMax : 0x0000
wOcularFocalLength : 0x0000
bControlSize : 0x03 (3 bytes)
bmControls : 0xFF, 0xFF, 0x1F
D0 : 1 yes - Scanning Mode
D1 : 1 yes - Auto-Exposure Mode
D2 : 1 yes - Auto-Exposure Priority
D3 : 1 yes - Exposure Time (Absolute)
D4 : 1 yes - Exposure Time (Relative)
D5 : 1 yes - Focus (Absolute)
D6 : 1 yes - Focus (Relative)
D7 : 1 yes - Iris (Absolute)
D8 : 1 yes - Iris (Relative)
D9 : 1 yes - Zoom (Absolute)
D10 : 1 yes - Zoom (Relative)
D11 : 1 yes - Pan (Absolute)
D12 : 1 yes - Pan (Relative)
D13 : 1 yes - Roll (Absolute)
D14 : 1 yes - Roll (Relative)
D15 : 1 yes - Tilt (Absolute)
D16 : 1 yes - Tilt (Relative)
D17 : 1 yes - Focus Auto
D18 : 1 yes - Reserved
D19 : 1 yes - Reserved
D20 : 1 yes - Reserved
D21 : 0 no - Reserved
D22 : 0 no - Reserved
D23 : 0 no - Reserved
Data (HexDump) : 12 24 02 01 01 02 00 00 00 00 00 00 00 00 03 FF .$..............
FF 1F ..
五. 相機(jī)終端相關(guān)的請(qǐng)求
參考規(guī)格書P97 4.2.2.1 Camera Terminal Control Requests
相機(jī)終端控制請(qǐng)求用于讀或者設(shè)置相關(guān)屬性,所以包括SET_xx 和GET_xx。
一共支持如下20種屬性的請(qǐng)求
對(duì)應(yīng)的CS編碼見P174 A.9.4. Camera Terminal Control Selectors
以下做了一個(gè)總結(jié)
除非另有規(guī)定,否則所有值都被解釋為絕對(duì)值(固定原點(diǎn)),而不是相對(duì)值。除非另有規(guī)定,否則它們也被認(rèn)為是無(wú)符號(hào)的。
類型 | CS | 大小B | 支持的操作[]表示可選 | 最少支持操作 | 說(shuō)明 |
---|---|---|---|---|---|
掃描模式 | CT_SCANNING_MODE_CONTROL | 1 | SET_CURGET_CURGET_INFO | 0:交錯(cuò)掃描1:非交錯(cuò)模式 | |
自動(dòng)曝光模式 | CT_AE_MODE_CONTROL | 1 | SET_CURGET_CURGET_RESGET_INFOGET_DEF | GET_DEF | D0: 手動(dòng)改模式D1: 自動(dòng)模式D2: 快門優(yōu)先模式-手動(dòng)曝光時(shí)間,自動(dòng)光圈D3: 光圈優(yōu)先模式-自動(dòng)曝光時(shí)間,手動(dòng)光圈D4..D7: 保留設(shè)置為0.使能自動(dòng)模式時(shí)再配置相關(guān)屬性將導(dǎo)致STALL和bRequestErrorCode=“錯(cuò)誤狀態(tài)”的錯(cuò)誤代碼。向該控件發(fā)出的GET_RES請(qǐng)求將返回該控件支持的模式的bitmap。對(duì)該控件的有效請(qǐng)求將僅設(shè)置一個(gè)位(選擇單個(gè)模式)。 |
自動(dòng)曝光優(yōu)先級(jí)控制 | CT_AE_PRIORITY_CONTROL | 1 | SET_CURGET_CURGET_INFO | 0表示幀率固定,默認(rèn)值1表示幀率可動(dòng)態(tài)變化用于快門優(yōu)先模式和自動(dòng)模式時(shí)約束曝光時(shí)間控制。 | |
曝光絕對(duì)時(shí)間控制 | CT_EXPOSURE_TIME_ABSOLUTE_CONTROL | 4 | GET_CUR GET_MIN GET_MAXGET_RESGET_INFOGET_DEF[SET_CUR] | GET_DEF | 指定曝光時(shí)間,單位為100μs,值設(shè)置為0未定義。手動(dòng)曝光控制受到幀間隔的進(jìn)一步限制,幀間隔總是具有更高的優(yōu)先級(jí),如果幀間隔更改為低于“曝光控制”當(dāng)前值的值,“曝光控制值”將自動(dòng)更改,默認(rèn)的“曝光控制”值將是當(dāng)前幀間隔,直到選擇了明確的曝光值為止。當(dāng)處于自動(dòng)模式或光圈優(yōu)先模式時(shí),設(shè)置該值導(dǎo)致STALL和bRequestErrorCode=“錯(cuò)誤狀態(tài)”的錯(cuò)誤代碼。 |
曝光相對(duì)時(shí)間控制 | CT_EXPOSURE_TIME_RELATIVE_CONTROL | 1 | SET_CURGET_CURGET_INFO | 有符號(hào)數(shù)帶包步進(jìn)數(shù)0表示設(shè)置曝光時(shí)間為默認(rèn)值,當(dāng)處于自動(dòng)模式或光圈優(yōu)先模式時(shí),設(shè)置該值導(dǎo)致STALL和bRequestErrorCode=“錯(cuò)誤狀態(tài)”的錯(cuò)誤代碼。如果同時(shí)支持相對(duì)控制和絕對(duì)控制,則具有0x00以外值的相對(duì)控制的SET_CUR應(yīng)導(dǎo)致絕對(duì)控制的控制更改中斷 | |
對(duì)焦絕對(duì)值控制 | CT_FOCUS_ABSOLUTE_CONTROL | 2 | GET_CUR GET_MIN GET_MAXGET_RESGET_INFOGET_DEF[SET_CUR] | GET_DEF | 單位毫米,啟用自動(dòng)對(duì)焦模式時(shí),設(shè)置此值將導(dǎo)致STALL和bRequestErrorCode=“錯(cuò)誤狀態(tài)”的錯(cuò)誤代碼。 |
對(duì)焦相對(duì)值控制 | CT_FOCUS_RELATIVE_CONTROL | 2 | SET_CURGET_CURGET_INFOGET_DEFGET_MINGET_MAXGET_RES | GET_DEF | 第一個(gè)字節(jié)bFocusRelative1表示聚焦透鏡組向近方向移動(dòng)為0表示聚焦透鏡組停止0xFF表示透鏡組向無(wú)窮遠(yuǎn)方向移動(dòng)。GET_MIN、GET_MAX、GET_RES和GET_DEF請(qǐng)求時(shí)此字段段返回零。第二個(gè)字節(jié)bSpeed表示移動(dòng)速度,不支持則設(shè)置為1,如果同時(shí)支持相對(duì)控制和絕對(duì)控制,則具有0x00以外值的相對(duì)控制的SET_CUR將導(dǎo)致絕對(duì)控制在移動(dòng)結(jié)束時(shí)的控制更改中斷啟用自動(dòng)對(duì)焦時(shí),設(shè)置此值導(dǎo)致STALL和bRequestErrorCode=“錯(cuò)誤狀態(tài)”的錯(cuò)誤代碼。 |
對(duì)焦簡(jiǎn)單范圍 | CT_FOCUS_SIMPLE_CONTROL | 1 | SET_CURGET_CURGET_INFO GET_DEF | GET_DEF | 只能在相機(jī)處于手動(dòng)或自動(dòng)對(duì)焦模式時(shí)使用。啟用自動(dòng)對(duì)焦時(shí),設(shè)置此值導(dǎo)致STALL和bRequestErrorCode=“錯(cuò)誤狀態(tài)”的錯(cuò)誤代碼。0x00 – full range0x01 – macro. Less than 0.3meters.0x02 – people. 0.3m to 3m0x03 – scene. 3m to infinity0x04 to 0xFF - reserved |
自動(dòng)對(duì)焦控制 | CT_FOCUS_AUTO_CONTROL | 1 | SET_CUR GET_CUR GET_INFGET_DEF | GET_DEF | 1使能自動(dòng)對(duì)焦 |
光圈絕對(duì)控制 | PU_SHARPNESS_CONTROL | 2 | GET_CURGET_MIN GET_MAXGET_RES GET_INFOGET_DEF[SET_CUR] | GET_DEF | 單位為fstop * 100 當(dāng)“自動(dòng)曝光模式”控件處于“自動(dòng)”模式或“快門優(yōu)先級(jí)”模式時(shí),不接受SET請(qǐng)求,設(shè)備返回STALL。 |
光圈相對(duì)控制 | CT_IRIS_RELATIVE_CONTROL | 1 | SET_CUR GET_CURGET_INFO | 有符號(hào)數(shù)當(dāng)“自動(dòng)曝光模式”控件處于“自動(dòng)”模式或“快門優(yōu)先級(jí)”模式時(shí),不接受SET請(qǐng)求,設(shè)備返回STALL。0: Default1: Iris is opened by 1 step.0xFF: Iris is closed by 1 step | |
縮放絕對(duì)控制 | CT_ZOOM_ABSOLUTE_CONTROL | 2 | GET_CURGET_MIN GET_MAXGET_RESGET_INFOGET_DEF[SET_CUR] | GET_DEF | RES必須為1Zcur的值用于指定或確定物鏡焦距。與相機(jī)終端描述符中的wObjectiveFocalLengthMin和wObjectiveForcalLengthMax字段結(jié)合使用,以描述和控制設(shè)備的物鏡焦距。 |
縮放相對(duì)控制 | CT_ZOOM_RELATIVE_CONTROL | 3 | SET_CUR GET_CUR GET_INFOGET_DEFGET_MINGET_MAXGET_RES | 第一個(gè)字節(jié)bZoom字段1表示變焦鏡頭向遠(yuǎn)攝方向移動(dòng)。0表示變焦鏡頭停止,0xFF表示變焦鏡頭向廣角方向移動(dòng)。GET_MIN、GET_MAX、GET_RES和GET_DEF請(qǐng)求將為此字段返回零第二個(gè)字節(jié)bDigitalZoom指定是啟用還是禁用數(shù)字縮放。如果設(shè)備僅支持?jǐn)?shù)字變焦,則此字段將被忽略。GET_DEF請(qǐng)求將返回此字段的默認(rèn)值。GET_MIN、GET_MAX和GET_RES請(qǐng)求將為此字段返回零。第三個(gè)字節(jié)bSpeedGET_MIN、GET_MAX和GET_RES請(qǐng)求用于檢索此字段的范圍和分辨率。GET_DEF請(qǐng)求用于檢索此字段的默認(rèn)值。如果控件不支持速度控制,它將針對(duì)所有這些請(qǐng)求在該字段中返回值1如果同時(shí)支持相對(duì)控制和絕對(duì)控制,則具有0x00以外值的相對(duì)控制的SET_CUR應(yīng)在移動(dòng)結(jié)束時(shí)導(dǎo)致絕對(duì)控制的控制更改中斷,如果移動(dòng)結(jié)束是由于物理設(shè)備限制(如移動(dòng)范圍限制),則應(yīng)為該相對(duì)控制生成控制更改中斷。 | |
全景傾斜(絕對(duì))控制 | CT_PANTILT_ABSOLUTE_CONTROL | 8 | GET_CUR GET_MIN GET_MAXGET_RES GET_INFOGET_DEF[SET_CUR] | GET_DEF | 低4字節(jié),有符號(hào) 32位小端Pan絕對(duì)值高4字節(jié),有符號(hào) 32位小端Tilt絕對(duì)值單位arc 弧秒范圍–1803600 arc second ~+1803600 arc second 默認(rèn)值為0 |
全景傾斜(相對(duì))控制 | CT_PANTILT_RELATIVE_CONTROL | 4 | SET_CURGET_CURGET_INFOGET_DEF GET_MINGET_MAXGET_RES | GET_DEF | 第一個(gè)字節(jié)bPanRelative有符號(hào) Pan控制0: Stop1: moving to clockwise direction0xFF: moving to counter clockwise Direction第二個(gè)字節(jié) bPanSpeed Pan移動(dòng)速度第三個(gè)字節(jié)bTiltRelative 有符號(hào)0: Stop1: point the imaging plane up0xFF: point the imaging plane down第四個(gè)字節(jié) bTiltSpeed Tilt速度 |
滾轉(zhuǎn)(絕對(duì))控制 | CT_ROLL_ABSOLUTE_CONTROL | 2 | GET_CURGET_MIN GET_MAX GET_RESGET_INFOGET_DEF[SET_CUR] | 有符號(hào)16位小端范圍–180~+180 | |
滾轉(zhuǎn)(相對(duì))控制 | CT_ROLL_RELATIVE_CONTROL | 2 | SET_CURGET_CURGET_MINGET_MAX GET_RESGET_INFOGET_DEF | 第一個(gè)字節(jié)0: Stop1: moving clockwise rotation0xFF: moving counter clockwise rotation第二個(gè)字節(jié)速度 | |
隱私控制 | CT_PRIVACY_CONTROL | 1 | GET_CUR GET_INFO[SET_CUR] | 隱私控制設(shè)置用于防止攝像機(jī)傳感器獲取視頻。值0表示攝像機(jī)傳感器能夠捕獲視頻圖像,值1表示攝像機(jī)傳感器被阻止捕獲視頻圖像。該控件應(yīng)報(bào)告為自動(dòng)更新控件。0: Open1: Close | |
數(shù)字窗口控制 | CT_DIGITAL_WINDOW_CONTROL | 12 | SET_CURGET_CURGET_MIN GET_MAXGET_DEF | 坐標(biāo)從0開始wWindow_Top:2 字節(jié) 上坐標(biāo)wWindow_Left:2字節(jié) 左坐標(biāo)wWindow_Bottom:2 字節(jié) 下坐標(biāo)wWindow_Right:2 字節(jié) 右坐標(biāo)wNumSteps:2字節(jié) 從本窗口移動(dòng)到指定矩形的步數(shù)bmNumStepsUnits:2字節(jié) 上述步數(shù)的單位D0: video framesD1: millisecondsD2-D15: Reserved | |
數(shù)字感興趣區(qū)域(ROI)控制 | CT_REGION_OF_INTEREST_CONTROL | 10 | SET_CUR GET_CURGET_MIN, GET_MAXGET_DEF | ROI必須在CT_Window控件指定的當(dāng)前數(shù)字窗口內(nèi)。wROI_Top 2字節(jié) 上坐標(biāo)wROI_Left 2字節(jié) 左坐標(biāo)wROI_Bottom2字節(jié) 下坐標(biāo)wROI_Right2字節(jié) 右坐標(biāo)bmAutoControls2字節(jié)D0: Auto ExposureD1: Auto IrisD2: Auto White BalanceD3: Auto FocusD4: Auto Face DetectD5: Auto Detect and TrackD6: Image StabilizationD7: Higher QualityD8 – D15: Reserved, set to zero |
六. 相機(jī)終端請(qǐng)求驅(qū)動(dòng)代碼
和其他終端和單元請(qǐng)求處理一樣
參考https://mp.weixin.qq.com/s/4CTR1yjUmBsHqZPLEC7BhA
七. 總結(jié)
以上詳細(xì)介紹了相機(jī)終端,包括描述符和其拓?fù)浣Y(jié)構(gòu),請(qǐng)求等。
審核編輯:湯梓紅
-
usb
+關(guān)注
關(guān)注
60文章
8066瀏覽量
269660 -
相機(jī)
+關(guān)注
關(guān)注
4文章
1417瀏覽量
54394 -
USB驅(qū)動(dòng)
+關(guān)注
關(guān)注
1文章
138瀏覽量
20562 -
驅(qū)動(dòng)開發(fā)
+關(guān)注
關(guān)注
0文章
133瀏覽量
12221 -
uvc
+關(guān)注
關(guān)注
1文章
128瀏覽量
14785 -
DWC2
+關(guān)注
關(guān)注
0文章
35瀏覽量
210
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
基于DWC2的USB驅(qū)動(dòng)開發(fā)-0x01開篇介紹與新思DWC2 USB2.0控制器簡(jiǎn)介

基于DWC2的USB驅(qū)動(dòng)開發(fā)-0x02 DWC2 USB2.0 IP功能特征介紹

基于DWC2的USB驅(qū)動(dòng)開發(fā)-IAD描述符詳解

基于DWC2的USB驅(qū)動(dòng)開發(fā)-USB復(fù)位詳解

基于DWC2的USB驅(qū)動(dòng)開發(fā)-USB連接詳解

基于DWC2的USB驅(qū)動(dòng)開發(fā)-高速設(shè)備枚舉為全速設(shè)備問題案例分析

基于DWC2的USB驅(qū)動(dòng)開發(fā)-UVC的處理單元詳解

基于DWC2的USB驅(qū)動(dòng)開發(fā)-UVC的單元和終端類請(qǐng)求驅(qū)動(dòng)代碼優(yōu)化

基于DWC2的USB驅(qū)動(dòng)開發(fā)-設(shè)備類驅(qū)動(dòng)框架

基于DWC2的USB驅(qū)動(dòng)開發(fā)-發(fā)送相關(guān)的寄存器DMA寄存器詳解

基于DWC2的USB驅(qū)動(dòng)開發(fā)-USB包詳解

基于DWC2的USB驅(qū)動(dòng)開發(fā)-數(shù)據(jù)不能發(fā)送問題分析案例

新思 DWC2 的參考手冊(cè)從哪里可以下載
如何對(duì)基于hal庫(kù)的DWC2 USB IP進(jìn)行調(diào)試呢
基于DWC2的USB驅(qū)動(dòng)開發(fā)-抽絲剝繭再論切換到狀態(tài)階段標(biāo)志DOEPINTn.StsPhseRcvd

評(píng)論