/* ---------------------------------------------------------------------------- * ATMEL Microcontroller Software Support * ---------------------------------------------------------------------------- * Copyright (c) 2008, Atmel Corporation * * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * - Redistributions of source code must retain the above copyright notice, * this list of conditions and the disclaimer below. * * Atmel's name may not be used to endorse or promote products derived from * this software without specific prior written permission. * * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * ---------------------------------------------------------------------------- */ #ifndef FPGA_H #define FPGA_H //------------------------------------------------------------------------------ // Definitions - PIOA connection to FPGA I/Os. // This fpga.h file is used in conjuction with the verilog (*.v) file for // FPGA interface I/O conneciton. //------------------------------------------------------------------------------ /************/ /* LEDs */ /************/ /// LED #0 pin definition. #define PIN_LED_DS1 {1 << 10, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_OUTPUT_1, PIO_DEFAULT} /// LED #1 pin definition. #define PIN_LED_DS2 {1 << 11, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_OUTPUT_1, PIO_DEFAULT} #define PINS_LEDS PIN_LED_DS1, PIN_LED_DS2 //, PIN_LED_DS3, PIN_LED_DS4, PIN_LED_DS5, PIN_LED_DS6, PIN_LED_DS7 /// LED DS1 index. #define LED_DS1 0 /// LED DS2 index. #define LED_DS2 1 /********************/ /* Push Buttons */ /********************/ /// Push button #0 definition. #define PIN_PUSHBUTTON_1 {1 << 8, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_DEGLITCH | PIO_PULLUP} /// Push button #1 definition. #define PIN_PUSHBUTTON_2 {1 << 9, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_DEGLITCH | PIO_PULLUP} /// List of all push button definitions. #define PINS_PUSHBUTTONS PIN_PUSHBUTTON_1, PIN_PUSHBUTTON_2 // , PIN_PUSHBUTTON_3, PIN_PUSHBUTTON_4 /// Push button #0 index. #define PUSHBUTTON_BP1 0 /// Push button #1 index. #define PUSHBUTTON_BP2 1 /// Push button #2 index. /// #define PUSHBUTTON_BP3 2 /// Push button #3 index. /// #define PUSHBUTTON_BP4 3 /***********************/ /* Joystick control */ /***********************/ // Joystick UP. #define PIN_JOYSTICK_UP {1 << 20, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP} // Joystick DOWN. #define PIN_JOYSTICK_DOWN {1 << 23, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP} // Joystick LEFT. #define PIN_JOYSTICK_LEFT {1 << 22, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP} // Joystick RIGHT. #define PIN_JOYSTICK_RIGHT {1 << 21, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP} // Joystick LEFT clic. #define PIN_JOYSTICK_LCLIC {1 << 24, AT91C_BASE_PIOB, AT91C_ID_PIOB, PIO_INPUT, PIO_PULLUP} // Joystick PUSH button. #define PIN_JOYSTICK_PUSH PIN_JOYSTICK_LCLIC // List of all Joystick click definitions #define PINS_JOYSTICK_CLIC PIN_JOYSTICK_LCLIC // List of all Joystick movement direction definitions #define PINS_JOYSTICK_MOVE PIN_JOYSTICK_UP, PIN_JOYSTICK_DOWN, \ PIN_JOYSTICK_LEFT, PIN_JOYSTICK_RIGHT // List of all Joystick definitions #define PINS_JOYSTICK PINS_JOYSTICK_MOVE, \ PINS_JOYSTICK_CLIC // Joystick UP index. #define JOYSTICK_UP 0 // Joystick DOWN index. #define JOYSTICK_DOWN 1 // Joystick LEFT index. #define JOYSTICK_LEFT 2 // Joystick RIGHT index. #define JOYSTICK_RIGHT 3 // Joystick LEFT CLICK index. #define JOYSTICK_LCLIC 4 // Joystick PUSH button index. #define JOYSTICK_PUSH 4 #endif //#ifndef FPGA_H