hid usb 编程源码,主机端,用vc++6.0做的
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 20312 2008-03-24 10:59 hidUSB HIDHidDeviceChapter9.c
文件 2311 2008-01-20 22:18 hidUSB HIDHidDeviceChapter9.h
文件 40327 2008-03-24 11:06 hidUSB HIDHidDeviceChapter9.LST
文件 45241 2008-03-24 11:06 hidUSB HIDHidDeviceChapter9.OBJ
文件 162 2008-01-19 19:41 hidUSB HIDHidDeviceCONFIG.h
文件 12087 2008-01-22 22:00 hidUSB HIDHidDeviceD12CI.c
文件 7449 2008-01-20 21:42 hidUSB HIDHidDeviceD12CI.h
文件 22611 2008-03-24 11:06 hidUSB HIDHidDeviceD12CI.LST
文件 19663 2008-03-24 11:06 hidUSB HIDHidDeviceD12CI.OBJ
文件 1003 2008-03-24 10:51 hidUSB HIDHidDeviceD12HAL.c
文件 249 2008-01-20 21:29 hidUSB HIDHidDeviceD12HAL.h
文件 3099 2008-03-24 11:06 hidUSB HIDHidDeviceD12HAL.LST
文件 4773 2008-03-24 11:06 hidUSB HIDHidDeviceD12HAL.OBJ
文件 5841 2008-03-24 10:51 hidUSB HIDHidDeviceDescriptor.c
文件 9939 2008-03-24 10:47 hidUSB HIDHidDeviceDescriptor.h
文件 10633 2008-03-24 11:06 hidUSB HIDHidDeviceDescriptor.LST
文件 15404 2008-03-24 11:06 hidUSB HIDHidDeviceDescriptor.OBJ
文件 4163 2008-01-18 20:25 hidUSB HIDHidDeviceDS89C4xx.h
文件 101883 2008-03-24 11:06 hidUSB HIDHidDeviceHID
文件 14636 2008-03-24 11:06 hidUSB HIDHidDeviceHID.hex
文件 161 2008-03-24 11:06 hidUSB HIDHidDeviceHID.lnp
文件 68729 2008-03-24 11:06 hidUSB HIDHidDeviceHID.M51
文件 1964 2008-03-24 11:12 hidUSB HIDHidDeviceHID.Opt
文件 14100 2008-03-24 11:06 hidUSB HIDHidDeviceHID.plg
文件 2296 2008-03-24 11:12 hidUSB HIDHidDeviceHID.Uv2
文件 1190 2008-03-24 10:50 hidUSB HIDHidDevicehiduse.c
文件 141 2008-03-24 10:50 hidUSB HIDHidDevicehiduse.h
文件 2493 2008-03-24 11:06 hidUSB HIDHidDevicehiduse.LST
文件 469 2008-03-24 11:06 hidUSB HIDHidDevicehiduse.OBJ
....... 0 2008-03-24 10:56 hidUSB HIDHidDeviceHID_Uv2.Bak
............此处省略70个文件信息
#include “ds89c4xx.h“
#include “mytype.h“
#include “D12CI.h“
#include “D12HAL.h“
#include “Chapter9.h“
#include “Descriptor.h“
#include “uart0.h“
#ifndef _swap_data_
#define _swap_data_
#define SWAP16(x) ((((uint16)(x))<<8)|(((uint16)(x))>>8)) //高低字节交换
#define LSB(x) ((uint8)(x)) //取一个整数的低字节
#define MSB(x) ((uint8)(((uint16)(x))>>8)) //取一个整数的高字节
#endif
//定义传输控制结构变量
CONTROL_XFER idata ControlData;
//定义USB事件标志变量
EPPFLAGS idata bEPPflags;
uint8 idata idleprotocol;
//*************************************************************************
//USB标准设备请求入口地址指针表
//*************************************************************************
void (*StandardDeviceRequest[])(void) =
{
get_status
clear_feature
reserved
set_feature
reserved
set_address
get_descriptor
reserved
get_configuration
set_configuration
get_interface
set_interface
reserved
reserved
reserved
reserved
};
void (*ClassDeviceRequest[])(void) =
{
reserved
get_report
get_idle
get_protocol
reserved
reserved
reserved
reserved
reserved
set_report
set_idle
set_protocol
};
//*************************************************************************
// USB 协议层函数
//*************************************************************************
/*************************************
** 函数名称: void stall_ep0(void)
** 功能描述: 使控制端点处于停止状态
**************************************/
void stall_ep0(void)
{
D12_SetEndpointStatus(0 1);
D12_SetEndpointStatus(1 1);
}
/*************************************
** 函数名称: void reserved(void)
** 功能描述: 保留子程序
**************************************/
void reserved(void)
{
stall_ep0(); //返回STALL
}
/**********************************************
** 函数名称: void init_unconfig(void)
** 功能描述: 进入地址状态禁止0除外的所有端点
***********************************************/
void init_unconfig(void)
{
D12_SetEndpointEnable(0); //禁止0除外的所有端点
}
/**********************************************
** 函数名称: void init_config(void)
** 功能描述: 配置处理允许端点收发
***********************************************/
void init_config(void)
{
D12_SetEndpointEnable(1); //使能普通/同步端点使能
}
/*********************************************************
** 函数名称: void single_transmit(uint8 * buf uint8 len)
** 功能描述: 通过端点索引 1 发送数据(DATA 类型)
** 输 入: uint8 * buf: 发送数据指针
uint8 len: 发送数据长度
** 输 出: 无
**********************************************************/
void single_transmit(uint8 *buf uint8 len)
{
if( len <= EP0_PACKET_SIZE) { //长度小于EP0最大信息包大小才允许发送
D12_WriteEndpoint(1 len buf);
}
}
/*************************************************************
** 函数名称: void code_transmit(uint8 * pRomData uint16 len)
** 功能描述: 通过端点索引 1 发送数据(CODE类型)
** 输 入: uint8 *pRomData: 发送数据指针
uint16 len: 发送数据长度
** 输 出: 无
**************************************************************/
void code_transmit(uint8 * pRomData uint16
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 20312 2008-03-24 10:59 hidUSB HIDHidDeviceChapter9.c
文件 2311 2008-01-20 22:18 hidUSB HIDHidDeviceChapter9.h
文件 40327 2008-03-24 11:06 hidUSB HIDHidDeviceChapter9.LST
文件 45241 2008-03-24 11:06 hidUSB HIDHidDeviceChapter9.OBJ
文件 162 2008-01-19 19:41 hidUSB HIDHidDeviceCONFIG.h
文件 12087 2008-01-22 22:00 hidUSB HIDHidDeviceD12CI.c
文件 7449 2008-01-20 21:42 hidUSB HIDHidDeviceD12CI.h
文件 22611 2008-03-24 11:06 hidUSB HIDHidDeviceD12CI.LST
文件 19663 2008-03-24 11:06 hidUSB HIDHidDeviceD12CI.OBJ
文件 1003 2008-03-24 10:51 hidUSB HIDHidDeviceD12HAL.c
文件 249 2008-01-20 21:29 hidUSB HIDHidDeviceD12HAL.h
文件 3099 2008-03-24 11:06 hidUSB HIDHidDeviceD12HAL.LST
文件 4773 2008-03-24 11:06 hidUSB HIDHidDeviceD12HAL.OBJ
文件 5841 2008-03-24 10:51 hidUSB HIDHidDeviceDesc
文件 9939 2008-03-24 10:47 hidUSB HIDHidDeviceDesc
文件 10633 2008-03-24 11:06 hidUSB HIDHidDeviceDesc
文件 15404 2008-03-24 11:06 hidUSB HIDHidDeviceDesc
文件 4163 2008-01-18 20:25 hidUSB HIDHidDeviceDS89C4xx.h
文件 101883 2008-03-24 11:06 hidUSB HIDHidDeviceHID
文件 14636 2008-03-24 11:06 hidUSB HIDHidDeviceHID.hex
文件 161 2008-03-24 11:06 hidUSB HIDHidDeviceHID.lnp
文件 68729 2008-03-24 11:06 hidUSB HIDHidDeviceHID.M51
文件 1964 2008-03-24 11:12 hidUSB HIDHidDeviceHID.Opt
文件 14100 2008-03-24 11:06 hidUSB HIDHidDeviceHID.plg
文件 2296 2008-03-24 11:12 hidUSB HIDHidDeviceHID.Uv2
文件 1190 2008-03-24 10:50 hidUSB HIDHidDevicehiduse.c
文件 141 2008-03-24 10:50 hidUSB HIDHidDevicehiduse.h
文件 2493 2008-03-24 11:06 hidUSB HIDHidDevicehiduse.LST
文件 469 2008-03-24 11:06 hidUSB HIDHidDevicehiduse.OBJ
....... 0 2008-03-24 10:56 hidUSB HIDHidDeviceHID_Uv2.Bak
............此处省略70个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)