   if (!alarme_ativo){
     standBy();
     modoTeste();
+  }
+}
+
+void geraPWM(byte pot, unsigned long *inicio, byte saida, String nome){
+  unsigned long ativo = map(analogRead(pot), 0, 1023, 0, ciclo_PWM);
+  unsigned long inativo = ciclo_PWM - ativo;
+  if (millis() > *inicio && millis() <= (*inicio + ativo)){
+    liga(saida, nome);
+    // digitalWrite(led, HIGH);
+  } else if (millis() > (*inicio + ativo) && millis() < (*inicio + ciclo_PWM)){
+    desliga(saida, nome);
+    // digitalWrite(led, LOW);
+  } else if (millis() >= (*inicio + ciclo_PWM)) {
+    *inicio = millis();
   }
 }
 

/*
 EMP-B Due
 V0.1 © 03/08/2014 William Koch

 Controlador de Empacotadeira com Arduino Due.
*/

    const byte bt_geral = 22; // Entrada do botão de Liga/Desliga Geral
    const byte bt_dosador = 24; // Entrada do botão de Liga/Desliga do Dosador
    const byte bt_datador = 26; // Entrada do botão de Liga/Desliga do Datador
    const byte sensor_porta = 48; // Sensor de Segurança da Porta Frontal
    const byte sensor_painel = 50; // Sensor de Segurança da Porta do Painel
    const byte sensor_maquina = 52; // Sensor de Segurança da Porta da Máquina
    const byte pot_solda_vertical = A0; // Potenciômetro da Solda Vertical
    const byte pot_solda_horizontal = A1; // Potenciômetro da Solda Vertical
    const byte pot_solda_datador = A2; // Potenciômetro da Solda Vertical
  // Saídas
    const byte led_geral = 23; // Saída Geral
    const byte led_dosador = 25; // Saída do Dosador
    const byte led_datador = 27; // Saída do Datador
    const byte solda_vertical = 33; // Saída da Solda Vertical
    const byte solda_horizontal = 35; // Saída da Solda Horizontal
    const byte solda_datador = 37; // Saída da Solda do Datador


// Variáveis
  // Configurações
    #define ModoBotoes INPUT_PULLUP // INPUT ou INPUT_PULLUP
    #define ModoLeds OUTPUT
    #define ALTO LOW // Deve ser invertido para INPUT_PULLUP
    #define BAIXO HIGH // Deve ser invertido para INPUT_PULLUP
    #define LIGA HIGH
    #define DESLIGA LOW
    #define VERDADEIRO true
