Professional Documents
Culture Documents
#include <16F877A.h>
#device adc=10
#use delay(clock=20000000)
#fuses HS,NOLVP,NOWDT
/*****************************************************************************/
/************************CONFIGURACION
PUERTOS********************************/
//#byte trisa=0x85
//#byte trisb=0x86
//#byte trisc=0x87
#byte trisd=0x88
//#byte trise=0x89
//#byte puerto_a=5
//#byte puerto_b=6
//#byte puerto_c=7
#byte puerto_d=8
//#byte puerto_e=9
/*****************************************************************************/
/************************DEFINE BITS******************************************/
/*****************************************************************************/
/************************DEFINIR FUNCIONES************************************/
/*****************************************************************************/
/
*******************************MAIN******************************************/
VOID main ()
//**********Config. Encoders**********
INT16 dif1,div1,mult1,sum1,mult11;
INT16 dif2,div2,mult2,sum2,mult21;
//**********Config. PWM**********
//**********Config I / O**********
//**********Inicio LCD**********
delay_ms (500);
lcd_putc ("\f");
delay_ms (20);
lcd_gotoxy (1, 1) ;
lcd_gotoxy (1, 2) ;
FOR (;;)
//Encoder 1
delay_us (20);
//el voltaje
lcd_gotoxy (1, 1) ;
delay_ms (100);
//Encoder 2
delay_us (20);
//el voltaje
lcd_gotoxy (1, 1) ;
delay_ms (100);
//Encoder 3
delay_us (20);
C3 = read_adc (); //Lectura channel 3 analogico
//el voltaje
lcd_gotoxy (1, 2) ;
delay_ms (100);
{set_pwm1_duty (0) ;
set_pwm2_duty (0) ;
A1 = 0;
lcd_gotoxy (1, 2) ;
delay_ms (100);}
else if (C1<502)
{dif1 =502-C1;
div1 = dif1/1023;
mult1 = div1*1000;
sum1 = mult1+10;
mult11 = sum1*2;
A1 = mult11;
set_pwm1_duty (A1);
set_pwm2_duty (0) ;
lcd_gotoxy (1, 2) ;
delay_ms (100);}
else if (C1>522)
{dif2 =C1-522;
div2 = dif2/1023;
mult2 = div2*1000;
sum2 = mult2+10;
mult21 = sum2*2;
A1 = mult21;
set_pwm1_duty (0);
set_pwm2_duty (A1) ;
lcd_gotoxy (1, 2) ;
delay_ms (100);}
}//Main
/*****************************************************************************/
/************************FUNCIONES********************************************
/
/* VOID girarmotorcw ()
MOTORCW = 1;
MOTORCC = 0;
*/
/*****************************************************************************/