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

📄 usb51s.txt

📁 MCU 通过i2c 总线读写eeprom, i2c 读写程序是软件仿真方式来实现
💻 TXT
字号:
usb51s.lib V0.4		2002-07-09
    1)端点1的读写由4byte改为16byte。
    2)使得固件速度更快了。在87C52x2(6clock),24MHz中传输速度可以达到160K Byte/S左右。
    3)增加了D12_COMMAND和D12_DATA,用于设置D12的命令和数据地址。这样D12的控制地址由原来的0xff03和0xff02变为可以用户设定。当用户同时使用了D12和外部RAM时,D12的片选信号可以由高8位来决定,但在高8位的地址不能与外部RAM有重复。D12_COMMAND和D12_DATA必须在开中断前赋值。
    使用V0.4的库的时候请使用keil C V6.14以上版本的编译器和连接器。
    4)增加D12接收缓冲区监视位。
    	bEPPflags.bits.ep1buf_full:端点1输出缓冲区全满标志
    	bEPPflags.bits.ep2buf_full:端点2输出缓冲区全满标志
    	当缓冲区全满标志为1时,表示D12对应的接收缓冲区已经接收满了,用户程序可以再调用readendpoint的命令把数据读取。
定义说明:
USB事件标志
typedef union _epp_flags
{
    struct _flags
    {
	unsigned char timer              : 1;			//时间溢出 
	unsigned char bus_reset          : 1;			//总线复位标志
	unsigned char suspend            : 1;			//挂起改变标志
	unsigned char setup_packet  	 : 1;			//收到setup包
	unsigned char remote_wakeup		 : 1;			//远程唤醒标志(未使用)
	unsigned char in_isr		     : 1;			//USB中断服务标志
	unsigned char control_state		 : 2;			//控制端点处理状态
													//0:IDEL			空闲状态
													//1:TRANSMIT	数据发送状态
													//2:RECEIVE		数据接收状态
	unsigned char configuration		: 1;			//配置标志(0:未配置;1:已经配置)
	unsigned char command			: 1;			//未使用
	unsigned char ep1_rxdone		: 1;			//端点1收到数据标志
	unsigned char ep2_rxdone		: 1; 			//端点2收到数据标志
	unsigned char ep1buf_full		: 1;			//端点1输出双缓冲区满标志
	unsigned char ep2buf_full		: 1;			//端点2输出双缓冲区满标志
	} bits;
	unsigned short value;
} EPPFLAGS;

USB设备请求寄存器
typedef struct _device_request
{
	unsigned char bmRequestType;					//请求类型(数据传输方向、类型、接收器)
	unsigned char bRequest;							//USB请求
	unsigned short wValue;							//USB请求值
	unsigned short wIndex;							//USB请求索引
	unsigned short wLength;							//计数长度
} DEVICE_REQUEST;

Setup包数据缓冲区
typedef struct _control_xfer
{
	DEVICE_REQUEST DeviceRequest;					//USB设备请求结构体,8个字节
	unsigned short wLength;							//传输数据的总字节数
	unsigned short wCount;							//传输字节数统计
	unsigned char * pData;								//传输数据的指针
	unsigned char dataBuffer[MAX_CONTROLDATA_SIZE];	//请求的数据
} CONTROL_XFER;





usb51s.lib V0.3		2002-05-22
    内部测试用。

usb51s.lib V0.2		2002-04-08
    修改了V0.1中的总线连接配置,加大的连接的可靠性,减少了错误包的发生。

⌨️ 快捷键说明

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