unit2.~cpp

来自「AVRUSBIR红外遥控器信号波形显示器」· ~CPP 代码 · 共 67 行

~CPP
67
字号
//---------------------------------------------------------------------------


#pragma hdrstop

#include "Unit2.h"

//---------------------------------------------------------------------------
int usbasp_open()
{  struct usb_bus    *bus;  struct usb_device *dev = 0;  usb_init();  usb_find_busses();  usb_find_devices();  for(bus=usb_get_busses(); bus; bus=bus->next)   {    for(dev=bus->devices; dev; dev=dev->next)     {      if((dev->descriptor.idVendor == USBDEV_VENDOR) && (dev->descriptor.idProduct == USBDEV_PRODUCT))	break;     }    if(dev)      break;   }  if(!dev){    ShowMessage("找不到USB设备!");    usbhandle=NULL;    return 1;  }  usbhandle = usb_open(dev);  if(!usbhandle){    ShowMessage("不能打开USB!");    usbhandle=NULL;    return 2;  }  return 0;}
/////////////////////////////////////////////////////////////////
void usbasp_close()
{  if(!usbhandle)   return;  usb_close(usbhandle);}
/////////////////////////////////////////////////////////////////////
int usbasp_transmit(unsigned char dir, unsigned char functionid,
			   unsigned char send[4], unsigned char * buffer, int buffersize){  int nbytes;  if(usbhandle)   nbytes = usb_control_msg(usbhandle,			   USB_TYPE_VENDOR | USB_RECIP_DEVICE | dir ,			   functionid,			   (send[1] << 8) | send[0],			   (send[3] << 8) | send[2],			   buffer, buffersize,			   5000);  if(nbytes < 0)   {    ShowMessage("传输错误,程序将关闭USB!");    usbasp_close();   }  return nbytes;}
#pragma package(smart_init)
 

⌨️ 快捷键说明

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