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

📄 usb.h

📁 Avr Atmeg128汽车行驶记录仪 带有USB驱动 c语言
💻 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 + -