• 大小: 2.96MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-04
  • 语言: C/C++
  • 标签: hid  usb  编程源码  

资源简介

hid usb 编程源码,主机端,用vc++6.0做的

资源截图

代码片段和文件信息

#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  hid\USB HID\HidDevice\Chapter9.c

     文件       2311  2008-01-20 22:18  hid\USB HID\HidDevice\Chapter9.h

     文件      40327  2008-03-24 11:06  hid\USB HID\HidDevice\Chapter9.LST

     文件      45241  2008-03-24 11:06  hid\USB HID\HidDevice\Chapter9.OBJ

     文件        162  2008-01-19 19:41  hid\USB HID\HidDevice\CONFIG.h

     文件      12087  2008-01-22 22:00  hid\USB HID\HidDevice\D12CI.c

     文件       7449  2008-01-20 21:42  hid\USB HID\HidDevice\D12CI.h

     文件      22611  2008-03-24 11:06  hid\USB HID\HidDevice\D12CI.LST

     文件      19663  2008-03-24 11:06  hid\USB HID\HidDevice\D12CI.OBJ

     文件       1003  2008-03-24 10:51  hid\USB HID\HidDevice\D12HAL.c

     文件        249  2008-01-20 21:29  hid\USB HID\HidDevice\D12HAL.h

     文件       3099  2008-03-24 11:06  hid\USB HID\HidDevice\D12HAL.LST

     文件       4773  2008-03-24 11:06  hid\USB HID\HidDevice\D12HAL.OBJ

     文件       5841  2008-03-24 10:51  hid\USB HID\HidDevice\Descriptor.c

     文件       9939  2008-03-24 10:47  hid\USB HID\HidDevice\Descriptor.h

     文件      10633  2008-03-24 11:06  hid\USB HID\HidDevice\Descriptor.LST

     文件      15404  2008-03-24 11:06  hid\USB HID\HidDevice\Descriptor.OBJ

     文件       4163  2008-01-18 20:25  hid\USB HID\HidDevice\DS89C4xx.h

     文件     101883  2008-03-24 11:06  hid\USB HID\HidDevice\HID

     文件      14636  2008-03-24 11:06  hid\USB HID\HidDevice\HID.hex

     文件        161  2008-03-24 11:06  hid\USB HID\HidDevice\HID.lnp

     文件      68729  2008-03-24 11:06  hid\USB HID\HidDevice\HID.M51

     文件       1964  2008-03-24 11:12  hid\USB HID\HidDevice\HID.Opt

     文件      14100  2008-03-24 11:06  hid\USB HID\HidDevice\HID.plg

     文件       2296  2008-03-24 11:12  hid\USB HID\HidDevice\HID.Uv2

     文件       1190  2008-03-24 10:50  hid\USB HID\HidDevice\hiduse.c

     文件        141  2008-03-24 10:50  hid\USB HID\HidDevice\hiduse.h

     文件       2493  2008-03-24 11:06  hid\USB HID\HidDevice\hiduse.LST

     文件        469  2008-03-24 11:06  hid\USB HID\HidDevice\hiduse.OBJ

    .......         0  2008-03-24 10:56  hid\USB HID\HidDevice\HID_Uv2.Bak

............此处省略70个文件信息

评论

共有 条评论