FastArduino - Arduino UNO Support v1.10
C++ library to build fast but small Arduino/AVR projects
|
ATmega328P specific features and pins. More...
#include "io.h"
#include "../defines.h"
#include <avr/sleep.h>
Go to the source code of this file.
Namespaces | |
namespace | board |
Defines all types and constants specific to support ATmega328P MCU target. | |
Enumerations | |
enum class | board::Port : uint8_t { board::PORT_B = 0 , board::PORT_C , board::PORT_D , NONE = UINT8_MAX } |
Defines all available ports of ATmega328P. More... | |
enum class | board::DigitalPin : uint8_t { board::D0_PD0 = 0 , board::D0 = D0_PD0 , board::D1_PD1 , board::D1 = D1_PD1 , board::D2_PD2 , board::D2 = D2_PD2 , board::D3_PD3 , board::D3 = D3_PD3 , board::D4_PD4 , board::D4 = D4_PD4 , board::D5_PD5 , board::D5 = D5_PD5 , board::D6_PD6 , board::D6 = D6_PD6 , board::D7_PD7 , board::D7 = D7_PD7 , board::D8_PB0 , board::D8 = D8_PB0 , board::D9_PB1 , board::D9 = D9_PB1 , board::D10_PB2 , board::D10 = D10_PB2 , board::D11_PB3 , board::D11 = D11_PB3 , board::D12_PB4 , board::D12 = D12_PB4 , board::D13_PB5 , board::D13 = D13_PB5 , board::D14_PC0 , board::A0 = D14_PC0 , board::A0_PC0 = D14_PC0 , board::D15_PC1 , board::A1 = D15_PC1 , board::A1_PC1 = D15_PC1 , board::D16_PC2 , board::A2 = D16_PC2 , board::A2_PC2 = D16_PC2 , board::D17_PC3 , board::A3 = D17_PC3 , board::A3_PC3 = D17_PC3 , board::D18_PC4 , board::A4 = D18_PC4 , board::A4_PC4 = D18_PC4 , board::D19_PC5 , board::A5 = D19_PC5 , board::A5_PC5 = D19_PC5 , board::LED = D13_PB5 , board::LED_PB5 = D13_PB5 , NONE = UINT8_MAX } |
Defines all available digital input/output pins of ATmega328P, with reference to Arduino UNO pins. More... | |
enum class | board::AnalogClock : uint8_t { MAX_FREQ_50KHz = 0 , MAX_FREQ_100KHz , MAX_FREQ_200KHz , MAX_FREQ_500KHz , MAX_FREQ_1MHz } |
Defines available clocks of ATmega328P, used for analog input. More... | |
enum class | board::AnalogReference : uint8_t { board::AREF = 0 , board::AVCC , board::INTERNAL_1_1V } |
Defines available voltage references of ATmega328P, used for analog input. More... | |
enum class | board::AnalogPin : uint8_t { board::A0 = 0 , board::A1 , board::A2 , board::A3 , board::A4 , board::A5 , board::TEMP , board::BANDGAP , NONE = UINT8_MAX } |
Defines all available analog input pins of ATmega328P, with reference to Arduino UNO pins. More... | |
enum class | board::PWMPin : uint8_t { D6_PD6_OC0A = 0 , D5_PD5_OC0B , D9_PB1_OC1A , D10_PB2_OC1B , D11_PB3_OC2A , D3_PD3_OC2B , D6 = D6_PD6_OC0A , D5 = D5_PD5_OC0B , D9 = D9_PB1_OC1A , D10 = D10_PB2_OC1B , D11 = D11_PB3_OC2A , D3 = D3_PD3_OC2B , NONE = UINT8_MAX } |
Defines all digital output pins of ATmega328P, capable of PWM output. More... | |
enum class | board::ExternalInterruptPin : uint8_t { D2_PD2_EXT0 = 0 , D3_PD3_EXT1 , D2 = D2_PD2_EXT0 , D3 = D3_PD3_EXT1 } |
Defines all digital output pins of ATmega328P, usable as direct external interrupt pins. More... | |
enum class | board::InterruptPin : uint8_t { D0_PD0_PCI2 = uint8_t(DigitalPin::D0_PD0) , D1_PD1_PCI2 = uint8_t(DigitalPin::D1_PD1) , D2_PD2_PCI2 = uint8_t(DigitalPin::D2_PD2) , D3_PD3_PCI2 = uint8_t(DigitalPin::D3_PD3) , D4_PD4_PCI2 = uint8_t(DigitalPin::D4_PD4) , D5_PD5_PCI2 = uint8_t(DigitalPin::D5_PD5) , D6_PD6_PCI2 = uint8_t(DigitalPin::D6_PD6) , D7_PD7_PCI2 = uint8_t(DigitalPin::D7_PD7) , D8_PB0_PCI0 = uint8_t(DigitalPin::D8_PB0) , D9_PB1_PCI0 = uint8_t(DigitalPin::D9_PB1) , D10_PB2_PCI0 = uint8_t(DigitalPin::D10_PB2) , D11_PB3_PCI0 = uint8_t(DigitalPin::D11_PB3) , D12_PB4_PCI0 = uint8_t(DigitalPin::D12_PB4) , D13_PB5_PCI0 = uint8_t(DigitalPin::D13_PB5) , D14_PC0_PCI1 = uint8_t(DigitalPin::D14_PC0) , D15_PC1_PCI1 = uint8_t(DigitalPin::D15_PC1) , D16_PC2_PCI1 = uint8_t(DigitalPin::D16_PC2) , D17_PC3_PCI1 = uint8_t(DigitalPin::D17_PC3) , D18_PC4_PCI1 = uint8_t(DigitalPin::D18_PC4) , D19_PC5_PCI1 = uint8_t(DigitalPin::D19_PC5) , D0 = D0_PD0_PCI2 , D1 = D1_PD1_PCI2 , D2 = D2_PD2_PCI2 , D3 = D3_PD3_PCI2 , D4 = D4_PD4_PCI2 , D5 = D5_PD5_PCI2 , D6 = D6_PD6_PCI2 , D7 = D7_PD7_PCI2 , D8 = D8_PB0_PCI0 , D9 = D9_PB1_PCI0 , D10 = D10_PB2_PCI0 , D11 = D11_PB3_PCI0 , D12 = D12_PB4_PCI0 , D13 = D13_PB5_PCI0 , A0 = D14_PC0_PCI1 , A1 = D15_PC1_PCI1 , A2 = D16_PC2_PCI1 , A3 = D17_PC3_PCI1 , A4 = D18_PC4_PCI1 , A5 = D19_PC5_PCI1 , A0_PC0_PCI1 = D14_PC0_PCI1 , A1_PC1_PCI1 = D15_PC1_PCI1 , A2_PC2_PCI1 = D16_PC2_PCI1 , A3_PC3_PCI1 = D17_PC3_PCI1 , A4_PC4_PCI1 = D18_PC4_PCI1 , A5_PC5_PCI1 = D19_PC5_PCI1 } |
Defines all digital output pins of ATmega328P, usable as pin change interrupt (PCI) pins. More... | |
enum class | board::USART : uint8_t { USART0 = 0 } |
Defines all USART modules of ATmega328P, actually only one. More... | |
enum class | board::Timer : uint8_t { board::TIMER0 = 0 , board::TIMER1 = 1 , board::TIMER2 = 2 } |
Defines all timers available for ATmega328P. More... | |
enum class | board::SleepMode : uint8_t { board::IDLE = SLEEP_MODE_IDLE , board::ADC_NOISE_REDUCTION = SLEEP_MODE_ADC , board::POWER_DOWN = SLEEP_MODE_PWR_DOWN , board::POWER_SAVE = SLEEP_MODE_PWR_SAVE , board::STANDBY = SLEEP_MODE_STANDBY , board::EXTENDED_STANDBY = SLEEP_MODE_EXT_STANDBY } |
Defines all available sleep modes for ATmega328P. More... | |
Functions | |
static void | board::init () |
Performs special initialization for ATmega328P, actually nothing at all. More... | |
ATmega328P specific features and pins.
Definition in file uno.h.