Şubat 02, 2014
Barış
Çizgi İzleyen R. Yapımı 3
*Program CCS C derleyicisinde yazılmıştır. On-Off Kontrol programı
#include<16F877A.h>#device adc=10#FUSES HS//High speed Osc (> 4mhz)#usedelay(clock=20000000)#usefast_io (a)#usefast_io (c)void main(){set_tris_a(0xFF);set_tris_c(0xF0);while(true){if(input(pin_a0)==1){output_c(0x0a);// Sağ geri sol ileri}if(input(pin_a1)==1){output_c(0x02);// Sağ duruyor sol ileri}if(input(pin_a2)==1){output_c(0x06);// Sağ ileri sol ileri}if(input(pin_a3)==1){output_c(0x04);// Sağ ileri sol duruyor}if(input(pin_a5)==1){output_c(0x05);// Sağ ileri sol geri}}}PWM programı
#include<16F877A.h>#device adc=10#FUSES HS//High speed Osc (> 4mhz for PCM/PCH) (>10mhz for PCD)#usedelay(clock=20000000)#usefast_io(a)#usefast_io(c)unsigned int8 sensorler=0,solpwm=0,sagpwm=0;void main(){setup_timer_2(T2_DIV_BY_1,249,1);//50.0 us overflow, 50.0 us interruptsetup_ccp1(CCP_PWM);// ccp1 ucu pwm çıkışı olarak ayarlandısetup_ccp2(CCP_PWM);// ccp2 ucu pwm çıkışı olarak ayarlandıset_tris_a(0xFF);// a portunu giriş olarak ayarlaset_tris_c(0xF0);while(true)//sonsuz döngü{sensorler = input_a();// A porundaki tüm pinleri okusensorler = sensorler *"b00101111";// Sensörden gelen değerleri maskeleyerek al// birinci ifade beyaz zemin üzeri siyah çizgi için// ikinci ifade siyah zemin üzerine beyaz çizgi için//Düz gitif(sensorler=="b00000100"|| sensorler=="b00101011"){solpwm=990;sagpwm=990;}//sola dön vites1if(sensorler=="b00000110"|| sensorler=="b00101001"){solpwm=700;sagpwm=990;}//saga dön vites1if(sensorler=="b00001100"|| sensorler=="b00100011"){solpwm=990;sagpwm=700;}//sola dön vites2if(sensorler=="b00000010"|| sensorler=="b00101101"){solpwm=500;sagpwm=990;}//saga dön vites2if(sensorler=="b00001000"|| sensorler=="b00100111"){solpwm=990;sagpwm=500;}//sola dön vites3if(sensorler=="b00000011"|| sensorler=="b00101100"){solpwm=300;sagpwm=990;}//saga dön vites3if(sensorler=="b00101000"|| sensorler=="b00000111"){solpwm=990;sagpwm=300;}//sola dön vites4if(sensorler=="b00100000"|| sensorler=="b00001111"){solpwm=0;sagpwm=990;}//saga dön vites4if(sensorler=="b00000001"|| sensorler=="b00101110"){solpwm=990;sagpwm=0;}set_pwm1_duty(solpwm);set_pwm2_duty(sagpwm);}}Projenin proteus dosyalarını buradan indirebilirsiniz.iNdirme Sitesi: http://www.emrahbudak.com/indir/cizgi_izleyen_robot.rar
Yorumlar
Yorum Yazın
Form görünmüyorsa buraya tıklayarak da yorum yazabilirsiniz.