📄 main.c
字号:
//#include "host_811.h"
#include "SL811.h"
#include "44blib.h"
#include "44b.h"
#include "stdio.h"
XXGFLAGS bXXGFlags;
extern BYTE DBUF[BUFFER_LENGTH];
int Main()
{
BYTE i,j,version,temp;
WORD temp12;
sys_init();
Uart_Printf("USB Disk Code For ARM \n");
RESET(0);//sl811 reset
DelayMs(5);
RESET(1);
DelayMs(5);
SL811_Init();
DelayMs(10);
version = SL811_GetRev();
Uart_Printf("SL811 version is %x!\n",version);
Uart_Printf("SL811 RAM TEST...");
for(i = 0x10; i < 0x20; i++)
{
SL811Write(i,i);
version = SL811Read(i);
// Uart_Printf("version is %x!\n",version);
if(version != i)
{
Uart_Printf(" Error!\n");
while(1);
}
}
Uart_Printf(" SUCCESSFULLY!\n");
for(temp=0;temp<64;temp++)
DBUF[temp]=0;
while(1)
{
check_usb_device();
DelayMs(50);
if(bXXGFlags.bits.SLAVE_FOUND){
Uart_Printf("Found USB SLAVE\n");
bXXGFlags.bits.SLAVE_FOUND=FALSE;
DelayMs(100);
speed_detect();
DelayMs(100);
//DelayMs(50);
if(EnumUsbDev(1)) // enumerate USB device, assign USB address = #1
{
bXXGFlags.bits.SLAVE_ENUMERATED = TRUE; // Set slave USB device enumerated flag
Uart_Printf(" Successfully!\n");
Uart_SendByte('\n');
}
}
else
Uart_Printf("Found NO USB\n");
if(bXXGFlags.bits.SLAVE_REMOVED){
Uart_Printf("USB SLAVE REMOVED\n");
bXXGFlags.bits.SLAVE_REMOVED=FALSE;
// MCU_LED0=1;
// MCU_LED1=1;
bXXGFlags.bits.SLAVE_ENUMERATED = FALSE;
bXXGFlags.bits.SLAVE_IS_ATTACHED = FALSE;
//bXXGFlags.bits.bMassDevice=TRUE;
//ENABLE_INTERRUPTS;
}
if(bXXGFlags.bits.bMassDevice){
// DISABLE_INTERRUPTS;
bXXGFlags.bits.bMassDevice=FALSE;
if(EnumMassDev())
{
bXXGFlags.bits.SLAVE_IS_ATTACHED = TRUE;
Uart_Printf("Enumerate MASS Device Successfully!\n");
Uart_SendByte('\n');
bXXGFlags.bits.bUartInDone = TRUE;
}
else
{
Uart_Printf("Enumerate MASS Device Unsuccessfully!\n");
Uart_SendByte('\n');
bXXGFlags.bits.SLAVE_IS_ATTACHED = FALSE;
}
// ENABLE_INTERRUPTS;
}
if(bXXGFlags.bits.bUartInDone){
// DISABLE_INTERRUPTS;
bXXGFlags.bits.bUartInDone=0;
UartHandler();
// ENABLE_INTERRUPTS;
}
}
// version=SL811Read(0x0e);
// Uart_Printf("version is %x!\n",version);
// U_Disk_Test();
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -