#device PIC18F4680
#include <18f4680.h>
#fuses xt,nowdt,noprotect, nobrownout, nolvp, noput, nowrt, nocpd
#use delay (clock=4000000)
#use fast_io(c)
unsigned int16 sayac = 0, hedef = 0;
int i;
void main()
{
setup_psp(PSP_DISABLED);
setup_timer_1(T1_DISABLED);
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_timer_2(T2_DIV_BY_16,155,1); //16,0 us overflow, 16,0 us interrupt
setup_ccp1(CCP_PWM);
set_pwm1_duty(i);
set_tris_c(0x00);
output_c(0x00);
while(1)
{
hedef=80; //400*8
sayac=0;
do
{
i=155;
output_high(pin_c3);// motor aktif
delay_ms(100);
output_low(pin_c1);// motor yönü belirlendi
delay_us(50);
sayac++;
set_pwm1_duty(i);
}while(sayac<=hedef);
i=0;
set_pwm1_duty(i);
hedef=80; //400*8
sayac=0;
do
{
i=155;
output_high(pin_c3);// motor aktif
delay_ms(100);
output_high(pin_c1);// motor yönü belirlendi
delay_us(50);
sayac++;
set_pwm1_duty(i);
}while(sayac<=hedef);
i=0;
set_pwm1_duty(i);
}
}