57 lines
1.8 KiB
C
57 lines
1.8 KiB
C
/*----------------------------------------------------------------------------
|
|
* U S B - K e r n e l
|
|
*----------------------------------------------------------------------------
|
|
* Name: usbcore.h
|
|
* Purpose: USB Core Definitions
|
|
* Version: V1.20
|
|
*----------------------------------------------------------------------------
|
|
* This software is supplied "AS IS" without any warranties, express,
|
|
* implied or statutory, including but not limited to the implied
|
|
* warranties of fitness for purpose, satisfactory quality and
|
|
* noninfringement. Keil extends you a royalty-free right to reproduce
|
|
* and distribute executable files created using this software for use
|
|
* on NXP Semiconductors LPC microcontroller devices only. Nothing else
|
|
* gives you the right to use this software.
|
|
*
|
|
* Copyright (c) 2009 Keil - An ARM Company. All rights reserved.
|
|
*---------------------------------------------------------------------------*/
|
|
|
|
#ifndef __USBCORE_H__
|
|
#define __USBCORE_H__
|
|
|
|
|
|
/* USB Endpoint Data Structure */
|
|
typedef struct _USB_EP_DATA
|
|
{
|
|
uint8_t *pData;
|
|
uint16_t Count;
|
|
} USB_EP_DATA;
|
|
|
|
/* USB Core Global Variables */
|
|
extern uint16_t USB_DeviceStatus;
|
|
extern uint8_t USB_DeviceAddress;
|
|
extern uint8_t USB_Configuration;
|
|
extern uint32_t USB_EndPointMask;
|
|
extern uint32_t USB_EndPointHalt;
|
|
extern uint32_t USB_EndPointStall;
|
|
extern uint8_t USB_AltSetting[USB_IF_NUM];
|
|
|
|
/* USB Endpoint 0 Buffer */
|
|
extern uint8_t EP0Buf[USB_MAX_PACKET0];
|
|
|
|
/* USB Endpoint 0 Data Info */
|
|
extern USB_EP_DATA EP0Data;
|
|
|
|
/* USB Setup Packet */
|
|
extern USB_SETUP_PACKET SetupPacket;
|
|
|
|
/* USB Core Functions */
|
|
extern void USB_ResetCore (void);
|
|
|
|
/* Newer C compilers make it really difficult to add
|
|
* an integer to a pointer */
|
|
__inline void UsbAddPtr (void **vpptr, uint32_t n);
|
|
|
|
|
|
#endif /* __USBCORE_H__ */
|