Subversion Repositories svnkaklik

Rev

Rev 6 | Blame | Last modification | View Log | Download

#include "D:\KAKLIK\programy\PIC_C\mereni\serva\PIC16F88\tester.h"

#DEFINE servo1 PIN_A4
#DEFINE servo2 PIN_A3
#DEFINE servo3 PIN_A2
#DEFINE servo4 PIN_A0
#DEFINE SW     PIN_A1

void main()
{
int i;

   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_OFF);
   setup_spi(FALSE);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);



   while(true)
   {   
      While(input(SW)) 
      {
         output_high(servo1);
         Delay_us(1500);
         output_low(servo1);
         
         output_high(servo2);
         Delay_us(1500);
         output_low(servo2);
         
         output_high(servo3);
         Delay_us(1500);
         output_low(servo3); 
         
         output_high(servo4);
         Delay_us(1500);
         output_low(servo4);
         
         Delay_ms(10);
      }
      
      While(!input(SW))
      {
         for(i=0; i<100; ++i)
         {
            output_high(servo1);
            Delay_us(1000);
            output_low(servo1);
            
            output_high(servo2);
            Delay_us(1000);
            output_low(servo2);
            
            output_high(servo3);
            Delay_us(1000);
            output_low(servo3); 
            
            output_high(servo4);
            Delay_us(1000);
            output_low(servo4);
            
            Delay_ms(10);
         }
         
         for(i=0; i<100; ++i)
         {
            output_high(servo1);
            Delay_us(2000);
            output_low(servo1);
            
            output_high(servo2);
            Delay_us(2000);
            output_low(servo2);
            
            output_high(servo3);
            Delay_us(2000);
            output_low(servo3); 
            
            output_high(servo4);
            Delay_us(2000);
            output_low(servo4);
            
            Delay_ms(10);
         }           
      }
   }      

}