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

📄 udisk_app.c

📁 smp860运动控制器USB驱动,对从事数控技术开发人员非常有用
💻 C
字号:
/****************************************************************************
*****************************************************************************/

#include "usb.h"
#include "config.h"

extern void memset(void *s, const char ch, int n) ;
extern void memcpy(void *s1, const void *s2, int n) ;
extern int strlen(const char *s) ;
extern char SerialRxKey( void ) ;

/*USB*/
EP_CONTROL          g_epctl;
DEVICE_REQUEST      g_usbrequest;

ARMUSBFLAGS         bUSBFlags;
CONTROL_XFER        ControlData;
U8                Ep1Buf[EP1_PACKET_SIZE];
U8                Ep2Buf[EP2_PACKET_SIZE];
volatile  U8   Ep1Len;
volatile  U8   Ep2Len;
volatile  U16   intcount;
volatile  U16   isr;
volatile  U8   irqcount;

U8   g_UsbConFlags[10];

int Udisk_To_PC(void)
{
	printf("Udisk connect to PC\n");

	g_NFBufAddr = 0xffffffff;       //初始化全局变量
    memset(g_NFBuf,0,16384);
    memset(CacheBuf1,0,NFPAGESIZE * 2);
    memset(CacheBuf2,0,NFPAGESIZE * 2);
	
    TsFsInit(0);     //检测文件系统,决定是否格式化磁盘
   
    if( CheckUsbLink() )
    {
        g_NFBufAddr = 0xffffffff;       //初始化全局变量
        memset(g_NFBuf,0,16384);
        memset(CacheBuf1,0,NFPAGESIZE * 2);
        memset(CacheBuf2,0,NFPAGESIZE * 2);
    
        memset(g_UsbConFlags,0,10);
        intcount =0;    
        
    	USBInit();
        printf("USB ID = 0x%4x\n",D12_ReadChipID());
    	Delay(0);
        
        printf( "Press ESC key to exit!\n" ) ;

    	while( (SerialRxKey()!=ESC_KEY) && (g_UsbConFlags[7] != 'x') ) 
    	{
            if(!(rPDATG&0x01))
    	       Usb_irq();
    	    
    		if(g_epctl.request)
                UsbOnCmd();
            if ( 0xff != g_epctl.CbwCmd )
                UsbmsService();
        }
        
        Usb_Stop();
        printf("Exit USBDISK Program!\n") ;
        return 1 ;
    }
	
	printf("Error! USB is not connected!\n") ;
	return 0 ;
}

⌨️ 快捷键说明

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