⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dscr.a51

📁 软件中包含了Cypress的SL811 USB接口芯片的固件程序以及如何51单片机进行操作的例子
💻 A51
字号:
;;-----------------------------------------------------------------------------
;;	File:		dscr.a51
;;	Contents:	This file contains descriptor data tables.  
;;
;;	Copyright (c) 1997 AnchorChips, Inc. All rights reserved
;;	Copyright (c) 2002 Cypress Semiconductor, Inc. All rights reserved
;;
;; $Archive:$
;; $Date:$
;; $Revision:$
;;-----------------------------------------------------------------------------

DSCR_DEVICE	equ	1	;; Descriptor type: Device
DSCR_CONFIG	equ	2	;; Descriptor type: Configuration
DSCR_STRING	equ	3	;; Descriptor type: String
DSCR_INTRFC	equ	4	;; Descriptor type: Interface
DSCR_ENDPNT	equ	5	;; Descriptor type: Endpoint

ET_CONTROL	equ	0	;; Endpoint type: Control
ET_ISO		equ	1	;; Endpoint type: Isochronous
ET_BULK		equ	2	;; Endpoint type: Bulk
ET_INT		equ	3	;; Endpoint type: Interrupt

public		DeviceDscr, ConfigDscr, StringDscr, UserDscr

DSCR	SEGMENT	CODE

;;-----------------------------------------------------------------------------
;; Global Variables
;;-----------------------------------------------------------------------------
		rseg DSCR		;; locate the descriptor table in on-part memory.

DeviceDscr:	
		db	deviceDscrEnd-DeviceDscr		;; Descriptor length
		db	DSCR_DEVICE	;; Decriptor type
		dw	0001H		;; Specification Version (BCD)
		db	00H  		;; Device class
		db	00H		;; Device sub-class
		db	00H		;; Device sub-sub-class
		db	64		;; Maximum packet size
		dw	4705H		;; Vendor ID
		dw	0210H		;; Product ID (Sample Device)
		dw	0100H		;; Product version ID
		db	1		;; Manufacturer string index
		db	2		;; Product string index
		db	0		;; Serial number string index
		db	1		;; Number of configurations
deviceDscrEnd:

ConfigDscr:	
		db	ConfigDscrEnd-ConfigDscr		;; Descriptor length
		db	DSCR_CONFIG	;; Descriptor type
		db	(StringDscr-ConfigDscr) mod 256 ;; Config + End Points length (LSB)
		db	(StringDscr-ConfigDscr) / 256   ;; Config + End Points length (MSB)
		db	1		;; Number of interfaces
		db	1		;; Interface number
		db	0		;; Configuration string
		db	10100000b	;; Attributes (b7 - buspwr, b6 - selfpwr, b5 - rwu)
		db	0		;; Power requirement (div 2 ma)
ConfigDscrEnd:

IntrfcDscr:
		db	IntrfcDscrEnd-IntrfcDscr		;; Descriptor length
		db	DSCR_INTRFC	;; Descriptor type
		db	0		;; Zero-based index of this interface
		db	0		;; Alternate setting
		db	5		;; Number of end points 
		db	0ffH		;; Interface class
		db	00H		;; Interface sub class
		db	00H		;; Interface sub sub class
		db	0		;; Interface descriptor string index
IntrfcDscrEnd:
		
;; OUT ENDPOINT #1
EpOutDscr:	
		db	EpOutDscrEnd-EpOutDscr		;; Descriptor length
		db	DSCR_ENDPNT	;; Descriptor type
		db	01H		;; Endpoint number, and direction
		db	ET_BULK		;; Endpoint type
		db	8		;; Maximun packet size (LSB)
		db	00H		;; Max packect size (MSB)
		db	00H		;; Polling interval
EpOutDscrEnd:

;; IN ENDPOINT #1
EpIn1Dscr:
		db	EpIn1DscrEnd-EpIn1Dscr		;; Descriptor length
		db	DSCR_ENDPNT	;; Descriptor type
		db	81H		;; Endpoint number, and direction
		db	ET_BULK		;; Endpoint type
		db	64		;; Maximun packet size (LSB)
		db	00H		;; Max packect size (MSB)
		db	00H		;; Polling interval
EpIn1DscrEnd:

;; IN ENDPOINT #2
EpIn2Dscr:
		db	EpIn2DscrEnd-EpIn2Dscr		;; Descriptor length
		db	DSCR_ENDPNT	;; Descriptor type
		db	82H		;; Endpoint number, and direction
		db	ET_BULK		;; Endpoint type
		db	1		;; Maximun packet size (LSB)
		db	00H		;; Max packect size (MSB)
		db	0AH		;; Polling interval
EpIn2DscrEnd:

;; IN ENDPOINT #3
EpIn3Dscr:
		db	EpIn3DscrEnd-EpIn3Dscr		;; Descriptor length
		db	DSCR_ENDPNT	;; Descriptor type
		db	83H		;; Endpoint number, and direction
		db	ET_BULK		;; Endpoint type
		db	64		;; Maximun packet size (LSB)
		db	00H		;; Max packect size (MSB)
		db	00H		;; Polling interval
EpIn3DscrEnd:

;; OUT ENDPOINT #4
EpOut3Dscr:
		db	EpOut3DscrEnd-EpOut3Dscr	;; Descriptor length
		db	DSCR_ENDPNT	;; Descriptor type
		db	03H		;; Endpoint number, and direction
		db	ET_BULK		;; Endpoint type
		db	64		;; Maximun packet size (LSB)
		db	00H		;; Max packect size (MSB)
		db	00H		;; Polling interval
EpOut3DscrEnd:

StringDscr:
StringDscr0:	
		db	StringDscr0End-StringDscr0		;; String descriptor length
		db	DSCR_STRING
		db	09H,04H
StringDscr0End:

StringDscr1:	
		db	StringDscr1End-StringDscr1		;; String descriptor length
		db	DSCR_STRING
		db	'C',00
		db	'y',00
		db	'p',00
		db	'r',00
		db	'e',00
		db	's',00
		db	's',00
		db	' ',00
		db	'S',00
		db	'e',00
		db	'm',00
		db	'i',00
		db	'c',00
		db	'o',00
		db	'n',00
		db	'd',00
		db	'u',00
		db	'c',00
		db	't',00
		db	'o',00
		db	'r',00
StringDscr1End:

StringDscr2:	
		db	StringDscr2End-StringDscr2		;; Descriptor length
		db	DSCR_STRING
		db	'C',00
		db	'y',00
		db	'p',00
		db	'r',00
		db	'e',00
		db	's',00
		db	's',00
		db	' ',00
		db	'E',00
		db	'm',00
		db	'b',00
		db	'_',00
		db	'h',00
		db	'o',00
		db	's',00
		db	't',00
		db	' ',00
		db	'4',00
		db	'.',00
		db	'2',00
StringDscr2End:

UserDscr:		
		dw	0000H
		end
		

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -