Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Microchip PIC => Konuyu başlatan: bahdiyarusta - 02 Mart 2026, 00:33:56

Başlık: Pic12F675 ile km okuma işi çözemdim
Gönderen: bahdiyarusta - 02 Mart 2026, 00:33:56
Arkadaşlar selamün aleyküm.
Bir kamyonun km sensörü 8000p/km sinyal gönderiyor. 1km 8000pals
Bu kare dalga olarak geliyor.
Analog km ekranı 60km hız bilgisini 56km olarak gösteriyor. Ben araya bir devre yapmak istiyorum.
Pic12F675 ile gp2 pininden gelen palsi okuyup A0 daki potans ile kalibre edip gp5 pininden tekrar km saatine göndericem. Bunun için önceden benzer proje yapmış vs. Bu konularda tecrübe sahibi ustaların desteğine ihtiyacım var.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: ete - 02 Mart 2026, 09:28:24
Bütün araçların km saatleri 3-4 km fazla gösterir. Bu sanırım genel bir kural.
Yada küsüratlı rakamlardan gelen bir özellikte olabilir.
Her neyse , hesabını km saatindeki maksimum hız değerine göre yapman gerekir.
Diyelimki km saatinde maksimum hız 200 km/saat. Araç şayet bu huzla gider ise ;
1 saatte 200 x 800 = 160.000 pulls üretmesi gerekir.
1 dakikadaki pul miktarın ise 160.000/60 = 2666,667 puls/dak. Bunuda 60 a bölersen 44,45 puls/sn lik bir referans bilgisi elde edersin.
Bu durumda 1000 ms (1 sn) lik süre zarfında gelen pulsleri sayarak hesap yapabilirsin artık.
Diyelimki 1000 ms içinde 12 puls saydın. Km hesabın şöyle olur,
(12 x 200)/44,45 =53,99 ~54 km/saat
Hesaplarında Float kullanabiliyor isen direk yukarıdaki formülü kullanabilirsin. Sonucu tam sayıya tamamlamak adına 0,5 eklemende yarar vardır. Böylece 53,99 +0,5 = 54 bulabilirsin tam sayı olarak.
Float kullanmıyor isen 12x200 hesabını 100 ile çarparak (32 bit olarak) sonucu 4445'e bölebilirsin.
HESAP=(12**200)
km= DIV32 4445
sonucu 4444 e bölersen yuvarlamada yapmış olursun.

Ete

Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: istinaf duvarı - 02 Mart 2026, 10:41:04
Özellikle çekici sınıfı araçlarda bağlanan dorseye göre 55 yanaktan 80 yanağa kadar farklı lastikler kullanılabiliyor. Firmalar genellikle ortalama değer olan 70 yanağa göre kalibre ederler. Lastik ebadı değiştiyse yeni lastiğe göre tekrardan ayarlanması gerekecektir. Sizinki de böyle bir durum olabilir mi?
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: triyak - 02 Mart 2026, 10:44:09
Araabaların ilk yıllarında mekanik km saatlerinde hatalar çıkmaya başlamış. Kimi üretici eksik, kimi üretici fazla gösteriyormuş. Bundan dolayı tüm araçların km göstergeleri %10'a kadar, daha hızlı gösterecek şekilde yasal düzenleme getirilmiş. Aracınızda bir hata yok, şuan doğru çalışıyor.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: ByTEK - 02 Mart 2026, 13:23:29
Merak edip dayanak bilgisine bakmak istedim. AI sorunca bu cevabı verdi.

Bu konu UNECE R39 (Avrupa Ekonomik Komisyonu araç mevzuatı) kapsamında tanımlanır. Türkiye'de satılan araçlar da bu kurala tabidir.

Kural net olarak şunu söyler:
Hız göstergesi, gerçek hızdan düşük gösteremez.
Göstergenin fazla göstermesine izin verilir.
İzin verilen üst sınır:

Gösterilen hız ≤ Gerçek hız + (%10 + 4 km/s)

Bu değişkenlerde bile sürücünün istemeden hız sınırını aşmasını önlemek için pay bırakılır.
Yani bu, üreticinin hatası değil; bilerek yapılan bir güvenlik marjıdır.
İlave olarak konudan bağımsız radar hız ölçümlerinde de %10 hata toleransı benzer şekilde vardır.

Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: bahdiyarusta - 02 Mart 2026, 16:11:15
Benim gp2 pininden gelen km sinyalini okuyup a0 daki pota bağlı olarak kalibre ederek gp5 den çıktı almak.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: sifirzero - 02 Mart 2026, 16:39:37
Alıntı yapılan: bahdiyarusta - 02 Mart 2026, 16:11:15Benim gp2 pininden gelen km sinyalini okuyup a0 daki pota bağlı olarak kalibre ederek gp5 den çıktı almak.
Arkadaslar anlatmis anladigim kadariyla sen yapilmiş kodlarimi istiyorsun.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: ete - 02 Mart 2026, 17:01:17
km başına 800 puls gibi sabit bir değer verdikten sonra pot nasıl bir kalibrasyon yapacak anlamadım. Koyacağın o pot km başına puls değerini değiştirmeli ki hesapladığın km/saat değeri kalibre edilebilsin.
Pot'un orta noktası 750 puls/km verebilir. Maksimum pot değerinde bu 1000 puls/km minimum pot değerinde ise bu 500 puls/km olarak alınıp buna göre hesap yapılır ise sistemini kalibre edebilirsin.
Yapacağın iş basitçe pot'un ADC karşılığını hesaplayıp sonucu 500-1000 aralığına getirmek olacaktır.
Örnek hesap vereyim istersen.
1000-500=500 olacağı için sen 500/1023=0,488758553 parametresini kullanarak hesabını yapabilirsin.Ancak bu değeri 0,489236791 olarak kullanır isen sonuçların daha doğru çıkacaktır.
Pot orta noktada sana 511 değerini verecektir.
CARPAN=500+511 * 0,489236791 =750 olacaktır.
Yukarıda verdiğim hesapda sabit olan 800 puls değeri yerine bu CARPAN değerini kullanırsan kalibre edilmiş değeri hesaplayabilirsin.

Ete
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: bahdiyarusta - 02 Mart 2026, 18:10:50
pic basic pro ile çok uraştım yetersiz olduğunu düşündüm
xc8 denedim çok zor geldi
ccs c geçtim sıfırdan yapmaya çaışıyorum henüz ortada işe yarar yarım yamalak çalışır bir kod oluşturamadım o yüzden kod satırları paylaşamadım. işin üstündeyim yazıdıklarını dikkate alarak çalışmaya devam ediyorum.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: Cetinal - 03 Mart 2026, 07:32:44
(https://hizliresim.com/iacn9db)

https://hizliresim.com/iacn9db

Twitter daki grok yazdı bu kodu. Merak ettim çalışıyor mu diye. Çalışıyor da.
Yapay zeka denilen aslında  yapay asistanı böyle işlerde kullanmanızı tavsiye ederim.
Siz zaten ne yapmak istediğinizi biliyorsunuz,,, Bunu bildiğiniz için işiniz kolay.
Yapay zeka senaryosu olmayanların elinde görüyorum internette şuna FB forması giydir buna GS forması giydire dönüşmekten başka birşey yapmıyor.


#include <12F675.h>
#device ADC=10   // <<-- 10 bit olduğundan emin ol (çok önemli!)
#fuses INTRC_IO, NOWDT, NOPROTECT, NOCPD, NOBROWNOUT, NOMCLR
#use delay(clock=4000000)



volatile int pulse_detected = 0;
int16 pot_value = 0;           // 0 ... 1023

// Her giriş pulse'ında çağrılacak
#INT_EXT
void ext_isr(void) {
   pulse_detected = 1;
}

void main(void) {
   setup_adc_ports(sAN0);
   setup_adc(ADC_CLOCK_DIV_32);     // stabil okuma için
   setup_comparator(NC_NC_NC_NC);
   
   set_tris_a(0b00000101);          // GP0=AN0 input, GP2=INT input, GP5 output, diğerleri output veya input ihtiyaca göre
   
   ext_int_edge(L_TO_H);            // yükselen kenar   (düşen ise H_TO_H yap)
   enable_interrupts(INT_EXT);
   enable_interrupts(GLOBAL);
   
   set_adc_channel(0);
   delay_us(50);                    // ilk acquisition
   
   while(TRUE) {
      // ADC okuma - güvenli yöntem
      set_adc_channel(0);
      delay_us(30);                 // acquisition time
      pot_value = read_adc();       // burada TAM 0-1023 gelmeli
     
      if(pulse_detected) {
         pulse_detected = 0;
         
         // pot_value / 512 › 0.0 ... 2.0 arası katsayı
         // 0 › 0.0   512 › 1.0   1023 › ~2.0
         int32 ratio = (int32)pot_value * 2000L / 1023L;   // 0 .. 2000 (yani ×0 .. ×2)
         
         // Oran 1000'den küçükse (<%50) bazı pulse'ları atla
         // 1000-2000 arası ise bazı pulse'lara ekstra pulse ekle
         static int32 accumulator = 0;
         
         accumulator += ratio;           // her giriş pulse'ında
         
         while(accumulator >= 1000) {
            accumulator -= 1000;
           
            // bir çıkış pulse'u üret
            output_high(PIN_A5);
            delay_us(200);              // pulse genişliği - giriş pulse genişliğine göre ayarla
            output_low(PIN_A5);
         }
      }
     
      // CPU'yu çok yormamak için kısa bekleme
      delay_us(300);
   }
}
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: sezgin05 - 03 Mart 2026, 09:23:45
Bu proje Tagograf yanıltma projesi değil mi?
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: bahdiyarusta - 03 Mart 2026, 12:08:13
Arkadaşlar ilginize teşekkür ederim. Proje aciliyetinden dolayı işi bilen bir kişiye ücretli yaptırdım .hex aldım.
Bu sefer böyle oldu. günlerce bir proje ile uğraşıp üç beş kuruşa iş yapar olduk. Ne olacak bizim haller bilemiyorum.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: sifirzero - 04 Mart 2026, 00:59:19
Hex aldiysan abi. Kodlarinida al ileride lazim olur.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: power20 - 04 Mart 2026, 01:00:58
Hex 30bin kod 300bin ;)
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: kimlenbu - 06 Mart 2026, 17:01:46
Alıntı yapılan: power20 - 04 Mart 2026, 01:00:58Hex 30bin kod 300bin ;)

Chat gpt'nin tek promt ile yazacağı koda 300tl bile verilmez.
Başlık: Ynt: Pic12F675 ile km okuma işi çözemdim
Gönderen: moderasyon - 07 Mart 2026, 09:53:47
Sn. @bahdiyarusta,

Forum kuralları:
https://www.picproje.org/index.php/topic,65932.0.html
1.ğ, 1.h, 1.i maddelerini okumuş olmalısınız.