35#ifndef ESP32_AS5047U_ENABLE_DETAILED_SPI_LOGGING
36#define ESP32_AS5047U_ENABLE_DETAILED_SPI_LOGGING 1
48 static constexpr uint8_t
MISO = 13;
49 static constexpr uint8_t
MOSI = 11;
50 static constexpr uint8_t
SCLK = 12;
51 static constexpr uint8_t
CS = 10;
63 static constexpr int8_t
ABI_A = -1;
64 static constexpr int8_t
ABI_B = -1;
86 static constexpr uint8_t
MODE = 1;
193 "SPI frequency exceeds AS5047U maximum of 10MHz");
196 "AS5047U requires SPI Mode 1 (CPOL=0, CPHA=1)");
199 "AS5047U is a 14-bit encoder");
202 "Counts per revolution must match 2^RESOLUTION_BITS");
207#define AS5047U_VALIDATE_GPIO(pin) \
208 static_assert((pin) >= 0 && (pin) < 30, "Invalid GPIO pin number for ESP32-C6")
Definition esp32_as5047u_test_config.hpp:39
Application-specific Configuration.
Definition esp32_as5047u_test_config.hpp:171
static constexpr bool ENABLE_DEBUG_LOGGING
Enable detailed debug logs.
Definition esp32_as5047u_test_config.hpp:173
static constexpr bool ENABLE_SPI_LOGGING
Enable SPI transaction logs.
Definition esp32_as5047u_test_config.hpp:174
static constexpr uint8_t MAX_ERROR_COUNT
Maximum errors before failsafe.
Definition esp32_as5047u_test_config.hpp:182
static constexpr bool ENABLE_PERFORMANCE_MONITORING
Enable performance metrics.
Definition esp32_as5047u_test_config.hpp:177
static constexpr uint16_t STATS_REPORT_INTERVAL_MS
Statistics reporting interval.
Definition esp32_as5047u_test_config.hpp:178
static constexpr bool ENABLE_AUTO_RECOVERY
Enable automatic error recovery.
Definition esp32_as5047u_test_config.hpp:181
Control GPIO Pins for AS5047U.
Definition esp32_as5047u_test_config.hpp:60
static constexpr int8_t PWM_PIN
PWM output pin (W pin)
Definition esp32_as5047u_test_config.hpp:62
static constexpr int8_t ABI_B
ABI incremental output B.
Definition esp32_as5047u_test_config.hpp:64
static constexpr int8_t INDEX_PIN
Index pulse output (U pin, once per revolution)
Definition esp32_as5047u_test_config.hpp:61
static constexpr int8_t ABI_A
ABI incremental output A.
Definition esp32_as5047u_test_config.hpp:63
Diagnostic Thresholds.
Definition esp32_as5047u_test_config.hpp:148
static constexpr uint16_t POLL_INTERVAL_MS
Diagnostic polling interval (ms)
Definition esp32_as5047u_test_config.hpp:149
static constexpr uint8_t CORDIC_OVERFLOW_LIMIT
CORDIC overflow error threshold.
Definition esp32_as5047u_test_config.hpp:151
static constexpr uint8_t MAX_RETRY_COUNT
Maximum communication retries.
Definition esp32_as5047u_test_config.hpp:150
Encoder Resolution and Specifications.
Definition esp32_as5047u_test_config.hpp:99
static constexpr uint16_t RESOLUTION_BITS
Angular resolution in bits.
Definition esp32_as5047u_test_config.hpp:100
static constexpr float MAX_ROTATION_SPEED_RPM
Maximum rotation speed (RPM)
Definition esp32_as5047u_test_config.hpp:103
static constexpr uint16_t COUNTS_PER_REV
2^14 counts per revolution
Definition esp32_as5047u_test_config.hpp:101
static constexpr float DEGREES_PER_COUNT
Degrees per LSB (~0.022°)
Definition esp32_as5047u_test_config.hpp:102
SPI Communication Parameters.
Definition esp32_as5047u_test_config.hpp:84
static constexpr uint32_t FREQUENCY
4MHz SPI frequency (conservative default)
Definition esp32_as5047u_test_config.hpp:85
static constexpr uint8_t CS_ENA_POSTTRANS
Definition esp32_as5047u_test_config.hpp:89
static constexpr uint8_t MODE
SPI Mode 1 (CPOL=0, CPHA=1)
Definition esp32_as5047u_test_config.hpp:86
static constexpr uint8_t SPI_HOST_ID
SPI host: 2 = SPI2_HOST, 3 = SPI3_HOST. Try 3 if SCLK does not toggle on your board.
Definition esp32_as5047u_test_config.hpp:91
static constexpr uint8_t CS_ENA_PRETRANS
CS asserted N clock cycles before transaction.
Definition esp32_as5047u_test_config.hpp:88
static constexpr uint8_t QUEUE_SIZE
Transaction queue size.
Definition esp32_as5047u_test_config.hpp:87
SPI Configuration for ESP32-C6.
Definition esp32_as5047u_test_config.hpp:47
static constexpr uint8_t CS
GPIO10 - Chip Select (active low)
Definition esp32_as5047u_test_config.hpp:51
static constexpr uint8_t SCLK
GPIO12 - SPI Clock (SCLK)
Definition esp32_as5047u_test_config.hpp:50
static constexpr uint8_t MISO
GPIO13 - SPI MISO (Master In Slave Out)
Definition esp32_as5047u_test_config.hpp:48
static constexpr uint8_t MOSI
GPIO11 - SPI MOSI (Master Out Slave In)
Definition esp32_as5047u_test_config.hpp:49
Supply Voltage Specifications (volts)
Definition esp32_as5047u_test_config.hpp:112
static constexpr float VDD_NOM
Nominal VDD voltage (V)
Definition esp32_as5047u_test_config.hpp:114
static constexpr float VDD5V_MIN
Minimum 5V supply voltage (V)
Definition esp32_as5047u_test_config.hpp:116
static constexpr float VDD_MAX
Maximum VDD voltage (V)
Definition esp32_as5047u_test_config.hpp:115
static constexpr float VDD_MIN
Minimum VDD voltage (V)
Definition esp32_as5047u_test_config.hpp:113
static constexpr float VDD5V_MAX
Maximum 5V supply voltage (V)
Definition esp32_as5047u_test_config.hpp:118
static constexpr float VDD5V_NOM
Nominal 5V supply voltage (V)
Definition esp32_as5047u_test_config.hpp:117
Temperature Specifications (celsius)
Definition esp32_as5047u_test_config.hpp:126
static constexpr int16_t WARNING_THRESHOLD
Temperature warning threshold (°C)
Definition esp32_as5047u_test_config.hpp:129
static constexpr int16_t OPERATING_MAX
Maximum operating temperature (°C)
Definition esp32_as5047u_test_config.hpp:128
static constexpr int16_t OPERATING_MIN
Minimum operating temperature (°C)
Definition esp32_as5047u_test_config.hpp:127
Test Configuration.
Definition esp32_as5047u_test_config.hpp:159
static constexpr float ANGLE_TOLERANCE_DEG
Angle reading tolerance (degrees)
Definition esp32_as5047u_test_config.hpp:163
static constexpr uint16_t ANGLE_READ_COUNT
Number of angle reads per test.
Definition esp32_as5047u_test_config.hpp:160
static constexpr uint16_t VELOCITY_SAMPLE_MS
Velocity sampling interval (ms)
Definition esp32_as5047u_test_config.hpp:161
static constexpr uint16_t TEST_DURATION_MS
Test duration (ms)
Definition esp32_as5047u_test_config.hpp:162
Timing Parameters.
Definition esp32_as5047u_test_config.hpp:137
static constexpr uint16_t POWER_ON_DELAY_MS
Power-on initialization delay (ms)
Definition esp32_as5047u_test_config.hpp:138
static constexpr uint16_t READOUT_LATENCY_US
Read latency for angle data (μs)
Definition esp32_as5047u_test_config.hpp:139
static constexpr uint16_t INTER_FRAME_US
Minimum time between SPI frames (μs)
Definition esp32_as5047u_test_config.hpp:140