Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

20/10/2010 #1


Repetir si se tiene apretado un boton
Hola, estoy trabajando con un PWM con dos pulsadores, uno aumenta, el otro disminuye, pero no se como hacer para que si se deja un pulsador oprimido disminuya o aumente constantemente, actualmente hay que pulsar, soltar y volver a pulsar.
El codigo el C:


void main() //PROGRAMA PRINCIPAL
{
set_tris_a(0xff); // RA0 y RA1 entradas
set_tris_b(0x0e); //RB0 salida
setup_ccp1(ccp_pwm); //CCP1 como PWM
setup_timer_2(t2_div_by_4,0xF0,1); // modo,PR2,posescaler
setup_adc_ports(no_analogs); // T=(PR2+1)*4*Tosc*Preescaler (periodo; con desde 500 5000Hz y >18KHz)
do // D=duty*Tosc*Preescaler (duty es el que va en set_pwm1_duty())
{
if(input(PIN_A0))
{
delay_ms(20);
while(input(PIN_A0))
delay_ms(20);
count++;
if(count==8)
count=7;
}
if(input(PIN_A1))
{
delay_ms(20);
while(input(PIN_A1))
delay_ms(20);
count--;
if(count==-1)
count=0;
}
x=count*3;
set_pwm1_duty(x); //cargo el valor 0-256 al PWM
output_bit(PIN_B4,input_state(PIN_B0)); // la salida RB4 es igual a la salida RB0
}while(true);
}

Muchas gracias por su ayuda.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.