Condividi tramite


IOCTL_PWM_CONTROLLER_GET_ACTUAL_PERIOD IOCTL (pwm.h)

Recupera il periodo di segnale di output effettivo del controller PwM (Pulse Width Modulation), in quanto viene misurato sui canali di output.

Buffer di input

Non usato con questa operazione; impostato su NULL.

Lunghezza del buffer di input

Non usato con questa operazione; impostato su zero.

Buffer di output

Puntatore a un buffer contenente un valore PWM_CONTROLLER_GET_ACTUAL_PERIOD_OUTPUT . Ciò rappresenta il periodo di segnale di output effettivo del controller PWM (Pulse Width Modulation), come sarebbe misurato sui canali di output.

Lunghezza del buffer di output

Dimensioni in byte del buffer di output.

Commenti

Per eseguire questa operazione, chiamare la funzione DeviceIoControl con i parametri seguenti.

BOOL 
   WINAPI 
   DeviceIoControl( (HANDLE)       hDevice,         // handle to device
                    (DWORD)        IOCTL_PWM_CONTROLLER_GET_ACTUAL_PERIOD, // dwIoControlCode(LPDWORD)      NULL,      // input buffer
                    (DWORD)        0,   // size of input buffer
                    (LPDWORD)      lpOutBuffer,     // output buffer
                    (DWORD)        nOutBufferSize,  // size of output buffer
                    (LPDWORD)      lpBytesReturned, // number of bytes returned
                    (LPOVERLAPPED) lpOverlapped );  // OVERLAPPED structure
Parametri Descrizione
hDevice [in] Handle per il dispositivo. Per ottenere un handle del dispositivo, chiamare la funzione CreateFile .
dwIoControlCode [in] Codice di controllo per l'operazione. Usare IOCTL_PWM_CONTROLLER_GET_ACTUAL_PERIOD per questa operazione.
lpInBuffer Non usato con questa operazione; impostato su NULL.
nInBufferSize [in] Non usato con questa operazione; impostato su zero.
lpOutBuffer [out] Puntatore a un buffer contenente un valore PWM_CONTROLLER_GET_ACTUAL_PERIOD_OUTPUT . Ciò rappresenta il periodo di segnale di output effettivo del controller PWM (Pulse Width Modulation), come sarebbe misurato sui canali di output.
nOutBufferSize [in] Dimensioni in byte del buffer di output.
lpBytesReturned [out] LPDWORD

Puntatore a una variabile che riceve le dimensioni dei dati archiviati nel buffer di output, in byte.

Se il buffer di output è troppo piccolo, la chiamata ha esito negativo, GetLastError restituisce ERROR_INSUFFICIENT_BUFFER e lpBytesReturned è zero.

Se lpOverlapped è NULL, lpBytesReturned non può essere NULL. Anche quando un'operazione non restituisce dati di output e lpOutBuffer è NULL, DeviceIoControl usa lpBytesReturned. Dopo un'operazione di questo tipo, il valore di lpBytesReturned è senza significato.

Se lpOverlapped non è NULL, lpBytesReturned può essere NULL. Se questo parametro non è NULL e l'operazione restituisce dati, lpBytesReturned è senza significato fino al completamento dell'operazione sovrapposta. Per recuperare il numero di byte restituiti, chiamare GetOverlappedResult. Se il parametro hDevice è associato a una porta di completamento di I/O, è possibile recuperare il numero di byte restituiti chiamando GetQueuedCompletionStatus.

lpOverlapped [in] LPOVERLAPPED

Puntatore a una struttura OVERLAPPED .

Se hDevice è stato aperto senza specificare FILE_FLAG_OVERLAPPED, lpOverlapped viene ignorato .

Se hDevice è stato aperto con il flag FILE_FLAG_OVERLAPPED , l'operazione viene eseguita come operazione sovrapposta (asincrona). In questo caso, lpOverlapped deve puntare a una struttura OVERLAPPED valida che contiene un handle a un oggetto evento. In caso contrario, la funzione non riesce in modi imprevedibili.

Per le operazioni sovrapposte, DeviceIoControl restituisce immediatamente e l'oggetto evento viene segnalato al termine dell'operazione. In caso contrario, la funzione non restituisce finché l'operazione non è stata completata o si verifica un errore.

Requisiti

Requisito Valore
Client minimo supportato Windows 10 [solo app desktop]
Server minimo supportato Windows Server 2016 [solo app desktop]
Intestazione pwm.h (include Pwm.h)

Vedi anche

Deviceiocontrol