ATmega328p
Hardware definitions
Loading...
Searching...
No Matches
SPI.h File Reference

SPI modes, roles, and clock settings. More...

#include <stdint.h>
#include "Config.h"
#include "Pin.h"
Include dependency graph for SPI.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  atmega328p
 Device-specific definitions for the ATmega328P.
namespace  atmega328p::spi
 SPI interface definitions.

Enumerations

enum class  atmega328p::spi::Mode : uint8_t { atmega328p::spi::Mode0 = 0 , atmega328p::spi::Mode1 = 1 , atmega328p::spi::Mode2 = 2 , atmega328p::spi::Mode3 = 3 }
 Peripheral operating modes. More...
enum class  atmega328p::spi::BitOrder : uint8_t { atmega328p::spi::MostSignificantFirst , atmega328p::spi::LeastSignificantFirst }
 SPI bit-transfer order. More...
enum class  atmega328p::spi::Role : uint8_t { atmega328p::spi::Master , atmega328p::spi::Slave }
 SPI controller roles. More...
enum class  atmega328p::spi::ClockDivider : uint16_t {
  atmega328p::spi::Divide2 = 2 , atmega328p::spi::Divide4 = 4 , atmega328p::spi::Divide8 = 8 , atmega328p::spi::Divide16 = 16 ,
  atmega328p::spi::Divide32 = 32 , atmega328p::spi::Divide64 = 64 , atmega328p::spi::Divide128 = 128
}
 Supported SPI clock divisors. More...
enum  : uint8_t {
  atmega328p::spi::module_count = 1U , atmega328p::spi::data_width_bits = 8U , atmega328p::spi::ss_pin_value = 0x02U , atmega328p::spi::mosi_pin_value = 0x03U ,
  atmega328p::spi::miso_pin_value = 0x04U , atmega328p::spi::sck_pin_value = 0x05U , atmega328p::spi::clock_divisor_count = 7U , atmega328p::spi::supports_full_duplex = 1 ,
  atmega328p::spi::supports_master_and_slave = 1 , atmega328p::spi::supports_lsb_first = 1 , atmega328p::spi::supports_msb_first = 1 , atmega328p::spi::supports_double_speed = 1
}

Detailed Description

SPI modes, roles, and clock settings.