|
Motion Master 6.0.0-alpha.86
Next-generation motion control software
|
One row of a register map — usually one address, sometimes a printed range. More...
#include <ic_haus_registers.h>
Public Member Functions | |
| std::span< const IcHausField > | namedFields () const |
| The fields this row names, most significant bit first. | |
| std::string | layout () const |
The row as the datasheet prints it — field names with their bit slices, joined with " | ". Derived rather than stored, so it can never disagree with fields. | |
Public Attributes | |
| uint8_t | address = 0 |
| The address, or the first of a range. | |
| uint8_t | lastAddress = 0 |
| bool | reserved = false |
| The whole row is reserved and names no fields. | |
| bool | spiOnly = false |
| std::array< IcHausField, kMaxFieldsPerRegister > | fields {} |
Only the first fieldCount count. | |
| uint8_t | fieldCount = 0 |
How many of fields this row actually names. | |
One row of a register map — usually one address, sometimes a printed range.
| std::string mm::node::somanet::IcHausRegister::layout | ( | ) | const |
The row as the datasheet prints it — field names with their bit slices, joined with " | ". Derived rather than stored, so it can never disagree with fields.
|
inline |
The fields this row names, most significant bit first.
| uint8_t mm::node::somanet::IcHausRegister::address = 0 |
The address, or the first of a range.
| uint8_t mm::node::somanet::IcHausRegister::fieldCount = 0 |
How many of fields this row actually names.
| std::array<IcHausField, kMaxFieldsPerRegister> mm::node::somanet::IcHausRegister::fields {} |
Only the first fieldCount count.
| uint8_t mm::node::somanet::IcHausRegister::lastAddress = 0 |
The last address of the range, equal to address for the ordinary single-address row. The datasheets print a block of identical rows once (0x30 … 0x3F RESERVED, the sixteen USER_EXCHANGE_REGISTERS at 0x60-0x6F), and collapsing them the same way keeps the transcription honest instead of inventing fifteen rows the vendor never wrote.
| bool mm::node::somanet::IcHausRegister::reserved = false |
The whole row is reserved and names no fields.
| bool mm::node::somanet::IcHausRegister::spiOnly = false |
Reachable over SPI only, so OS command 0 cannot touch it. True for the iC-MU's 0x80-0xAF, which the datasheet marks "access on address space SER > 0x7F only via SPI interface possible" — a client should show these rather than offer them.