PF1550 Driver
API reference
Loading...
Searching...
No Matches
Classes | Namespaces
pf1550.hpp File Reference

Hardware-agnostic driver for the NXP PF1550 PMIC family. More...

#include <array>
#include <cstddef>
#include <cstdint>
#include <span>
#include "pf1550_diagnostics.hpp"
#include "pf1550_i2c_interface.hpp"
#include "pf1550_profiles.hpp"
#include "pf1550_registers.hpp"
#include "pf1550_voltage_tables.hpp"
#include "pf1550_version.h"
#include "../src/pf1550.ipp"
Include dependency graph for pf1550.hpp:

Go to the source code of this file.

Classes

class  pf1550::PF1550< BusType >
 CRTP-based PF1550 PMIC driver. More...
 

Namespaces

namespace  pf1550
 

Detailed Description

Hardware-agnostic driver for the NXP PF1550 PMIC family.

The PF1550 is a multi-rail power-management IC (3 bucks, 3 LDOs, Li-Ion charger, VSNVS backup LDO, OTP-programmable sequencing). Named register sequences for the Arduino Portenta H7 eval module live in pf1550_profiles.hpp; other hosts pass their own table to PF1550::ApplyProfile.

Architecture
  • Templated on a CRTP BusInterface so the same driver runs on STM32H7 HAL, ESP-IDF i2c-master, or a host stub for unit tests.
  • Header-only with a .ipp template implementation file.
  • Returns plain bool for success; persistent error_flags_ records the last failure category (see Error).
  • Diagnostic surface (ReadDiagnosticSnapshot, RunPowerSelfTest, interrupt clear helpers) for a host monitor thread.
Datasheet
  • Authoritative reference: NXP PF1550 Rev. 7 (29 September 2021).
  • Local extract: docs/datasheet/PF1550-i2c-register-reference.md.