?? extern.h
字號:
#ifndef __GLOBAL_C__
#define USB_INTERRUPT (24)
#define USB_INT_LEVEL 16
/******* global valiable ***************************************************/
extern U8 P1_Buff[];
extern U8 P2_Buff[];
extern U8 P3_Buff[];
extern U8 P4_Buff[];
extern U8 P5_Buff[];
extern U8 P6_Buff[];
extern U8 P7_Buff[];
extern U16 DCPtbl[];
extern U16 EPtbl_Full[];
extern U16 EPtbl_Hi[];
extern U16 BchgFlg;
extern U8 ConfigNum; /* configuration Number */
#if PCUT_MODE == PCUT_USE
extern U16 PcutMode; /* PCUT Mode Flag */
#endif
extern U32 dtcnt[]; /* PIPEn Buffer counter */
extern U8 *dtptr[]; /* PIPEn Buffer pointer(8bit) */
extern U8 PipeTbl[];
extern U8 Buffer_Read_Data_Flag[];
extern U8 Buffer_Write_Data_Flag[];
extern U16 Buffer_Read_Data_Size[];
extern U16 UsbAddress;
extern U16 UsbMaxPacketSize;
extern U8 UsbDeviceDesc[];
extern U8 UsbDeviceVer[] ;
extern U8 UsbConfigDesc[];
extern U8 UsbTmp[];
#endif
/******* global function *********************************************/
extern void CPUInit(void);
extern void PeripheralInit(void);
extern void enableINT(void);
extern void delay_1ms(void);
extern void delay_10us(U16 time);
extern void User_Application(void);
extern U16 Create_Data(U16 Pipe);
extern U16 Read_Data(U16 Pipe, U16 Bsize, U8 *Table);
extern void PipeTblClear(void);
//extern void usbint(int irq, void * meaningless, struct pt_regs*nonenone);
extern void INTR_int(U16 Status, U16 Int_enbl);
extern void INTN_int(U16 Status, U16 Int_enbl);
extern void BEMP_int(U16 Status, U16 Int_enbl);
extern void usb_enumerate(void);
extern void initAssp(void);
extern void usb_attach(void);
extern void usb_detach(void);
extern U16 usb_busreset(void);
extern void usb_remotewakeup(void);
extern void usb_resume(void);
extern void usb_suspend(void);
extern U16 ChkAttach(void);
extern U16 isHiSpeed(void);
extern void resetDCP(void);
extern U16 isDisconnect(void);
extern void waitAssp(void);
extern void enableINT_Assp(void); /* Interrupt Enable */
extern void resetEP(U8 Con_Num); /* set PIPEn Configuration register */
extern void EnableIntR(U16 Pipe); /* IntR Enable */
extern void ClearIntR(U16 Pipe);
extern void DisableIntR(U16 Pipe); /* IntR Disable */
extern void EnableIntNR(U16 Pipe); /* IntNR Enable */
extern void ClearIntNR(U16 Pipe);
extern void DisableIntNR(U16 Pipe); /* IntNR Disable */
extern void SetEpPid(U16 Pipe, U16 Pid);
extern U16 dataInSize(U16 Pipe);
extern U16 getMaxPacketSize(U16 Pipe);
extern U16 dcpMaxPacketSize(void);
extern void resetAssp(void);
extern void MemClear(void); /* memory data clear */
extern U8 RprtSTS(U8 Sta1, U16 Sta2); /* report status */
extern void MemTblClear(void);
extern void CR_Start(U32 Bsize, U8 *Table); /* start Control Read */
extern void Control_Read(void); /* continue */
extern void CW_Start(U32 Bsize, U8 *Table); /* start Control Write */
extern void Control_Write(void); /* continue */
extern void DI_Start(U16 Pipe, U32 Bsize, U8 *Tbl); /* start Data IN */
extern void Data_In(U16 Pipe); /* continue */
extern void DO_Start(U16 Pipe, U32 Bsize, U8 *Tbl); /* start Data OUT */
extern void Data_Out(U16 Pipe); /* continue */
extern void DMA_Out(U16 Pipe); /* continue */
extern void DMA_In(U16 Pipe); /* continue */
extern void DMA_RW(U16 Pipe);
extern void User_Data_In(U16 Pipe, U32 Size, U8 *Tbl);
extern void User_Data_Out(U16 Pipe, U32 Size, U8 *Tbl);
#if PCUT_MODE == PCUT_USE
extern void reg_backup(void);
extern void reg_recover(void);
#endif
extern void startClock(void);
extern void restartClock(void);
extern void stopClock(void);
#if ATCKM_MODE == ATCKM_USE
extern void waitClockReady(void);
#endif
extern U16 ControlNoWrite(U16 Req, U16 Val, U16 Indx, U16 Len);
extern U16 ControlRead (U16 Req, U16 Val, U16 Indx, U16 Len, U8 *Buf);
extern U16 ControlWrite (U16 Req, U16 Val, U16 Indx, U16 Len, U8 *Buf);
extern void delay_xms(U16 num);
extern U16 SetupStage(U16 Req, U16 Val, U16 Indx, U16 Len);
extern U16 StatusStage(U16 Mode);
#ifdef UART_USE
#include "uart.h"
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -