FastArduino - ATtinyX4 Support v1.10
C++ library to build fast but small Arduino/AVR projects
Loading...
Searching...
No Matches
Namespaces | Enumerations | Functions
attiny_x4.h File Reference

ATtinyX4 (24, 44, 84) specific features and pins. More...

#include "io.h"
#include "../bits.h"
#include "../defines.h"
#include <avr/sleep.h>
Include dependency graph for attiny_x4.h:

Go to the source code of this file.

Namespaces

namespace  board
 Defines all types and constants specific to support ATtinyX4 MCU targets.
 

Enumerations

enum class  board::Port : uint8_t {
  board::PORT_A = 0 ,
  board::PORT_B ,
  NONE = UINT8_MAX
}
 Defines all available ports of ATtinyX4. More...
 
enum class  board::DigitalPin : uint8_t {
  board::D0_PA0 = 0 ,
  board::D1_PA1 ,
  board::D2_PA2 ,
  board::D3_PA3 ,
  board::D4_PA4 ,
  board::D5_PA5 ,
  board::D6_PA6 ,
  board::D7_PA7 ,
  board::D8_PB0 ,
  board::D9_PB1 ,
  board::D10_PB2 ,
  board::LED = D7_PA7 ,
  NONE = UINT8_MAX
}
 Defines all available digital input/output pins of ATtinyX4, with additional pin imaginary numbering (as for an Arduino board). 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 ATtinyX4, 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 ATtinyX4, 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::A6 ,
  board::A7 ,
  board::TEMP ,
  board::BANDGAP ,
  NONE = UINT8_MAX
}
 Defines all available analog input pins of ATtinyX4, with reference to AVR ATtinyX4 pins. More...
 
enum class  board::PWMPin : uint8_t {
  D10_PB2_OC0A = 0 ,
  D7_PA7_OC0B ,
  D6_PA6_OC1A ,
  D5_PA5_OC1B ,
  NONE = UINT8_MAX
}
 Defines all digital output pins of ATtinyX4, capable of PWM output. More...
 
enum class  board::ExternalInterruptPin : uint8_t { D10_PB2_EXT0 = 0 }
 Defines all digital output pins of ATtinyX4, usable as direct external interrupt pins. More...
 
enum class  board::InterruptPin : uint8_t {
  D0_PA0_PCI0 = uint8_t(DigitalPin::D0_PA0) ,
  D1_PA1_PCI0 = uint8_t(DigitalPin::D1_PA1) ,
  D2_PA2_PCI0 = uint8_t(DigitalPin::D2_PA2) ,
  D3_PA3_PCI0 = uint8_t(DigitalPin::D3_PA3) ,
  D4_PA4_PCI0 = uint8_t(DigitalPin::D4_PA4) ,
  D5_PA5_PCI0 = uint8_t(DigitalPin::D5_PA5) ,
  D6_PA6_PCI0 = uint8_t(DigitalPin::D6_PA6) ,
  D7_PA7_PCI0 = uint8_t(DigitalPin::D7_PA7) ,
  D8_PB0_PCI1 = uint8_t(DigitalPin::D8_PB0) ,
  D9_PB1_PCI1 = uint8_t(DigitalPin::D9_PB1) ,
  D10_PB2_PCI1 = uint8_t(DigitalPin::D10_PB2)
}
 Defines all digital output pins of ATtinyX4, usable as pin change interrupt (PCI) pins. More...
 
enum class  board::USART : uint8_t
 Defines all USART modules of ATtinyX4, actually none at all. More...
 
enum class  board::Timer : uint8_t {
  board::TIMER0 = 0 ,
  board::TIMER1 = 1
}
 Defines all timers available for ATtinyX4. 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_PWR_SAVE ,
  board::EXTENDED_STANDBY = SLEEP_MODE_PWR_SAVE
}
 Defines all available sleep modes for ATmega328P. More...
 

Functions

static void board::init ()
 Performs special initialization for ATtinyX4, actually nothing at all. More...
 

Detailed Description

ATtinyX4 (24, 44, 84) specific features and pins.

Definition in file attiny_x4.h.