|
Motion Master 6.0.0-alpha.86
Next-generation motion control software
|
One register of the Kübler encoder. More...
#include <kuebler_registers.h>
Public Attributes | |
| uint8_t | address = 0 |
| Register address, as OS command 19 carries it in byte 2. | |
| uint8_t | bits = 0 |
Width in bits: 8, 16 or 32. See kMaxKueblerRegisterBytes. | |
| std::string_view | name |
| The vendor's own name for it. | |
| KueblerAccess | access {KueblerAccess::kReadOnly} |
| bool | implemented = false |
| KueblerFormat | format {KueblerFormat::kUnsigned} |
| std::string_view | definition |
One register of the Kübler encoder.
| KueblerAccess mm::node::somanet::KueblerRegister::access {KueblerAccess::kReadOnly} |
| uint8_t mm::node::somanet::KueblerRegister::address = 0 |
Register address, as OS command 19 carries it in byte 2.
| uint8_t mm::node::somanet::KueblerRegister::bits = 0 |
Width in bits: 8, 16 or 32. See kMaxKueblerRegisterBytes.
| std::string_view mm::node::somanet::KueblerRegister::definition |
The vendor's bit definitions, clauses joined with "; ". The only place a bit field's meaning is recorded, so it is carried verbatim rather than summarised. A register the draft does not document carries where it comes from instead, because a reader has nowhere else to look.
| KueblerFormat mm::node::somanet::KueblerRegister::format {KueblerFormat::kUnsigned} |
| bool mm::node::somanet::KueblerRegister::implemented = false |
Whether the encoder implements it, so that a client marks a register rather than offering it as working. The draft states this per row and is the starting point, but it is wrong on several rows: the encoder calibration sequence reads and writes registers the draft calls not implemented. Where the two disagree, this flag follows the encoder.
| std::string_view mm::node::somanet::KueblerRegister::name |
The vendor's own name for it.