📄 usb.h
字号:
#ifndef USB_H
#define USB_H
#include "common.h"
//**************************************
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#endif
//**************************************
/* ********************************************************************************************************************* */
/* 硬件特性 */
#define CH375_MAX_DATA_LEN 0x40 /* 最大数据包的长度, 内部缓冲区的长度 */
/* ********************************************************************************************************************* */
/* 命令代码 */
//#define USBDATA
#define RESET_ALL 0X05
#define CHECK_EXIST 0X06
#define GET_IC_VER 0x01
#define SET_USB_MODE 0x15
#define CMD_RET_SUCCESS 0X51
#define USB_INT_SUCCESS 0X14
#define USB_INT_CONNECT 0X15
#define USB_INT_DISCONNECT 0X16
#define USB_INT_BUF_OVER 0X17
#define USB_INT_DISK_READ 0X1D
#define USB_INT_DISK_WRITE 0X1E
#define USB_INT_DISK_ERR 0X1F
#define CMD_DISK_RD_GO 0x55 /* 主机方式: 继续执行USB存储器的读操作 */
#define CMD_DISK_WR_GO 0x57 /* 主机方式: 继续执行USB存储器的写操作 */
#define CMD_GET_STATUS 0x22 /* 获取中断状态并取消中断请求 */
#define CMD_RD_USB_DATA 0x28 /* 从当前USB中断的端点缓冲区读取数据块, 并释放缓冲区 */
#define CMD_WR_USB_DATA7 0x2B /* 向USB端点2的发送缓冲区写入数据块 */
#define CMD_DISK_INIT 0x51 /* 主机方式: 初始化USB存储器 */
#define CMD_DISK_READ 0x54 /* 主机方式: 从USB存储器读数据块(以扇区512字节为单位) */
#define USBCommandWrite (*(volatile uint8_t *) 0x7001)
#define USBDataRead (*(volatile uint8_t *) 0x7000)
//**********************
#define CH375_CMD_PORT (*(volatile uint8_t *) 0x7001)
#define CH375_DAT_PORT (*(volatile uint8_t *) 0x7000)
unsigned char DATA_BUFFER[1024]; /* 外部RAM数据缓冲区的起始地址,长度不少于一次读写的数据长度 */
//**********************
//*****************
unsigned char volatile UdiskStatus; /* 当前U盘状态,定义如下 */
#define STATUS_DISCONNECT 0 /* U盘尚未连接或者已经断开 */
#define STATUS_CONNECT 1 /* U盘刚刚连接 */
#define STATUS_ERROR 2 /* U盘操作错误或者不支持 */
#define STATUS_WAIT 3 /* U盘正在操作 */
#define STATUS_READY 4 /* U盘准备好接受操作 */
//**********************************
unsigned char *mBufferPoint;
//unsigned long iLbaStart=0;
//uchar iSectorCount=3;
//***********************************
void Usb_Initzx(void);
void RestUSBzx(uchar i);
uchar CheckUSBzx(uchar i);
uchar Getczx(void);
uchar Get_IC_VERzx(uchar i);
uchar CH375Initzx(uchar i);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -