Compartilhar via


IOCTL_PWM_PIN_SET_ACTIVE_DUTY_CYCLE_PERCENTAGE IOCTL (pwm.h)

Defina um valor de percentual de ciclo de direito desejado para o pino ou canal do controlador. O código de controle especifica a porcentagem como uma estrutura de PWM_PIN_SET_ACTIVE_DUTY_CYCLE_PERCENTAGE_INPUT .

Buffer de entrada

Um ponteiro para um buffer que contém um struct PWM_PIN_SET_ACTIVE_DUTY_CYCLE_PERCENTAGE_INPUT . Isso representa o percentual de ciclo de direitos desejado para o controlador PWM.

Comprimento do buffer de entrada

O tamanho, em bytes, do buffer de entrada.

Buffer de saída

Não é usado com esta operação, defina como NULL.

Comprimento do buffer de saída

Não usado com esta operação; definido como zero.

Comentários

Para executar essa operação, chame a função DeviceIoControl com os parâmetros a seguir.

BOOL 
   WINAPI 
   DeviceIoControl( (HANDLE)       hDevice,         // handle to device
                    (DWORD)        IOCTL_PWM_PIN_SET_ACTIVE_DUTY_CYCLE_PERCENTAGE, // dwIoControlCode(LPDWORD)      lpInBuffer,      // input buffer
                    (DWORD)        nInBufferSize,   // size of input buffer
                    (LPDWORD)      NULL,      // output buffer
                    (DWORD)        0,  // size of output buffer
                    (LPDWORD)      lpBytesReturned, // number of bytes returned
                    (LPOVERLAPPED) lpOverlapped );  // OVERLAPPED structure
Parâmetros Descrição
hDevice [in] Um identificador para o dispositivo. Para obter um identificador de dispositivo, chame a função CreateFile .
dwIoControlCode [in] O código de controle da operação. Use IOCTL_PWM_PIN_SET_ACTIVE_DUTY_CYCLE_PERCENTAGE para esta operação.
lpInBuffer Um ponteiro para um buffer que contém um struct PWM_PIN_SET_ACTIVE_DUTY_CYCLE_PERCENTAGE_INPUT . Isso representa o percentual de ciclo de direitos desejado para o controlador PWM.
nInBufferSize [in] O tamanho, em bytes, do buffer de entrada.
lpOutBuffer [out] Não é usado com esta operação, defina como NULL.
nOutBufferSize [in] Não usado com esta operação; definido como zero.
lpBytesReturned [out] LPDWORD

Um ponteiro para uma variável que recebe o tamanho dos dados armazenados no buffer de saída, em bytes.

Se o buffer de saída for muito pequeno, a chamada falhará, GetLastError retornará ERROR_INSUFFICIENT_BUFFER e lpBytesReturned será zero.

Se lpOverlapped for NULL, lpBytesReturned não poderá ser NULL. Mesmo quando uma operação não retorna dados de saída e lpOutBuffer for NULL, DeviceIoControl usará lpBytesReturned. Após essa operação, o valor de lpBytesReturned não terá sentido.

Se lpOverlapped não for NULL, lpBytesReturned poderá ser NULL. Se esse parâmetro não for NULL e a operação retornar dados, lpBytesReturned não terá sentido até que a operação sobreposta seja concluída. Para recuperar o número de bytes retornados, chame GetOverlappedResult. Se o parâmetro hDevice estiver associado a uma porta de conclusão de E/S, você poderá recuperar o número de bytes retornados chamando GetQueuedCompletionStatus.

lpOverlapped [in] LPOVERLAPPED

Um ponteiro para uma estrutura OVERLAPPED.

Se hDevice tiver sido aberto sem especificar FILE_FLAG_OVERLAPPED, lpOverlapped será ignorado.

Se hDevice tiver sido aberto com o sinalizador FILE_FLAG_OVERLAPPED, a operação será executada como uma operação sobreposta (assíncrona). Nesse caso, lpOverlapped deve apontar para uma estrutura OVERLAPPED válida que contenha um identificador para um objeto de evento. Caso contrário, a função falhará de maneiras imprevisíveis.

Em operações sobrepostas, DeviceIoControl retorna imediatamente e o objeto do evento é sinalizado quando a operação é concluída. Caso contrário, a função não será retornada até que a operação seja concluída ou ocorra um erro.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2016 [somente aplicativos da área de trabalho]
Cabeçalho pwm.h (inclua Pwm.h)

Confira também

DeviceIoControl