pcbway

pic programlamada pin isimlerinin işlevi nedir

Başlatan taros84, 25 Ocak 2014, 15:02:51

taros84

Merhaba arkadaşlar elektroniğe yeni giriş yapmış biri olarak bazı hobi amaçlı devreler yapmak istiyorum ama şu varki enteğrelerin ve mikroişlemcilerin pin girişlerinde bulunan isimlerin ne işe yaradığını veya ne anlama geldiğini çözmüş değilim araştırdığım çoğu yerde devre yapımı var yanlız pin isimlerinin ne işe yaradığını isimlerinin ne anlama geldiğini yazılmıyor anlam ve kullanım alanlarını bilmiş olsak daha işlevsel olabilir. Smd devre elemanlarına yoğunlaşmak istiyorum.
Ayrıca şunuda söylemek isterim ohm kanunu c gibi ve artı temel elektronik bilgisine sahibim ama takıldığım tek konu pin isimleri ve işlevleri. Bilgisi olan arkadaşlar yardımlarını esirgemezse sevinirim örnek bir micro işlemci burada görüldüğü gibi ilginiz için teşekürler..

pwm.c

\"Datasheet\" diye bişey duydunuz mu?
aradığınız tüm bilgiler burada.
örneğin, resimde gösterdiğiniz PIC18F2550 datasheeti:
http://ww1.microchip.com/downloads/en/devicedoc/39632c.pdf
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

taros84

Datasheet  evet duydum. Yanlız şuvarki ingilizcem iyi derecede olmadığı için takılı kalıyorum türkçe kaynak bulunmuyormu ve bulamazmıyız en azından. Örneğin RA1 ...  RA.. Kadar Giriş RB1 ... RB.. kadarıda çıkış olduğunu söyleyen ve kullan çok eminimki bu tarz bir acıklamayla aynı pinlerde olan değişik isimler bulunuyor
bunların işlemleri gibi. Demeyinki ingilizce olmadan olmaz. inanın yazılıma başlarkende aynı şeyleri duydum şuan hiç bir dil bilgim olmadan android windows hatta linux gibi işletim sistemlerine sunucu masaustü programları profesyonel anlamda yazabiliyorum bu açıdan en azından mantık yapısını bilsek yani kullanım alanlarını gerisi türkçe olarak gelir diye düşünüyorum..

pwm.c

Portların giriş yada çıkış olması ilgili TRIS registerleri ile ayarlanıyor. yani aynı port hem giriş hemde çıkış olabilir. bunun yanısıra özel portlarda bulunuyor. bunlar modüllerin çıkışlarıdır.
gösterdiğiniz resimde port isimleri kısaltma olarak yazılmıştır. bunları kısaca açıklamak gerekirse:
RA0...RA7 portları aynı zamanda PORTA anlamına gelir ve sondaki sayı pin adresini gösterir.
RB,RC,RD yazanlarda aynı şekilde PORTB, PORTC, PORTD demektir. bunların tamamı giriş yada çıkış olabilir.
MCLR yazan pin ise hem reset hemde vpp programlama besleme girişidir. bu port sadece giriş olabilir. reset özelliği bazı pic türlerinde iptal edilebiliniyor.
OSC yazan pinler ise picin osilatör girişleridir. buraya kristal, RC yada diğer osilatör türlerinden bağlanabilir. bazı piclerde dahili osilatör olduğu için bu pinleri özel amaçlada kullanabiliriz.
AN yazan pinlerde analog girişleridir. ADC modülüne sahip piclerde bulunur. voltajı bu pinlerin birinden okuyup sayısal değere dönüştürür. analog giriş sayosı pic modeline göre değişir ve sadece kullnacağın pinler aktif edilir.
Vref+- pinleride ADC modülünün referans girişidir. aynı şekilde bunları aktif yada pasif yapılabilinir.
INT yazanlarda interup yani kesme girişidir. pic programı işlenirken bu pine harici bilgi geldiğinde program olduğu yerde durup alt programa yönlenir ve işi bitince kaldığı yerden devam eder. aynı şekilde bu pinide kullanacağın zaman aktif etmelisin.
RX,TX,SDA,SCK,SCL yazanlar ise seri haberleşme pinidir yani bazı piclerde donanımsal olarak SPI yada I2C modülü bulunur. bu pinler ilgili modülün giriş ve çıkışlarıdır.
CCP* yazanlar ise PWM ve yakalama modüllerinin pinidir. pic içinde bundan kaçtane varsa okadar çıkış olur ve kanal sayısı son hanede gösterilir.
VSS ve VDD besleme pinleridir. pic türüne göre 3v...5v civarı dc voltaj verilir. bazı çok pinli piclerde birden fazla besleme girişi vardır ve bunlar aynıdır.

şimdilik bukadar yeter sanırım. elbette daha söylenecek çok pin var. kullandığın pic türündeki donanıma göre çok sayıda özel amaçlı pin bulunur. bunlarıda datasheet okuyarak öğrenebilirsin. yani datasheeti sadece okumakla kalmayıp oradakilerin hepsinide ezberlemen gerekiyor. gerisini sen düşün artık. bir rehber kitap almanı tavsiye ederim.



_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

taros84

nazmi kardeşim ilgin için çok teşekkürler çok geniş bir havuz olduğunu biliyorum anolog ve dijital elektroniğin. Şuan bilgi havuzuma damla olsun katkıda bulundun eminimki benim gibi merak ve bilgi kararcığı arayan insanlara çok katkıda bulunuçaktır açıklamaların ve bilgi paylaşımının devamı dileğiyle. tekrar çok amam çok teşekkürler. Türkçe kaynaklar eline ulaştıkça eklersen çok sevinirim Saygılarımla.

pwm.c

28 Ocak 2014, 20:04:35 #5 Son düzenlenme: 28 Ocak 2014, 20:06:57 pwm.c
Türkçe dökümanlar internette bolca bulunuyor. örneğin şu sitede var:
http://elektroinfo.blogspot.com.tr/2008/08/pic-16f877-trke-datasheet.html
ancak, bunlar tek başına tamamen yeterli gelmez.
şimdi siz hangi programlama dilini kullanmak istiyorsunuz? eğer karar vermediyseniz ve yazılım bilginiz var ise CCS C yada MikroC derleyicisini kurunuz. bu ikisi hakkında Türkçe kitaplar mevcut ve çok iyi destekleniyorlar. CCS kullanırsanız register ayarlamak zorunda kalmassınız. eğer basic derleyicisi istiyorsanız PROTON kurunuz. bunun yanında PicBasicPro da var ama o artık demode oldu ancak Türkçe kaynak sıkıntısı yaşamassınız.

kolay gelsin.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

taros84

Nazmi kardeşim aslında mikroişlemcilerin ortak kullandığı bir dil olması daha fazla önceliğim olacak araştırmalarıma ve yönetim sistemleri gibi profesyonel devreleri incelediğimde genelde arm ve winbond gibi
işlemcilere rastladım. Başlangıç olarak ccs c çok basit bir dil işlem olarak ama sorun şu ki Microchip  harici her mikroişlemciye
uygulanmıyor diye biliyorum  bu yüzden başlangıç olarak en üstten başlamak istiyorum daha basite indirgendiğinde çözümlemesi daha kolay oluyor en azından ben bu şekilde daha kısa sürede çözüyorum ..

pwm.c

29 Ocak 2014, 20:07:16 #7 Son düzenlenme: 29 Ocak 2014, 20:08:35 pwm.c
Mikroelektronika\'nin MikroC derleyicisinin PIC harici ARM, AVR, 8051 desteği mevcut.
CCS ise sadece PIC türlerini destekler ama PIC\'ler arası global bir dildir. aynı kodları tüm PIC türleri için kullanabiliyorsun. ayrıca, pratik özellikleride var. örneğin, portları oku dediğinde otomatik olarak giriş, yaz dediğinde ise çıkış yapabiliyor. diğer derleyicilerde ürünler arası geçişlerde birsürü register ayarı yapmalısın ve bunun için o okuyamadığın datasheeti ezberlemek zorunda kalıyorsun.
eğer bana sorarsan, kendim asm, basic ve c derleyicilerinin hepsini kullanıyorum. biri yetersiz kaldığında öbürü ile yazıyorum. anlayacağın, bir dil öğrenmek yeterli olmuyor.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

taros84

18 Şubat 2014, 12:01:11 #8 Son düzenlenme: 18 Şubat 2014, 12:03:25 taros84


Nazmi kardeşim örnegin silikon firmasının \"c8051F020\"
avr işlemcisinin register ayarlarını yaparhen .h dosyasını tanımlarken parametreleri türkçe kullansak bir sorun olurmu ayrıca anladığım kadarıyla her micro işlemcinin kendine özgü programlaması var sanırım atmega ayrı microchip ayrı kodlanıyor zannedersem demek istediğim şu http://read.pudn.com/downloads97/sourcecode/embed/399074/SMS_Mcu_Program/gsm/c8051F020.h__.htm bu adreste c8051F020.h registerleri bulunuyor örneğin timer kesmesini turkce kullansan sorun yaşarmıyız .

Örneğin :
sfr TMR3CN   =  0x91;   /* TIMER 3 CONTROL   

sfr KESME3CN   =  0x91;   /* 3\'NCU KESME KONTROLU

gibi bu tür kullansak   sorun yaşarmıyız..