API Reference
Complete reference documentation for all public methods and types in the AS5047U driver.
Source Code
Core Class
AS5047U<SpiType>
Main driver class for interfacing with the AS5047U magnetic encoder.
Template Parameter: SpiType - Type implementing as5047u::SpiInterface<SpiType>
Location: inc/as5047u.hpp#L78
Constructor:
1
| explicit AS5047U(SpiType& bus, FrameFormat format = AS5047U_CFG::DEFAULT_FRAME_FORMAT) noexcept;
|
Location: inc/as5047u.hpp#L91
Methods
| Method |
Signature |
Location |
SetFrameFormat() |
void SetFrameFormat(FrameFormat format) noexcept |
src/as5047u.cpp#L16 |
Angle Reading
| Method |
Signature |
Location |
GetAngle() |
uint16_t GetAngle(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L33 |
GetRawAngle() |
uint16_t GetRawAngle(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L48 |
Velocity Reading
| Method |
Signature |
Location |
GetVelocity() |
int16_t GetVelocity(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L63 |
GetVelocityDegPerSec() |
float GetVelocityDegPerSec(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L79 |
GetVelocityRadPerSec() |
float GetVelocityRadPerSec(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L84 |
GetVelocityRPM() |
float GetVelocityRPM(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L89 |
Diagnostics
Configuration
| Method |
Signature |
Location |
GetZeroPosition() |
uint16_t GetZeroPosition(uint8_t retries = AS5047U_CFG::CRC_RETRIES) const |
src/as5047u.cpp#L135 |
SetZeroPosition() |
bool SetZeroPosition(uint16_t angle_lsb, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L162 |
SetDirection() |
bool SetDirection(bool clockwise, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
inc/as5047u.hpp#L214 |
SetABIResolution() |
bool SetABIResolution(uint8_t resolution_bits, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L171 |
SetUVWPolePairs() |
bool SetUVWPolePairs(uint8_t pairs, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L179 |
SetIndexPulseLength() |
bool SetIndexPulseLength(uint8_t lsb_len, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L187 |
ConfigureInterface() |
bool ConfigureInterface(bool abi, bool uvw, bool pwm, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L205 |
SetDynamicAngleCompensation() |
bool SetDynamicAngleCompensation(bool enable, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L225 |
SetAdaptiveFilter() |
bool SetAdaptiveFilter(bool enable, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L232 |
SetFilterParameters() |
bool SetFilterParameters(uint8_t k_min, uint8_t k_max, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L239 |
Set150CTemperatureMode() |
bool Set150CTemperatureMode(bool enable, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L250 |
SetHysteresis() |
bool SetHysteresis(AS5047U_REG::SETTINGS3::Hysteresis hysteresis, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L315 |
GetHysteresis() |
AS5047U_REG::SETTINGS3::Hysteresis GetHysteresis() const |
src/as5047u.cpp#L322 |
SetAngleOutputSource() |
bool SetAngleOutputSource(AS5047U_REG::SETTINGS2::AngleOutputSource source, uint8_t retries = AS5047U_CFG::CRC_RETRIES) |
src/as5047u.cpp#L333 |
GetAngleOutputSource() |
AS5047U_REG::SETTINGS2::AngleOutputSource GetAngleOutputSource() const |
src/as5047u.cpp#L340 |
OTP Programming
Utility
Types
Enumerations
| Type |
Values |
Location |
FrameFormat |
SPI_16, SPI_24, SPI_32 |
inc/as5047u_types.hpp#L15 |
AS5047U_Error |
None, AgcWarning, MagHalf, CrcError, FramingError, CommandError, WatchdogError, OffCompError, CordicOverflow |
inc/as5047u.hpp#L32 |
Structures
Navigation
⬅️ Configuration | Next: Examples ➡️ | Back to Index