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

Package characteristics and selected physical package. More...

#include <stdint.h>
#include "Config.h"
#include "PackagePins.h"
Include dependency graph for Package.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::package
 Physical package and terminal definitions.
namespace  atmega328p::package::pdip28
 PDIP-28 package characteristics.
namespace  atmega328p::package::mlf28
 MLF-28 package characteristics.
namespace  atmega328p::package::tqfp32
 TQFP-32 package characteristics.
namespace  atmega328p::package::mlf32
 MLF-32 package characteristics.
namespace  atmega328p::package::unspecified
 Fallback characteristics when no package is selected.

Enumerations

enum class  atmega328p::package::Type : uint8_t {
  atmega328p::package::Unspecified , atmega328p::package::PDIP28 , atmega328p::package::MLF28 , atmega328p::package::TQFP32 ,
  atmega328p::package::MLF32
}
 Supported ATmega328P package types. More...
enum class  atmega328p::package::MLF32Style : uint8_t { atmega328p::package::Unspecified , atmega328p::package::PunchSingulated , atmega328p::package::SawSingulated }
 MLF32 manufacturing styles with different land patterns. More...
enum  : uint8_t {
  atmega328p::package::pdip28::type_id = 1 , atmega328p::package::pdip28::pin_count = 28 , atmega328p::package::pdip28::adc_channel_count = 6 , atmega328p::package::pdip28::has_adc6 = 0 ,
  atmega328p::package::pdip28::has_adc7 = 0 , atmega328p::package::pdip28::has_exposed_pad = 0 , atmega328p::package::pdip28::exposed_pad_grounded = 0
}
enum  : uint32_t {
  atmega328p::package::pdip28::body_width_min_um = 7620 , atmega328p::package::pdip28::body_width_nominal_um = 0 , atmega328p::package::pdip28::body_width_max_um = 8255 , atmega328p::package::pdip28::overall_height_min_um = 0 ,
  atmega328p::package::pdip28::overall_height_nominal_um = 0 , atmega328p::package::pdip28::overall_height_max_um = 4572 , atmega328p::package::pdip28::exposed_pad_width_min_um = 0 , atmega328p::package::pdip28::exposed_pad_width_nominal_um = 0 ,
  atmega328p::package::pdip28::exposed_pad_width_max_um = 0 , atmega328p::package::pdip28::exposed_pad_length_min_um = 0 , atmega328p::package::pdip28::exposed_pad_length_nominal_um = 0 , atmega328p::package::pdip28::exposed_pad_length_max_um = 0 ,
  atmega328p::package::pdip28::land_pad_width_um = 0 , atmega328p::package::pdip28::land_pad_length_um = 0 , atmega328p::package::pdip28::lead_pitch_um = 2540
}
enum  : uint8_t {
  atmega328p::package::mlf28::type_id = 2 , atmega328p::package::mlf28::pin_count = 28 , atmega328p::package::mlf28::adc_channel_count = 6 , atmega328p::package::mlf28::has_adc6 = 0 ,
  atmega328p::package::mlf28::has_adc7 = 0 , atmega328p::package::mlf28::has_exposed_pad = 1 , atmega328p::package::mlf28::exposed_pad_grounded = 1
}
enum  : uint32_t {
  atmega328p::package::mlf28::body_width_min_um = 3950 , atmega328p::package::mlf28::body_width_nominal_um = 4000 , atmega328p::package::mlf28::body_width_max_um = 4050 , atmega328p::package::mlf28::overall_height_min_um = 800 ,
  atmega328p::package::mlf28::overall_height_nominal_um = 900 , atmega328p::package::mlf28::overall_height_max_um = 1000 , atmega328p::package::mlf28::exposed_pad_width_min_um = 2350 , atmega328p::package::mlf28::exposed_pad_width_nominal_um = 2400 ,
  atmega328p::package::mlf28::exposed_pad_width_max_um = 2450 , atmega328p::package::mlf28::exposed_pad_length_min_um = 2350 , atmega328p::package::mlf28::exposed_pad_length_nominal_um = 2400 , atmega328p::package::mlf28::exposed_pad_length_max_um = 2450 ,
  atmega328p::package::mlf28::land_pad_width_um = 0 , atmega328p::package::mlf28::land_pad_length_um = 0 , atmega328p::package::mlf28::lead_pitch_um = 450
}
enum  : uint8_t {
  atmega328p::package::tqfp32::type_id = 3 , atmega328p::package::tqfp32::pin_count = 32 , atmega328p::package::tqfp32::adc_channel_count = 8 , atmega328p::package::tqfp32::has_adc6 = 1 ,
  atmega328p::package::tqfp32::has_adc7 = 1 , atmega328p::package::tqfp32::has_exposed_pad = 0 , atmega328p::package::tqfp32::exposed_pad_grounded = 0
}
enum  : uint32_t {
  atmega328p::package::tqfp32::body_width_min_um = 6900 , atmega328p::package::tqfp32::body_width_nominal_um = 7000 , atmega328p::package::tqfp32::body_width_max_um = 7100 , atmega328p::package::tqfp32::overall_height_min_um = 1000 ,
  atmega328p::package::tqfp32::overall_height_max_um = 1200 , atmega328p::package::tqfp32::exposed_pad_width_min_um = 0 , atmega328p::package::tqfp32::exposed_pad_width_nominal_um = 0 , atmega328p::package::tqfp32::exposed_pad_width_max_um = 0 ,
  atmega328p::package::tqfp32::exposed_pad_length_min_um = 0 , atmega328p::package::tqfp32::exposed_pad_length_nominal_um = 0 , atmega328p::package::tqfp32::exposed_pad_length_max_um = 0 , atmega328p::package::tqfp32::land_pad_width_um = 0 ,
  atmega328p::package::tqfp32::land_pad_length_um = 0 , atmega328p::package::tqfp32::lead_pitch_um = 800
}
enum  : uint8_t {
  atmega328p::package::mlf32::type_id = 4 , atmega328p::package::mlf32::pin_count = 32 , atmega328p::package::mlf32::adc_channel_count = 8 , atmega328p::package::mlf32::has_adc6 = 1 ,
  atmega328p::package::mlf32::has_adc7 = 1 , atmega328p::package::mlf32::has_exposed_pad = 1 , atmega328p::package::mlf32::exposed_pad_grounded = 1
}
enum  : uint32_t {
  atmega328p::package::mlf32::body_width_min_um = 4900 , atmega328p::package::mlf32::body_width_nominal_um = 5000 , atmega328p::package::mlf32::body_width_max_um = 5100 , atmega328p::package::mlf32::overall_height_min_um = 800 ,
  atmega328p::package::mlf32::lead_pitch_um = 500
}
enum  : uint32_t {
  atmega328p::package::mlf32::overall_height_nominal_um = 0 , atmega328p::package::mlf32::overall_height_max_um = 1000 , atmega328p::package::mlf32::exposed_pad_width_min_um = 2950 , atmega328p::package::mlf32::exposed_pad_width_nominal_um = 3100 ,
  atmega328p::package::mlf32::exposed_pad_width_max_um = 3250 , atmega328p::package::mlf32::exposed_pad_length_min_um = 2950 , atmega328p::package::mlf32::exposed_pad_length_nominal_um = 3100 , atmega328p::package::mlf32::exposed_pad_length_max_um = 3250 ,
  atmega328p::package::mlf32::land_pad_width_um = 0 , atmega328p::package::mlf32::land_pad_length_um = 0
}
enum  : uint8_t {
  atmega328p::package::unspecified::type_id = 0 , atmega328p::package::unspecified::pin_count = 0 , atmega328p::package::unspecified::adc_channel_count = 0 , atmega328p::package::unspecified::has_adc6 = 0 ,
  atmega328p::package::unspecified::has_adc7 = 0 , atmega328p::package::unspecified::has_exposed_pad = 0 , atmega328p::package::unspecified::exposed_pad_grounded = 0
}
enum  : uint8_t { atmega328p::package::supported_package_count = 4 }

Variables

static const Type atmega328p::package::selected_type = Type::Unspecified
static const MLF32Style atmega328p::package::selected_mlf32_style = MLF32Style::Unspecified

Detailed Description

Package characteristics and selected physical package.