diff options
author | utzig <utzig@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2014-06-29 23:06:17 +0000 |
---|---|---|
committer | utzig <utzig@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2014-06-29 23:06:17 +0000 |
commit | 766a2388d46f49e07ec0280fa4f3d254367850d1 (patch) | |
tree | f7c116f3a638a861575a16467703ad19fd26255c /os/hal/ports/AVR/avr_pins.h | |
parent | 5eb1ae8cc3f4d2584d31e2d9672162bf8bfc0274 (diff) | |
download | ChibiOS-766a2388d46f49e07ec0280fa4f3d254367850d1.tar.gz ChibiOS-766a2388d46f49e07ec0280fa4f3d254367850d1.tar.bz2 ChibiOS-766a2388d46f49e07ec0280fa4f3d254367850d1.zip |
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
Diffstat (limited to 'os/hal/ports/AVR/avr_pins.h')
-rw-r--r-- | os/hal/ports/AVR/avr_pins.h | 94 |
1 files changed, 94 insertions, 0 deletions
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 <avr/io.h> + +#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_ */ |