![]() |
![]() |
|---|---|
USB 2.0 USB 3.x GigE |
- |
Syntax
INT is_Configuration (UINT nCommand, void* pParam, UINT cbSizeOfParam)
Beschreibung
Moderne Prozessoren besitzen verschiedene Betriebszustände, sog. C-states, die sich durch unterschiedlichen Strombedarf auszeichnen. Wählt das Betriebssystem einen Betriebszustand mit niedrigerem Stromverbrauch (ungleich C0), kann die USB-Übertragungsleistung beeinträchtigt werden.
Mit den Funktionsparametern IS_CONFIG_CPU_IDLE_STATES_CMD… können diese Betriebszustände mit niedrigerem Stromverbrauch unterbunden werden, um die USB-Übertragungsleistung zu verbessern. Dazu ändert der uEye-Treiber das aktuelle Energieschema des Betriebssystems beim Öffnen der ersten USB uEye Kamera. Nach dem Schließen der letzten USB uEye Kamera stellt der uEye-Treiber die ursprünglichen Einstellungen wieder her. Die Einstellungen gelten jeweils nur für den aktuellen Benutzer.
Die Einstellungen für die Betriebszustände des Prozessors sind nur auf Windows-Betriebssystemen verfügbar.
|
Je nach Hardware-Konstellation kann unter Umständen bei PCI-Express eine bessere Performance erreicht werden, indem die Verbindungszustand-Energieverwaltung bei Akku- und Netzbetrieb auf "Aus" gestellt wird. |
Über den Übergabeparameter nCommand wird dabei der Funktionsmodus gewählt. Der Übergabeparameter pParam ist abhängig vom Funktionsmodus unterschiedlich belegt; bei Funktionen zum Setzen oder Rücklesen eines Wertes enthält pParam einen Zeiger auf eine Variable vom Typ UINT. Die Größe des Speicherbereichs, auf den pParam verweist, wird im Übergabeparameter cbSizeOfParam angegeben.
Übergabeparameter
hCam |
Handle auf Kamera |
pParam |
Zeiger auf Funktionsparameter, der abhängig von nCommand unterschiedlich belegt ist. |
cbSizeOfParam |
Größe des Speicherbereichs in Byte, auf den pParam verweist. |
Inhalt der Struktur CONFIGURATION_CAPS
INT |
IS_CONFIG_CPU_IDLE_STATES_CAP_SUPPORTED |
Funktionsparameter zum Einstellen der Betriebszustände des Prozessors werden unterstützt. |
Inhalt der Struktur CONFIGURATION_SEL
INT |
IS_CONFIG_CPU_IDLE_STATES_BIT_AC_VALUE |
Prozessor-Betriebszustände für den Betrieb via Netzteil setzen/wiederherstellen. |
INT |
IS_CONFIG_CPU_IDLE_STATES_BIT_DC_VALUE |
Prozessor-Betriebszustände für den Betrieb via Akku setzen/wiederherstellen. |
Siehe auch
INT nCurrentCpuStates = 0;
INT nRet = is_Configuration(IS_CONFIG_CPU_IDLE_STATES_CMD_GET_ENABLE,
(void*)&nCurrentCpuStates, sizeof(nCurrentCpuStates));
if (nRet == IS_SUCCESS)
{
if ((nCurrentCpuStates & IS_CONFIG_CPU_IDLE_STATES_BIT_AC_VALUE) == 0)
{
// The CPU idle states for mains power is already deactivated
}
if ((nCurrentCpuStates & IS_CONFIG_CPU_IDLE_STATES_BIT_DC_VALUE) == 0)
{
// The CPU idle states for battery power is already deactivated
}
}
UINT nCpuStates = IS_CONFIG_CPU_IDLE_STATES_BIT_AC_VALUE | IS_CONFIG_CPU_IDLE_STATES_BIT_DC_VALUE;
INT nRet = is_Configuration(IS_CONFIG_CPU_IDLE_STATES_CMD_SET_DISABLE_ON_OPEN,
(void*)&nCpuStates, sizeof(nCpuStates));
if (nRet == IS_SUCCESS)
{
nCpuStates = 0;
nRet = is_Configuration(IS_CONFIG_CPU_IDLE_STATES_CMD_GET_DISABLE_ON_OPEN,
(void*)&nCpuStates, sizeof(nCpuStates));
if (nRet == IS_SUCCESS)
{
if (nCpuStates & IS_CONFIG_CPU_IDLE_STATES_BIT_AC_VALUE)
{
// CPU idle states for mains power are deactivated when camera is opened
}
if (nCpuStates & IS_CONFIG_CPU_IDLE_STATES_BIT_DC_VALUE)
{
// CPU idle states for battery power are deactivated when camera is opened
}
}
}