/* Copyright (C) 2011 Circuits At Home, LTD. All rights reserved. This software may be distributed and modified under the terms of the GNU General Public License version 2 (GPL2) as published by the Free Software Foundation and appearing in the file GPL2.TXT included in the packaging of this file. Please note that GPL2 Section 2[b] requires that all works based on this software must also be made publicly available under the terms of the GPL2 ("Copyleft"). Contact information ------------------- Circuits At Home, LTD Web : http://www.circuitsathome.com e-mail : support@circuitsathome.com */ #if !defined(__CDCPROLIFIC_H__) #define __CDCPROLIFIC_H__ #include "cdcacm.h" //#define PL2303_COMPAT // Uncomment it if you have compatibility problems #define PL_VID 0x067B #define CHECK_PID(pid) ( pid != 0x2303 && pid != 0x0609 ) //#define PL_PID 0x0609 #define PROLIFIC_REV_H 0x0202 #define PROLIFIC_REV_X 0x0300 #define PROLIFIC_REV_HX_CHIP_D 0x0400 #define PROLIFIC_REV_1 0x0001 #define kXOnChar '\x11' #define kXOffChar '\x13' #define SPECIAL_SHIFT (5) #define SPECIAL_MASK ((1<ctrlReq(bAddress, 0, VENDOR_READ_REQUEST_TYPE, VENDOR_READ_REQUEST, val_lo, val_hi, index, 1, 1, buf, NULL )); } /* vendor write request */ inline uint8_t PL2303::vendorWrite( uint8_t val_lo, uint8_t val_hi, uint8_t index ) { return( pUsb->ctrlReq(bAddress, 0, VENDOR_WRITE_REQUEST_TYPE, VENDOR_WRITE_REQUEST, val_lo, val_hi, index, 0, 0, NULL, NULL )); } #endif #endif // __CDCPROLIFIC_H__