'Lixeira não me toque v.1.0 'Desenvolvido por Cristiano Nascimento Pimentel 'Compilador Basic Step 1 versão 0.9.27.0 'Firmware versão 2.4 'Tamanho do arquivo compilado>> 103 bytes output 0 'Pino de sinal do servo input 1 'Pino de leitura do estado do sensor output 2 'Led verde output 3 'Led vermelho output 4 'Circuito de voz pin4=1 'Mantém o sensor desligado for b0=1 to 30 'Espera o sensor estabilizar por 30 segundos pin2=0 'Fazendo um efeito tipo "flip-flop" nos led's pause 500 '(500 ms + 500 ms = 1 segundo x 30 = 30 sec.) pin2=1 pin3=0 pause 500 pin3=1 next inicio: 'Loop inicial pin2=1 'Led verde desliga pin3=0 'Led vermelho liga for b0=1 to 30 pulsout 0,1 'Servomotor vai para posição inicial pause 20 'Aguarda 20 ms. next pause 2000 'Aguarda 2 sec. após fechar (para "descansar" o servomotor) goto pare2 abre: 'Abre a tampa pin2=0 'Led verde liga pin3=1 'Led vermelho desliga 'Servo motor vai para uma posição que 'possibilite abrir a tampa. Ajuste de 'acordo com a necessidade for b0=1 to 30 pulsout 0,210 pause 20 next pause 350 'Espera a tampa abrir e... pin4=0 '...só então ativa o circuito de voz pause 3000 'Espera terminar a frase para fechar, ajuste a gosto pin4=1 'Para a reprodução colocando o ISD1420 em Standby goto pare 'Salta para a rotina pare 'A rotina "pare" abaixo, verifica o sensor novamente e 'se ainda houver movimento de pessoas (pulso 0 em pin1) 'aguarda através da rotina "espera", caso contrário vai ao inicio pare: if pin1=0 then espera goto inicio 'Vai para o inicio do programa espera: pause 1 goto pare 'A rotina "pare2" e "espera2" abaixo, servem para manter a lixeira fechada 'à espera do pulso 0 do sensor para que vá à rotina "abre" pare2: if pin1=1 then espera2 goto abre espera2: pause 1 goto pare2