From 766a2388d46f49e07ec0280fa4f3d254367850d1 Mon Sep 17 00:00:00 2001 From: utzig Date: Sun, 29 Jun 2014 23:06:17 +0000 Subject: AVR HAL ported from RT-2 (serial/pal/hal tested) git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@6999 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/hal/ports/AVR/avr_pins.h | 94 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 os/hal/ports/AVR/avr_pins.h (limited to 'os/hal/ports/AVR/avr_pins.h') diff --git a/os/hal/ports/AVR/avr_pins.h b/os/hal/ports/AVR/avr_pins.h new file mode 100644 index 000000000..fbdbfb703 --- /dev/null +++ b/os/hal/ports/AVR/avr_pins.h @@ -0,0 +1,94 @@ +/* + ChibiOS/RT - Copyright (C) 2006-2014 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#ifndef _AVR_PINS_H_ +#define _AVR_PINS_H_ + +#include + +#if AVR_SPI_USE_SPI1 + +#if defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) + #define PIN_SPI1 PINB + #define PORT_SPI1 PORTB + #define DDR_SPI1 DDRB + #define SPI1_SS 4 + #define SPI1_SCK 7 + #define SPI1_MOSI 5 + #define SPI1_MISO 6 +#elif defined(__AVR_ATmega328P__) + #define PIN_SPI1 PINB + #define PORT_SPI1 PORTB + #define DDR_SPI1 DDRB + #define SPI1_SS 2 + #define SPI1_SCK 5 + #define SPI1_MOSI 3 + #define SPI1_MISO 4 +#elif defined(__AVR_ATmega2560__) || \ + defined(__AVR_ATmega1280__) || \ + defined(__AVR_ATmega128__) + #define PIN_SPI1 PINB + #define PORT_SPI1 PORTB + #define DDR_SPI1 DDRB + #define SPI1_SS 0 + #define SPI1_SCK 1 + #define SPI1_MOSI 2 + #define SPI1_MISO 3 +#elif defined(__AVR_AT90CAN128__) || \ + defined(__AVR_AT90CAN64__) || \ + defined(__AVR_AT90CAN32__) + #define PIN_SPI1 PINB + #define PORT_SPI1 PORTB + #define DDR_SPI1 DDRB + #define SPI1_SS 0 + #define SPI1_SCK 1 + #define SPI1_MOSI 2 + #define SPI1_MISO 3 +#else + #warning "Device not supported by SPI driver" +#endif + +#endif /* AVR_SPI_USE_SPI1 */ + +#if AVR_ADC_USE_ADC1 + +#if defined(__AVR_ATmega644__) || defined(__AVR_ATmega644P__) + #define PINADC PINA + #define PORTADC PORTA + #define DDRADC DDRA +#elif defined(__AVR_ATmega328P__) + #define PINADC PINC + #define PORTADC PORTC + #define DDRADC DDRC +#elif defined(__AVR_ATmega2560__) || \ + defined(__AVR_ATmega1280__) || \ + defined(__AVR_ATmega128__) + #define PINADC PINF + #define PORTADC PORTF + #define DDRADC DDRF +#elif defined(__AVR_AT90CAN128__) || \ + defined(__AVR_AT90CAN64__) || \ + defined(__AVR_AT90CAN32__) + #define PINADC PINF + #define PORTADC PORTF + #define DDRADC DDRF +#else + #warning "Device not supported by ADC driver" +#endif + +#endif /* AVR_ADC_USE_ADC1 */ + +#endif /* _AVR_PINS_H_ */ -- cgit v1.2.3