📄 usbhost.h
字号:
/****************************************Copyright (c)**************************************************
** CH374做主机操作U盘读写程序
** USB主机协议栈
** 头文件
**
** VBeat 0.2
**
**--------------文件信息--------------------------------------------------------------------------------
**文 件 名: USBhost.H
**创 建 人: 徐亦朱
**最后修改日期: 2007年9月25日
**描 述: USB主机协议栈头文件
**
**--------------历史版本信息----------------------------------------------------------------------------
** 创建人: 徐亦朱
** 版 本: VBeat 0.1
** 日 期: 2007年9月24日
** 描 述: 原始版本
**
**--------------当前版本修订------------------------------------------------------------------------------
** 修改人: 徐亦朱
** 日 期: 2007年9月25日
** 描 述: 优化头文件
**
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
// USB标准请求
const UINT8C SetupGetDevDescr [ ] = { 0x80, 0x06, 0x00, 0x01, 0x00, 0x00, 0x12, 0x00 } ; //Get_Descriptor -- Device
static const UINT8C SetupGetCfgDescr [ ] = { 0x80, 0x06, 0x00, 0x02, 0x00, 0x00, 0x04, 0x00 } ; //Get_Descriptor -- Configuration
static const UINT8C SetupSetUsbAddr [ ] = { 0x00, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00 } ; //Set_Address
static const UINT8C SetupSetUsbConfig[ ] = { 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } ; //Set_Configuration
static const UINT8C SetupClrEndpStall[ ] = { 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } ; //Clear_Feature
// 定义默认控制传输端点
#define mDiskDefaultEndp 0x00
// USB设备的端点0的最大包尺寸
UINT8 UsbDevEndpSize = DEFAULT_ENDP0_SIZE ;
// 当前USB设备状态,通常用于中断方式的全局变量,本程序未使用
UINT8 FlagDeviceStatus;
// 保存最近一次执行的事务PID
UINT8 mSaveUsbPid ;
/*********************************************************************************************************
** 函数名称: Init374Host
** 功能描述: 初始化USB主机
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void Init374Host( void ) ;
/*********************************************************************************************************
** 函数名称: HostSetBusFree
** 功能描述: USB总线空闲
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void HostSetBusFree( void ) ;
/*********************************************************************************************************
** 函数名称: HostSetBusReset
** 功能描述: USB总线复位
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void HostSetBusReset( ) ;
/*********************************************************************************************************
** 函数名称: HostSetFullSpeed
** 功能描述: 设定全速USB设备运行环境
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void HostSetFullSpeed( void ) ;
/*********************************************************************************************************
** 函数名称: HostSetLowSpeed
** 功能描述: 设定低速USB设备运行环境
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void HostSetLowSpeed( void ) ;
/*********************************************************************************************************
** 函数名称: SetHostUsbAddr
** 功能描述: 设置USB主机当前操作的USB设备地址
**
** 输 入: 要设置的设备地址
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void SetHostUsbAddr( UINT8 addr ) ;
/*********************************************************************************************************
** 函数名称: HostDetectInterrupt
** 功能描述: 处理USB插拔事件中断
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void HostDetectInterrupt( void ) ;
/*********************************************************************************************************
** 函数名称: mSetControlSetup
** 功能描述: 设置默认控制数据SETUP
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
static void mSetControlSetup( void ) ;
/*********************************************************************************************************
** 函数名称: mSetControlIn
** 功能描述: 设置默认控制数据输入
**
** 输 入:
** 输 出:
**
** 全局变量: 无
** 调用模块: 无
** 调试码: 无
**
**
** 作 者: 徐亦朱
** 日 期: 2007年9月24日
**-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
static void mSetControlIn( void ) ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -