ATmega328p
Hardware definitions
Loading...
Searching...
No Matches
Clock.h
Go to the documentation of this file.
1
5
6#ifndef ATMEGA328P_DEFINITIONS_CLOCK_H
7#define ATMEGA328P_DEFINITIONS_CLOCK_H
8
9#include <stdint.h>
10#include "Config.h"
11#include "Pin.h"
12
14namespace atmega328p
15{
17 namespace clock
18 {
29
31 enum class Domain : uint8_t
32 {
37 };
38
53
55 enum class SUTCode : uint8_t
56 {
57 SUT00 = 0,
58 SUT01 = 1,
59 SUT10 = 2,
60 SUT11 = 3,
61 };
62
64 enum class Prescaler : uint16_t
65 {
66 Divide1 = 1,
67 Divide2 = 2,
68 Divide4 = 4,
69 Divide8 = 8,
70 Divide16 = 16,
71 Divide32 = 32,
72 Divide64 = 64,
73 Divide128 = 128,
74 Divide256 = 256,
75 };
76
77 enum : uint32_t
78 {
87 };
88
89 enum : uint16_t
90 {
97 };
98
99 enum : uint32_t
100 {
106 };
107
108 enum : uint8_t
109 {
120 };
121
122 enum : uint16_t
123 {
128 };
129
130 enum : int16_t
131 {
136 };
137 }
138}
139
140#endif
Selects the ATmega328P package and operating grade.
Logical GPIO pin and port identifiers.
Clock source and prescaler definitions.
Definition Clock.h:18
@ standard_max_cpu_hz_at_2v7
Standard max CPU hz at 2v7.
Definition Clock.h:102
@ automotive_max_cpu_hz_at_4v5
Automotive max CPU hz at 4v5.
Definition Clock.h:105
@ standard_max_cpu_hz_at_4v5
Standard max CPU hz at 4v5.
Definition Clock.h:103
@ standard_max_cpu_hz_at_1v8
Standard max CPU hz at 1v8.
Definition Clock.h:101
@ automotive_max_cpu_hz_at_2v7
Automotive max CPU hz at 2v7.
Definition Clock.h:104
@ family_datasheet_internal_rc_user_calibrated_max_hz
Family datasheet internal RC user calibrated max (Hz).
Definition Clock.h:82
@ factory_default_cpu_hz
Factory default CPU (Hz).
Definition Clock.h:86
@ family_datasheet_internal_rc_user_calibrated_min_hz
Family datasheet internal RC user calibrated min (Hz).
Definition Clock.h:81
@ internal_128khz_rc_hz
Internal 128khz RC (Hz).
Definition Clock.h:83
@ internal_rc_nominal_hz
Internal RC nominal (Hz).
Definition Clock.h:80
@ factory_default_oscillator_hz
Factory default oscillator (Hz).
Definition Clock.h:85
@ timer2_async_crystal_hz
Timer2 async crystal (Hz).
Definition Clock.h:84
@ internal_calibrated_rc_hz
Internal calibrated RC (Hz).
Definition Clock.h:79
Domain
Clock domains.
Definition Clock.h:32
@ CPU
CPU clock domain.
Definition Clock.h:33
@ ADC
ADC clock domain.
Definition Clock.h:36
@ Flash
Flash memory clock domain.
Definition Clock.h:35
@ IO
I/O peripheral clock domain.
Definition Clock.h:34
CKSELCode
Clock-source fuse encodings.
Definition Clock.h:41
@ LowPowerCrystalMaximum
0x0F - Low-power crystal selection, upper code.
Definition Clock.h:51
@ LowFrequencyCrystalMaximum
0x05 - Low-frequency crystal selection, upper code.
Definition Clock.h:47
@ LowPowerCrystalMinimum
0x08 - Low-power crystal selection, lower code.
Definition Clock.h:50
@ LowFrequencyCrystalMinimum
0x04 - Low-frequency crystal selection, lower code.
Definition Clock.h:46
@ FullSwingCrystalMinimum
0x06 - Full-swing crystal selection, lower code.
Definition Clock.h:48
@ Reserved
0x01 - Reserved clock selection.
Definition Clock.h:43
@ FullSwingCrystalMaximum
0x07 - Full-swing crystal selection, upper code.
Definition Clock.h:49
@ timer2_tosc1_pin_value
Timer2 tosc1 logical pin encoding.
Definition Clock.h:110
@ internal_rc_factory_calibration_provided
Internal RC factory calibration provided.
Definition Clock.h:114
@ osccal_max_value
OSCCAL max value.
Definition Clock.h:117
@ timer2_tosc2_pin_value
Timer2 tosc2 logical pin encoding.
Definition Clock.h:111
@ internal_rc_frequency_depends_on_voltage_and_temperature
Internal RC frequency depends on voltage and temperature.
Definition Clock.h:113
@ internal_rc_factory_accuracy_percent
Internal RC factory accuracy percent.
Definition Clock.h:118
@ osccal_width_bits
OSCCAL width width (bits).
Definition Clock.h:116
@ internal_rc_user_accuracy_percent
Internal RC user accuracy percent.
Definition Clock.h:119
@ clock_output_pin_value
Clock output logical pin encoding.
Definition Clock.h:112
@ internal_rc_user_calibration_supported
Internal RC user calibration supported.
Definition Clock.h:115
Prescaler
Clock prescaler selections.
Definition Clock.h:65
@ Divide64
64 - Divide system clock by 64.
Definition Clock.h:72
@ Divide4
4 - Divide system clock by 4.
Definition Clock.h:68
@ Divide16
16 - Divide system clock by 16.
Definition Clock.h:70
@ Divide1
1 - Divide system clock by 1.
Definition Clock.h:66
@ Divide8
8 - Divide system clock by 8.
Definition Clock.h:69
@ Divide128
128 - Divide system clock by 128.
Definition Clock.h:73
@ Divide32
32 - Divide system clock by 32.
Definition Clock.h:71
@ Divide256
256 - Divide system clock by 256.
Definition Clock.h:74
@ Divide2
2 - Divide system clock by 2.
Definition Clock.h:67
SUTCode
Startup-time fuse encodings.
Definition Clock.h:56
@ SUT11
3 - Startup time encoding 11.
Definition Clock.h:60
@ SUT10
2 - Startup time encoding 10.
Definition Clock.h:59
@ SUT01
1 - Startup time encoding 01.
Definition Clock.h:58
@ SUT00
0 - Startup time encoding 00.
Definition Clock.h:57
@ internal_128khz_rc_nominal_vcc_mv
Internal 128khz RC nominal VCC (mV).
Definition Clock.h:127
@ internal_rc_user_min_vcc_mv
Internal RC user min VCC (mV).
Definition Clock.h:125
@ internal_rc_factory_calibration_vcc_mv
Internal RC factory calibration VCC (mV).
Definition Clock.h:124
@ internal_rc_user_max_vcc_mv
Internal RC user max VCC (mV).
Definition Clock.h:126
Source
Clock or interrupt source identifiers.
Definition Clock.h:21
@ ExternalClock
External clock on XTAL1.
Definition Clock.h:22
@ Internal128kHzRC
Internal nominal 128 kHz RC oscillator.
Definition Clock.h:27
@ FullSwingCrystal
Full-swing crystal oscillator.
Definition Clock.h:24
@ InternalCalibratedRC
Calibrated internal RC oscillator.
Definition Clock.h:26
@ LowFrequencyCrystal
Low-frequency crystal oscillator.
Definition Clock.h:25
@ LowPowerCrystal
Low-power crystal oscillator.
Definition Clock.h:23
@ internal_rc_factory_calibration_temperature_c
Internal RC factory calibration temperature c.
Definition Clock.h:132
@ internal_128khz_rc_nominal_temperature_c
Internal 128khz RC nominal temperature c.
Definition Clock.h:135
@ internal_rc_user_max_temperature_c
Internal RC user max temperature c.
Definition Clock.h:134
@ internal_rc_user_min_temperature_c
Internal RC user min temperature c.
Definition Clock.h:133
@ startup_delay_corrected_from_14_to_19_ck
Startup delay corrected from 14 to 19 ck.
Definition Clock.h:96
@ factory_default_divisor
Factory default divisor.
Definition Clock.h:91
@ rstdisbl_sut00_additional_delay_ms
RSTDISBL sut00 additional delay (ms).
Definition Clock.h:95
@ system_prescaler_count
Number of system prescaler.
Definition Clock.h:92
@ factory_default_startup_additional_delay_ms
Factory default startup additional delay (ms).
Definition Clock.h:94
@ startup_delay_from_reset_cycles
Startup delay from reset (clock cycles).
Definition Clock.h:93
Device-specific definitions for the ATmega328P.
Definition ADC.h:14