IDS Peak comfortSDK, genericSDK, IPL, and AFL developer manuals are external documents. Please contact us if you need them.
This function is supported by the following models from firmware version 3.20 on: •PCB version uEye+ LE USB 3.1 Rev. 1.2 •uEye+ LE USB 3.1 Rev. 1.2 AF •uEye+ ACP USB 3 •uEye+ ACP GigE |
Controls the endianness (byte order) of the I2C register address on the I2C bus. If you set "BigEndian", the most significant byte of the register address will be sent first. If you set "LittleEndian", the least significant byte of the register address will be sent first.
If I2CRegisterAddressLength is 0 or 1, I2CRegisterAddressEndianness will not have any impact.
Name |
I2CRegisterAddressEndianness |
Category |
|
Interface |
Enumeration |
Access |
Read/Write |
Unit |
- |
Visibility |
Expert |
Values |
BigEndian LittleEndian |
Standard |
IDS |
Availability uEye+ |
|
Availability uEye |
|
Values description
•BigEndian: the most significant byte of the register address is sent first. This feature is only supported by uEye+ cameras (GV and U3 models).
•LittleEndian: the least significant byte of the register address is sent first.
Code example
C++
// Determine the current entry of I2CRegisterAddressEndianness
std::string value = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("I2CRegisterAddressEndianess")->CurrentEntry()->SymbolicValue();
// Get a list of all available entries of I2CRegisterAddressEndianness
auto allEntries = nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("I2CRegisterAddressEndianess")->Entries();
std::vector<std::shared_ptr<peak::core::nodes::EnumerationEntryNode>> availableEntries;
for(const auto & entry : allEntries)
{
if ((entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotAvailable)
&& (entry->AccessStatus()!=peak::core::nodes::NodeAccessStatus::NotImplemented))
{
availableEntries.emplace_back(entry);
}
}
// Set I2CRegisterAddressEndianness to "BigEndian"
nodeMapRemoteDevice->FindNode<peak::core::nodes::EnumerationNode>("I2CRegisterAddressEndianess")->SetCurrentEntry("BigEndian");
C#
// Determine the current entry of I2CRegisterAddressEndianness
string value = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("I2CRegisterAddressEndianess").CurrentEntry().SymbolicValue();
// Get a list of all available entries of I2CRegisterAddressEndianness
allEntries = nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("I2CRegisterAddressEndianess").Entries();
List<string> availableEntries = new List<string>();
for(int i = 0; i < allEntries.Count(); ++i)
{
if ((allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotAvailable)
&& (allEntries[i].AccessStatus() != peak.core.nodes.NodeAccessStatus.NotImplemented))
{
availableEntries.Add(allEntries[i].SymbolicValue());
}
}
// Set I2CRegisterAddressEndianness to "BigEndian"
nodeMapRemoteDevice.FindNode<peak.core.nodes.EnumerationNode>("I2CRegisterAddressEndianess").SetCurrentEntry("BigEndian");
Python
# Determine the current entry of I2CRegisterAddressEndianness (str)
value = nodeMapRemoteDevice.FindNode("I2CRegisterAddressEndianess").CurrentEntry().SymbolicValue()
# Get a list of all available entries of I2CRegisterAddressEndianness
allEntries = nodeMapRemoteDevice.FindNode("I2CRegisterAddressEndianess").Entries()
availableEntries = []
for entry in allEntries:
if (entry.AccessStatus() != ids_peak.NodeAccessStatus_NotAvailable
and entry.AccessStatus() != ids_peak.NodeAccessStatus_NotImplemented):
availableEntries.append(entry.SymbolicValue())
# Set I2CRegisterAddressEndianness to "BigEndian" (str)
nodeMapRemoteDevice.FindNode("I2CRegisterAddressEndianess").SetCurrentEntry("BigEndian")