pıc c dilinde yazılmış kodu hex e çevirme

Başlatan nusi, 20 Ocak 2016, 14:22:07

nusi

Selam Arkadaşlar. Pic c dilinde yazılmış bu kodu hex e çevirebilir misiniz? teşekkürler

#include <16f877a.h>     // Kullanılacak denetleyicinin başlık dosyası tanıtılıyor.
// Denetleyici konfigürasyon ayarları
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay (clock=4000000) // Gecikme fonksiyonu için kullanılacak osilatör frekansı belirtiliyor.
#use fast_io(b) //Port yönlendirme komutları A portu için geçerli
#use fast_io(c) //Port yönlendirme komutları C portu için geçerl
#use fast_io(a)
#define sensor pin_a0
/********* ANA PROGRAM FONKSİYONU********/
void main ( )
{
setup_psp(PSP_DISABLED);        // PSP birimi devre dışı
setup_timer_1(T1_DISABLED);     // T1 zamanlayıcısı devre dışı
setup_adc_ports(NO_ANALOGS);    // ANALOG giriş yok
setup_adc(ADC_OFF);             // ADC birimi devre dışı
set_tris_b(0x1F);   // bunlar sensörün sayısına göre değişir 1=giriş 0= çıkış demek
set_tris_c(0x00);
set_tris_a(0x01);//
//output_c(0xA0);
setup_ccp1(CCP_PWM);  // CCP1 birimi PWM çıkışı için ayarlandı
setup_ccp2(CCP_PWM);  // CCP2 birimi PWM çıkışı için ayarlandı
setup_timer_2(T2_DIV_BY_16,170,1); // Timer2 ayarları yapılıyor
while(1) // Sonsuz döngü
{
if(input(sensor))
{
set_pwm1_duty(0); // PWM1 çıkışı görev saykılı belirleniyor. bu oranları değiştirebilir farklı hızlar  oluşturabilirsiniz.
set_pwm2_duty(0);
}
else if (input(pin_b4)==1&&input(pin_b3)==1&&input(pin_b2)==0&&input(pin_b1)==1&&input(pin_b0)==1) // pin b2 ortadaki sensöre bağlı onu görürse motorları 100/170 oranında sürüyor. 1,motor ileri 2,motor ileri
{
output_c(0xA0);
set_pwm1_duty(75); // PWM1 çıkışı görev saykılı belirleniyor. bu oranları değiştirebilir farklı hızlar  oluşturabilirsiniz.
set_pwm2_duty(75); // PWM2 çıkışı görev saykılı belirleniyor. örneğin 170 yaparsanız motorunuz max hız ile dönecektir.
}
else if (input(pin_b4)==1&&input(pin_b3)==0&&input(pin_b2)==0&&input(pin_b1)==1&&input(pin_b0)==1&&input(pin_a0)==1) //
{
output_c(0xA0);
set_pwm1_duty(70); // PWM1 çıkışı görev saykılı belirleniyor  1.motor geri
set_pwm2_duty(0); // PWM2 çıkışı görev saykılı belirleniyor  2.motor ileri
}
else if (input(pin_b4)==1&&input(pin_b3)==0&&input(pin_b2)==1&&input(pin_b1)==1&&input(pin_b0)==1)
{
output_c(0xA0);
set_pwm1_duty(80); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(0); // PWM2 çıkışı görev saykılı belirleniyor
}

else if (input(pin_b4)==0&&input(pin_b3)==0&&input(pin_b2)==1&&input(pin_b1)==1&&input(pin_b0)==1)
{
output_c(0xA0);
set_pwm1_duty(90); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(0); // PWM2 çıkışı görev saykılı belirleniyor
}
else if (input(pin_b4)==0&&input(pin_b3)==1&&input(pin_b2)==1&&input(pin_b1)==1&&input(pin_b0)==1)
{
output_c(0xA0);
set_pwm1_duty(100); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(0); // PWM2 çıkışı görev saykılı belirleniyor
}
else if (input(pin_b4)==1&&input(pin_b3)==1&&input(pin_b2)==0&&input(pin_b1)==0&&input(pin_b0)==1)
{
output_c(0xA0);  // 1.motor ileri 2,motor geri
set_pwm1_duty(0); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(70); // PWM2 çıkışı görev saykılı belirleniyor
}
else if (input(pin_b4)==1&&input(pin_b3)==1&&input(pin_b2)==1&&input(pin_b1)==0&&input(pin_b0)==1)
{
output_c(0xA0);
set_pwm1_duty(0); // PWM1 çıkışı görev saykılı belirleniyor

set_pwm2_duty(80); // PWM2 çıkışı görev saykılı belirleniyor
}
else if (input(pin_b4)==1&&input(pin_b3)==1&&input(pin_b2)==1&&input(pin_b1)==0&&input(pin_b0)==0)
{
output_c(0xA0);
set_pwm1_duty(0); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(90); // PWM2 çıkışı görev saykılı belirleniyor
}
else if (input(pin_b4)==1&&input(pin_b3)==1&&input(pin_b2)==1&&input(pin_b1)==1&&input(pin_b0)==0)
{
output_c(0xA0);
set_pwm1_duty(0); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(100); // PWM2 çıkışı görev saykılı belirleniyor
}
else if (input(pin_b4)==1&&input(pin_b3)==1&&input(pin_b2)==1&&input(pin_b1)==1&&input(pin_b0)==1)  //1.motor geri 2.motor geri
{
output_c(0x50);
set_pwm1_duty(50); // PWM1 çıkışı görev saykılı belirleniyor
set_pwm2_duty(50); // PWM2 çıkışı görev saykılı belirleniyor
}
}
}


Elzemefe

#1
Bu  kodu  buraya atabildiğine  göre
1-Bilgisayarın var
2-Bilgisyar  kullanabiliyorsun
3-hex felan dediğine göre
4- varsayımlara  göre   neden  kendin
PIC C compileri  kurup  denemiyorsun

Formda ikinci mesajın  birincisinde zaten yardım değil
direk istekte bulunmuşsun

Şayet  öğrenmek istersen gerekli  dökümanlar
en açık  haliyle  formda var .


nusi

 pic c compiler 350 dolar olduğu için olabilir mi?

Elzemefe

#3
Peki bakalım
Bilgisayarında ki  kullandığın programlar......  lisanslı  kullanıyorsun  öğlemi _?
Hex  in  peşinden  nasıl yüklenir die sorcakmısın...
dur HEX e yardımcı  olayım ;
http://www.picproje.org/index.php/topic,62977.msg487784/topicseen.html#msg487784

:D

nusi

sadece ıc prog var oda programlayıcının yanında cd de verdiler.

Powered by EzPortal