12f675

Başlatan leonine, 17 Şubat 2019, 19:22:13

leonine

herkese merhaba 555 ile bir tane devre yaptım ancak yetersiz geldi pic öğrenmeye karar verdim yapmak istediğim devre basit bir devre ama internette olan bütün dersler çoğunlukla 16fxxx gurubu piclerle alakalı bana 12f675 picle alakalı dersler pic en önemli olanda sigorta ayarlarının ve pin yönlendirme  ayarlarını anlatıldığı ccs c compiler  ile anlatılan dersler varmıdır yada bana burda 12f675 sigorta ayarlarını ve led yakma butonla röle çalıştırma butona basınca lede flaş yaptırma zamanlı çıkış yaptırma gibi yeni başlayan biri için ne olursa ccs c compiler kitap alsam faydalı olurmu tavsiyelerinizi bekliyorum ben bu işi öğrenmek istiyorum kendi işlerimi olsun hallederim saygılarımla

mustafa_cmbz

her pic için ayrı bir ders bulamazsın.kaldıki gerek te yok.

16F628 DE led i nasıl yakıp söndürüyorsan 12f675 te de aynı olacak.KOdda değişen bir şey olmuyor..

Sigorta ayarlarına gelince düşündüğün projedeki özelliklere göre atıyorum analog olacak mı olmayacakmı mclr kullanılcakmı kullanılmıcakmı dahili mi harici mi xt kullacaksın bunları belirledikten sonra 12f675 ile ilgili örnek kodlara bakarak kopyala yapıştır yaparsın.

RaMu

CcsC de sigprta ayarlarını zaten kod yazarak yapmana gerek yok,
project wizard kısmından projeni oluştururken seçeneklerden ayarlıyorsun,
takıldığın yerde kolaylıkla yardım bulabilirsin.

Kod konusundada kullanacağın pic neleri destekliyor
(pin sayısı, kesme, analog, uart vs.)ve
hafızası nelere yetiyorsa
CcsC ile yazılmış başka bir pic için olan kodu neredeyse aynen kullanabilirsin.

CcsC de input output ayarı yapmanada gerek yoktur,
kullandığın yere göre kendi giriş çıkış yapar pini,
#Use FAST IO komutunu kullanmaman yeterli.

CcsC nin amacı zaten tüm picler için aynı kodu kullanmak.

Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

necati

[email]entegreterbiyecisi@yahoo.com[/email]

leonine

yardım larınız için teşekkürler

ilyas KAYA

12f675 yeni başlayan için ideal değil. Çünkü osccal değerini silersen bir daha ya çalışmaz yada hatalı çalışır. Bu nedenle 12f683 gibi bir mcu ile yapmanızı tavsiye ederim.

gevv

#6
Alıntı yapılan: cezeri - 18 Şubat 2019, 17:40:45osccal değerini silersen bir daha ya çalışmaz yada hatalı çalışır
@cezeri hocam osccal nasıl siliniyor ?

hex yüklerken (örneğin pickit2 ile) özel bir ayarmı yapmalı mı
 

leonine

Alıntı yapılan: cezeri - 18 Şubat 2019, 17:40:4512f675 yeni başlayan için ideal değil. Çünkü osccal değerini silersen bir daha ya çalışmaz yada hatalı çalışır. Bu nedenle 12f683 gibi bir mcu ile yapmanızı tavsiye ederim.
bunula ve alakalı kısa ccs c de program başlangıcından hex derlemesine kadar olan kısımda bir butonla led yakma lede çakar yaptırma ve çakar yaptırıp sabit yakma ve röle çektirme gibi basit olarak role yi çekip bırakma gibi en önemliside dahili osilatörü ve harici osilatör kullanmayı en önemliside projeye başlaken pic ayarlarını ayrıtılı anlatan bir video yapa bilirmisin veya yapacak usta la olursa çok makbule geçer

striger

her cipin oscal degeri farklı, hic program atmadan once sıfır pic icindeki hexi okuyup en sonunda bulunan oscal degerini bir yere not almakta fayda var, internal osc kullanılacaksa dikkat edilmesi lazim, harici osc kullanılacaksa sorun yok.
pickit2 de bu degeri tekrar olusturabiliyor.
https://www.microchip.com/forums/download.axd?file=0;797278&filename=RegenOSCCAL.png&filename=download.axd

ilyas KAYA

Alıntı yapılan: gevv - 18 Şubat 2019, 19:24:01@cezeri hocam osccal nasıl siliniyor ?

hex yüklerken (örneğin pickit2 ile) özel bir ayarmı yapmalı mı

Sil tuşuna yanlışlık ile basılır ise,  programlama esnasında bağlantı koparsa yada program içinde osccal i geri yükle komutu eklenmemiş ise siliniyor.

Pickit2 evet geri getirebiliyor. Pickit3 yok malesef.

Çok kişi bu sebepten dolayı pic in bozulduğunu sanıyor malesef :)

leonine

#10
Ustalar yapamadığım yerler var yardımlarınızı bekliyorum (pin_a1)acik ve kapalı sinyali gidecek ve picdeki bütün işlemleri başlatacak durduracak başlat sinyali gidince (pin_a5)led f1 cakar yapacak ve sabit yanacak (pin_a4) bir olacak

(pin_a0) daki butona 2 defa basılınca yani 2 defa 1 sinyali gidince (pin_a2) deki led role vs benim ayarlacagım süre kadar calışsın sonra sönsün (kapansın)

(pin_a3 mcrl) ye acıldı 1 veya 0  olabilir (pin_a4) çıkışı sıfır olsun tekrar kapandı sinyali gelince bir olsun



bu haliyle butona basınca acılıyor birdaha basıca kapanıyor kodlarda hatalarım varsa önerileriniz de yazarsanız sevinirim yeniyim ögrenmeye calışıyorum hatalarım varsa yazımda şimdiden özür dilerim saygılarımla


#include <12F675.h>

 //Sigorta Ayarları Başlangıç....... 


#USE delay(crystal=4MHz)
#FUSES NOWDT        //Bekçi Köpegi
#FUSES INTRC_IO      //Dahili Osilator
#FUSES NOMCLR      // MCLR Bacağı Giriş Portu olacak
        // Sigorta Ayarları Sonu..........
        
void main()
{

// Tanımlama Ayarları Başlangıç.......
int led=1;
        // Tanımlama Ayarları Sonu..........
        
        port_a_pullups(TRUE);
              
while(TRUE)
{
          // A0 Pin Tanımlama Ayarları Başlangıç
  if(input(pin_a0)==1)
  {
        // A0 Pin Tanımlama Ayarları Sonu
  
        // A2 Pin Tanımlama Ayarları Başlangıç
    delay_ms(20);
  output_toggle(pin_a2);
  while(input(pin_a0));
  }
      // A2 Pin Tanımlama Ayarları Sonu
  
        
      // A1 Pin 3Tanımlama Ayarları Başlangıç
  if(input(pin_a1)==1)
  {
        // A1 Pin Tanımlama Ayarları Sonu
    
      // A4 Pin Tanımlama Ayarları Başlangıç
  
    delay_ms(20);
  output_toggle(pin_a4);
  while(input(pin_a1));
  }
      // A4 Pin Tanımlama Ayarları Sonu
  
      // LED CAKAR BASLANGIC
if(led<=7){
output_high(pin_a5) ;
delay_ms(50) ;
output_low(pin_a5) ;
delay_ms(50) ;
output_high(pin_a5) ;
 led++;
}
}  //LED CAKAR BİTİS
}