delayMicroseconds()

[Funções Temporizadoras]

Descrição

Pausa o programa pela quantidade de tempo especificada como parâmetro (em microssegundos). Há mil microssegundos em um milissegundo, e um milhão de microssegundos em um segundo.

Atualmente, o maior valor que irá porduzir um delay preciso é 16383. Isso pode mudar em versões futuras do Arduino. Para delays mais longos que alguns milhares de microssegundos, você deve usar delay() em vez disso.

Sintaxe

delayMicroseconds(us)

Parâmetros

us: o número emm microssegundos para pausar o programa (unsigned int)

Retorna

Nada

Código de Exemplo

O código abaixo configura o pino 8 para funcionar como pino de saída. Ele então gera um trem de pulsos com período de 100 microssegundos.

int outPin = 8;               // pino digital 8

void setup() {
  pinMode(outPin, OUTPUT);    // configura o pino digital como saída
}

void loop() {
  digitalWrite(outPin, HIGH); // ativa o pino
  delayMicroseconds(50);      // pausa por 50 microssegundos
  digitalWrite(outPin, LOW);  // desativa o pino
  delayMicroseconds(50);      // pausa por 50 microssegundos
}

Notas e Advertências

Essa função funciona bastante precisamente para valores maiores que 3 microssegundos. Não é possível assegurar que delayMicroseconds() irá funcionar corretamente para valores menores.

A partir da versão Arduino 0018, delayMicroseconds() não mais desativa interrupções.

Ver Também

  • Linguagem delay()

  • Linguagem micros()

  • Linguagem millis()