diff options
Diffstat (limited to 'firmware/usbn2mc.h')
-rw-r--r-- | firmware/usbn2mc.h | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/firmware/usbn2mc.h b/firmware/usbn2mc.h new file mode 100644 index 0000000..2e7f8e7 --- /dev/null +++ b/firmware/usbn2mc.h @@ -0,0 +1,73 @@ +/* mciface.h +* Copyright (C) 2005 Benedikt Sauter +* +* This program is free software; you can redistribute it and/or modify +* it under the terms of the GNU General Public License as published by +* the Free Software Foundation; either version 2 of the License, or +* (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program; if not, write to the Free Software +* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ +#ifndef _MCIFACE_H_ +#define _MCIFACE_H_ + +#include <stdint.h> +#include <avr/interrupt.h> +#include <inttypes.h> + + +#include "../usbn2mc/main/usbnapi.h" + +unsigned char USBNRead(unsigned char Adr); +unsigned char USBNBurstRead(void); +void USBNWrite(unsigned char Adr,unsigned char Data); +void USBNBurstWrite(unsigned char Data); + +void USBNInitMC(void); + +// print debug messages +void USBNDebug(char *msg); + +void USBNDecodeVendorRequest(DeviceRequest *req); +void USBNDecodeClassRequest(DeviceRequest *req); + + +/// The Atmega register used to send data/address to the USBN9604 +#define USB_DATA_OUT PORTA + +/// The Atmega register used to receive data from the USBN9604 +#define USB_DATA_IN PINA + +/// The Atmega register that controls the i/o direction of the USB_DATA_OUT +#define USB_DATA_DDR DDRA + +/// The Atmega port used to send control signals to the USBN9604 +#define USB_CTRL_PORT PORTG + +/// The Atmega register that controls the i/o direction of USB_CTRL_PORT +#define USB_CTRL_DDR DDRG + + +#define USB_CS_DDR DDRC +#define USB_CS_PORT PORTC + +/// The pin address of the chip select signal +#define PF_CS PC7 + +/// The pin address of the Address enable signal +#define PF_A0 PG2 + +/// The pin address of the write strobe signal +#define PF_WR PG0 + +/// The pin address of the read strobe signal +#define PF_RD PG1 + +#endif /* _MCIFACE_H_ */ |