Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- A minha linha de raciocino era essa:
- t=20000; // O pulso é 20ms (20.000us)
- valor = read_adc(); // Então com o ADC em 10 bits (0-1023) lia o valor de um potenciômetro.
- ton=valor+999; // somava 987 a esse valor (já que o pulso mínimo é 1ms. mesmo)
- toff=t-ton; // tempo de delay desligado é o tempo total (t) - o tempo ligado (ton)
- if (ton >= 2000)
- {
- ton = (2000); //então, se o pulso era =< 1000, ele se tornava 1000.
- output_high(PIN_A2); //liga o pino
- delay_us(ton); //delay do tempo ligado por exemplo 2000us
- output_high(PIN_A2); //desliga o pino
- delay_us(toff); //delay do tempo desligado por exemplo 18000us.
- }
- else if (ton <= 1000)
- {
- ton = 1000; //então, se o pulso era => 2000 ele se tornava 2000;
- output_high(PIN_A2); //liga o pino
- delay_us(ton); //delay do tempo ligado por exemplo 2000us
- output_high(PIN_A2); //desliga o pino
- delay_us(toff); //delay do tempo desligado por exemplo 18000us.
- }
- caso o valor não fosse =< 1000 ou => 2000 então
- else
- {
- output_high(PIN_A2);
- delay_us(ton);
- output_high(PIN_A2);
- delay_us(toff);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement