27 Mart 2016 Pazar

İsis'teki Devreyi Ares'e Aktarmak

İsiste çizilmiş olan bir elektronik devreyi ares baskı devre çizim alanına aktarmak basit bir işlemdir ve tek bir tuşla gerçekleşir.

Aşağıdaki resimde direnç, diyot, buton ve dc kaynaktan oluşan basit bir devre yer almaktadır. Bu devreyi arese aktarmak için okla gösterilen ARES yazılı olan simgeye tıklanması yeterli olacaktır.


isisten arese geçme
şekil 1

Şekil 1'deki ARES simgesine tıklandığı zaman aşağıdaki Ares çalışma alanı açılır ve elemanların isimleri Ares çalışma alanındaki COMPONENTS kısmında otomatik olarak yer alır.(şekil 2)

baskı devre çizim ekranı
şekil 2

Aşağıdaki video'da İsiste çizilmiş olan bir devrenin Ares çalışma alanına nasıl aktarıldığı anlatılmıştır.















20 Mart 2016 Pazar

Akım, Gerilim, Direnç, Güç Birimleri

Elektronik devrelerde, devre elemanları üzerinde çeşitli ölçümler yaparken, yaptığımız ölçümlerde birimleri tanımlamamız gerekir. Mesela, devrede, istediğimiz noktadaki gerilimi ölçerken ölçtüğümüz gerilimin birimini de belirtmemiz gerekir. 

Elektronik devrelerde devre üzerinde ölçüm yaparken ya da  elektronik devre elemanlarının değerleri bulurken bazı ölçüm cihazlarını kullnırız. Bu ölçüm cihazlarından bazıları şunlardır:
  • Dijital ölçü aleti
  • Anolog ölçü aleti 
  • Osilaskop
Aşağıdaki resimde dijital ölçü aleti gösterilmektedir. 

avometre
şekil 1


Bu ölçü aletine dikkatlice bakılacak olunursa gerilim, akım, direnç ölçmek için çeşitli kademeler bulunmaktadır. Mesela direnç kademesinde kohm, Mohm seviyesinde ölçüm gerçekleşebilmektedir.

Dolayısıyla akım, gerilim, direnç , güç birimlerini bilmezsek istediğmiz ölçümleri gerçekleştirmemiz mümkün olmayacaktır. 

Aşağıdaki tabloda bazı elektriksel büyüklüklerin birimleri ve bu büyüklükleri ölçmek için kullanılan ölçü aletleri yer almaktadır. 

akım, gerilim, direnç, güç birimleri
şekil 2
Aşağıdaki videoda akım, gerilim, direnç , güç birimleri anlatılıp , bu elektriksel büyüklüklerin birimleri arasındaki dönüşümler ile ilgili örnek sorular çözülmüştür. 



16 Mart 2016 Çarşamba

CCS C Koşul İfadeleri

Şart ifadeleri, koşul ifadeleri benzer kavramlardır ve bu ifadeler programlama dillerinde bir durumun doğru ya da yanlış olması durumunu denetlerken kullanılır ve c dillerinin hepsinde aynı görevi yerine getirirler. Koşul ifadelerinin ne işe yaradıklarını türkçe karşılıklarından anlayabiliriz.

Bu ifadeler şunlardır:

  • if koşulu
  • İf else koşulu 
  • if-else if koşulu
İf Koşulu

"İf"  kelimesi İngilizce bir kelimedir ve Türkçe karşılığı "eğer" kelimesidir.  Kullanım amacına gelirsek şöyle bir örnek verilebilir:Eğer kapı açıksa, içeri gir. Yani bir olayın gerçekleşmesi bir şarta bağlıdır. İf değiminin kullanımı şöyledir:

if(koşul)
{
işlemler

if değimi
şekil 1

Şekil 1'de if koşulunun kullanımıyla ilgili bir örnek verilmiştir. Yukarıdaki program kodlarını şöyle açıklayabiliriz.

  • 8. satırda x değişkenine 3 değeri atanmıştır.
  • 9. satırda y değişkenine 5 değeri atanmıştır. 
  • 11. satırda x ile y karşılarştırılmıştır. Eğer x, y'den küçükse,
  • 14. satırda x , y'den küçüktür yazılması istenmiştir. 

if-else koşulu

Bazı durumlarda şartın sağlanıp sağlanmadığına bakılır. Eğer şart sağlanmazsa başka bir şartın gerçekleşmesi durumuna bakılır ve süreç böyle devam eder. İf-Else koşulunun kullanımı şöyledir;

if(koşul)
{
 işlemler
}
else 
{
işlemler
}

if-else değimi
şekil 2
Şekil 2' de if-else değiminin kullanımıyla ilgili bir örnek verilmiştir. 
  • 10. satırdaki if(x<y) satırında x'in y'den küçük olup olmadığı şartı aranmıştır. 
  • Eğer x , y'den küçükse 13. satırda x, y'den küçüktür ifadesi yazdırılmıştır.
  • 15. satırda else ifadesiyle değilse koşulu aranmıştır ve bu koşul doğruysa,
  • 17. satırda x, y'den büyüktür ifadesi yazdırılmıştır. 

if-else if koşulu


if-else if koşulu sıralı bir koşulur. İstenen durum gerçekleşene kadar else if  değimi sürekli yazılır. 
if-else if koşulunun kullanımı şöyledir;


if(koşul)
{
     işlem1
}
else if(koşul)
{
     işlem2
}
.

.
.
else if(koşul)
{
işlem...
}

if-else if değimi
şekil 3
Şekil 3' de if-else if koşulunun kullanımıyla ilgili bir örnek verilmiştir. Komuyların açıklaması şöyledir;
  • 10. satırda eğer x, 1'e eşitse, 12. satırda x, 1'e eşittir yazdırılır.
  • 15. satırda eğer x, 2'ye eşitse 17. satırda x, 2'ye eşittir yazdırılır.
  • 20. satırda eğer x, 3'e eşitse 22. satırda x, 3'e  eşittir  yazdırılır.
if-else if koşulu istenilen sayıda gerçekleştirilebilinir. 

















13 Mart 2016 Pazar

4017 Entegresiyle Yapılan Yürüyen Işık Devresi

Yürüyen ışık devreleri , entegrelerin çıkışlarına bağlanan ledlerin belli aralıklarla sırasıyla ışık vermesi prensibine dayanılarak oluşturulan devrelerdir. Bu devreler mikrodenetleyici entegreleriyle ya da bu sabit çalışma prensibi olan 4017 benzeri entegrelerle yapılabilir.

Aşağıdaki devre 4017 entegresiyle yapılan yürüyen ışık devresidir. Bu devrede ek olarak 4017 entegresine clock sinyali gönderen bir multivibratör devresi bulunmaktadır.  Şekil 1'de yürüyen ışık devresinin devre şeması yer almaktadır.

4017 yürüyen ışık devresi
şekil 1

Devrede Kullanılan Malzemeler:

  • 2x1 kohm
  • 2x100 kohm
  • 10x220 ohm
  • 2x4.7 uF(mikroFarat)
  • 2xBC237 NPN Transistör
  • 1 adet 4017 entegresi
  • 10xLed diyot

Devrenin Çalışma Prensibi:

Devre iki kısımdan oluşmaktadır. 
  • 1. kısım saat sinyali üreten multivibratör devresi
  • 2. kısım ise  ledlerin belli bir sırada yanmasını sağlayan 4017 entegre devresi


4017 entegresi clock bacağına gelen tetikleme sinyaliyle çıkışındaki yükleri belirli aralıklarla sırasıyla aktif yapan bir entegredir. Bu entegrenin tetikleme sinyali çeşitli devrelerle gerçekleştirilebilir. Bu devrede bu işlem multivibratör devresiyle sağlanmıştır. Tetikleme sinyali 555 entegresiyle yapılan devreden de elde etmek mümkündür. 

Devreye bakacak olursak 4017 entegresine gelen her tetikleme sinyaliyle 4017 çıkışlarından ilk önce Q0 çıkışı aktif olur ve bu çıkışa bağlı led yanar. Daha sonra diğer çıkışlar da sırasıyla aktif olur ve o çıkışa ait olan led ışık verir. Aynı anda sadece bir çıkış aktif olur ve o çıkışa ait led ışık verir  ve bu periyodik bir biçimde devam eder.  

Devredeki ledlerin ışık verme süresi tetikleme sinyalinin peryoduna yani sinyalin yüksekte ve düşükte kalma süreleriyle ilgilidir. Şekil 2'de  multivibratör devresinden elde edilen çıkış sinyalleri görülmektedir. Bu sinyaller kare dalga sinyallerdir. Yani tetikleme sinyalleridir. Bu sinyallere saat sinyali ya da tetikleme sinyalleri adı da verilebilir. Multivibratör devresinde iki adet tetikleme sinyali 1.çıkış ve 2. çıkışlardan elde edilir. İstediğimiz çıkıştan tetikleme sinyalini almamız mümkündür.  

tetikleme sinyalleri
şekil 2

4017 Entegresi



Aşağıdaki şekilde(şekil 3) 4017 entegresinin bacak isimleri yer almaktadır.  
                                                                                                                                                        
şekil 3

4017 entegresi 16 bacaklı bir entegredir.  4017 entegresinde bulunan pinlerden enable, reset, carry out pinleri devre kullanılırken şaseye bağlanır. Entegrenin şase ve pover  uçlarına gerekli enerji verilip devredeki clock pini gerekli tetikleme sinyalini aldıktan sonra entegre çıkışlarını belirli aralıklarla aktif yapar. 

Bu entegre sayıcı uygulamalarında, yürüyen ışık devrelerinde, kayan yazı uygulamaları gibi pek çok devrede kullanılabilir. 

Aşağıdaki videoda 4017 entegresi kullanılarak yapılan yürüyek ışık devresi simülasyonu yer almaktadır. Simülasyon Proteus İsis programında yapılmıştır. 




















10 Mart 2016 Perşembe

CCS C Döngüler

Döngüler Neden Kullanılır?

Programlama dillerinde döngüler, önemli bir yere sahiptir. Kod yazarken çok ama çok uzun bir satırı döngüler sayesinde  çok daha kısa bir şekilde yazabilmek mümkündür. Örneğin;

16F877A Pic mikrodenetleyicisinin C portuna bağlı olan çıkışlarına sırasıyla  0'dan 9'a kadar olan sayıları döngü kullanmadan yazalım.

---------------------------------------------------------
int  x=0;                
output_c(x);       //C portuna 0 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);      //C portuna 1 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 2 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 3 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 4 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 5 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 6 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 7 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 8 değeri gönderildi.
x++;
delay_ms(500);
output_c(x);       //C portuna 9 değeri gönderildi.
x++;
delay_ms(500);

--------------------------------------------------------------

Yukarıdaki kodlarla 0'dan 9'a kadar olan sayılar yaklaşık 30 satırla döngü olmadan tamamlandı.

C portuna 0'dan 9'a kadar olan sayıları yazdıran programı döngü kullanarak aşağıdaki şekilde yazabiliriz:

----------------------------
for(int i=0;i<10;++i)
{
   output_c(i);
   delay_ms(500);
}
-----------------------------

İşte bu kadar.  Evet 5 satırlık kodlar istenilen işlemler for döngüsü kullanılarak gerçekleştirildi. Döngüler bu örnekteki gibi pek çok işlemi gerçekleştirmemize olanak sağlar.

Şimdi bu döngüleri sırasıyla tanıyalım;

1- For Döngüsü

For döngüsünde belli bir sayıdan başlayarak bir işlemi istenilen sayıda tekrar edilir. For döngüsünün yapısı şu şekildedir;

for(ilk değer; koşul; yapılacaklar)
{
    işlemler
}

örnek1:16f877A entegresi kullanarak denetleyicinin A portuna bağlı olan pinlere 0'dan 5' e kadar olan sayılar atılacaktır. Gerekli programı yazınız.

çözüm:
for döngüsü kullanımı
şekil 1 


Şekil 1'de for döngüsünün kullanımıyla ilgili örnek yer almaktadır. 9. satırda for döngüsü başlatılmaktadır.  Bu örnekte for döngüsünün açıklaması şöyledir:

  • Başlangıç değeri 0 olan bir i değişkeni tanımlanır. 
  • i sayısının 10 küçük olup olmadığı kontrol edilir.
  • Eğer i sayısı 10'dan küçükse i değeri 1 artırılır.
  • i değişkeni 10 dan küçük olduuğu sürece parantez içerisindeki işlemler devam eder.
  • i değişkeni 10 olduğu zaman döngüden çıkılır.
  • Döngüde i sayısı sırasıyla 0,1,2,3,4,5,6,7,8,9 değerlerini alır ve  a portuna sırasıyla bu değerler  output_a(i); komutuyla gönderilir. 
2- While Döngüsü

While döngüsü aslında bir koşul döngüsüdür. Bu döngüyle bir şartın olup olmadığı kontrol edilir. Eğer istenilen şart sağlanırsa döngünün içerisindeki satırlar işletilir. Şart sağlanmaz ise döngüden çıkılır. 

While döngüsünün kullanımı şöyledir;

while(koşul ifadesi)
{
     işlemler
}

örnek2:  x adında sabit bir değişken tanımlansın. x değeri 0.5 saniye aralıklarla 1 artsın ve bu artış x                 değeri 10 olana kadar devam etsin ve bu arada b portuna bağlı ledler 100 ms aralıklarla yanıp             sönsün. x değeri 10 olduğunda döngüden çıkılsın. Gerekli programın kodlarını yazınız?

çözüm:

while döngüsü kullanımı
şekil 2

Şekil 2'deki çözümde while döngüsünün kullanımıyla ilgili çözüm yer almaktadır.  Örnekte  while döngüsü 10. satırdan başlamaktadır.  Örnekte döngünün kullanımı şöyledir: 
  • 10. satırdaki koşulda x'in 10'dan küçük olup olmadığı kontrol ediliyor. 
  • x değişkeni 10'dan küçük olduğu sürece while döngüsü 10. ve 15. satırlar arasında işletilir. x'in 10 dan küçük olduğu durumlarda x sırasıyla 0,1,2,3,4,5,6,7,8,9 değerlerini alır ve her değerde b portuna bağlı ledler 500 ms aralıklarla yanıp söner.
  • x değişkeni 10 olduğu anda döngüden çıkılır.
  • 18. satırda ise ana program sonlandırılır. 

3-Do-While Döngüsü

Do While döngüsü while döngüsüyle aynı işlevi görür. Do-While döngüsünün kullanımı şöyledir;

do

{
     işlemler
}while(koşul ifadesi);



Örnek2' deki soru do-while döngüsüyle şu şekilde çözülür:

do-while örnek soru
şekil 3

şekil 3'de do-while döngüsüyle ilgili örnek çözüm yer almaktadır. Örneğe bakacak olursak;
  • 17. satırda x sayısının 10'dan küçük olup olmadığı kontrol edilir. Eğer x 10'dan küçükse do-while döngüsü içerisindeki işlemler gerçekleştirilir yani 12 ve 17. satırlar arasındaki satırlar işletilir.
  • x sayısı 10 olduğunda ise döngüden çıkılır ve program 19. satırda sonlandırılır. 
4-Sonsuz Döngüler

Sonsuz döngüler, programlamada bir işin sürekli yapılması istenilen durumlarda kullanılır. Sonsuz döngü içerisindeki ifadeler sürekli tekrarlanır. Yani sürekli aynı işlemler yapılır. 

örnek3: mikrodenetleyicinin b portuna bağlı olan ledler 1 saniye aralıklarla sürekli yanıp sönsün. Gerekli kodları yazınız. 

Sonsuz döngüler while, do-while ve for döngüleriyle oluşturulabilir.

  • while döngüsü sonsuz döngü olarak şu şekilde oluşturulur:
          while(1)
         {
          işlemler
          }

  • do-while döngüsü sonsuz döngü olarak şu şekilde oluşturulur:
          do
         {
          işlemler
          }while(1)


  • for döngüsü sonsuz döngü olarak şu şekilde oluşturulur:

         for(;;)
         {
         işlemler
          }

örnek3, while sonsuz döngüsüyle şu şekilde oluşturulur(şekil 4);

while sonsuz döngü örnek
şekil 4

örnek3, do-while sonsuz döngüsüyle şu şekilde oluşturulur(şekil 5);

do-while sonsuz döngü örnek
şekil 5

örnek3, for sonsuz  döngüsüyle şu şekilde oluşturulur(şekil 6);

for sonsuz döngü örnek
şekil 6









7 Mart 2016 Pazartesi

Sayı Sistemleri Dönüşümleri

İkilik(Binary)-Onluk(Decimal)  Sayı Sistemi Dönüşümü


Binary sayıları decimal sayılara dönüştürürken binary sayı sistemi içerisinde bulunan rakamları sırasıyla 10’nun katlarıyla çarpıp, her çarpımı birbiriyle toplarız.

soru:
Binary sayı sistemindeki yazılan (11001)₂ sayısını decimal sayı sistemine çeviriniz.

cevap:
(11001)₂=(………)₁₀=2⁰x1+2x0+2x0+2x1+2⁴=1+0+0+8+16=25 olur ve sonuç (25)₁₀ şeklinde yazılır.



Aşağıdaki videoda binary-decimal sayı sistemleri ile ilgili örnek sorular yer almaktadır.




Onluk(Decimal)-İkilik(Binary)  Sayı Sistemi Dönüşümü

Decimal sayılar binary sayılara dönüştürülürken,  decimal sayı sürekli ikiye bölünür.  Her bölümün sonunda kalan sayı sırasıyla baştan sona doğru yazılır ve sonuçta decimal sayı binary sayıya dönüştürülmüş olunur.

soru:
(29)₁₀=(………….)₂
         
cevap:
29 sayısı sürekli 2’ye bölünür.
29/2=                   bölüm=14           kalan=1
14/2=                   bölüm=7              kalan=0
7/2=                     bölüm=3              kalan=1
3/2=                     bölüm=1              kalan=1       

en son bölme işleminden kalan 1 sayısı en başa  yazılır.  Artık bölüm 1 olduğundan dolayı bölme
işlemi  sonlandırılır.  Çünkü 1 sayısı 2 sayısından küçüktür.
                                                                                        
Sonuçta elde edilen sayı : (1101)₂'dir.                                                                                                                    



Aşağıdaki videoda decimal-binary sayı sistemleri ile ilgili örnek sorular yer almaktadır.

                       


İkilik(Binary)-Sekizlik(Oktal)  Sayı Sistemi Dönüşümü

İkilik sayılar, onluk sayılara dönüştürülürken,  ikilik sayı üçerli gruplara ayrılır.  Üçerli gruba ayrılan sayılar onluk sayıya dönüştürülür ve sırasıyla sekizlik sayı olarak yazılır.  

Örneğin, (011010)₂ sayısını oktal sayıya dönüştürelim   .   
  • Sağdaki ilk üç sayı olan 010 sayısının decimal karşılığı 2'dir.
  • Soldaki 011 sayısının decimal karşılığı ise 3'dür. 
Sonuç olarak cevap  (32) sayısıdır. 

Aşağıdaki videoda binary-oktal sayı dönüşümüyle ilgili örnek sorular yer almaktadır.
                                 
              


Sekizlik(Oktal)-İkilik(Binary)  Sayı Sistemi Dönüşümü

Sekizlik sayılar, ikilik sayılara dönüştürülürken  sekizlik taban içerisindeki her bir sayı decimal olarak düşünülür ve bu sayılar sırasıyla binary sayılara dönüştürülür. Sonuç olarak her oktal sayı üçerli gruplar halinde binary sayı olarak yazılır. 


soru:

(376)₈= (.........?.......)₂   sayı dönüşümünü gerçekleştiriniz.

cevap:

376 sayısındaki her bir rakam ikilik sayıya dönüştürülür:
  • 6 sayısının binary karşılığı  110'dir.
  • 7 sayısının binary karşılığı  111'dir.
  • 3 sayısının binary karşılığı  011'dır.   şeklinde binary karşılıklar yazılır. 
sonuç olarak cevap:  (011111110) olarak bulunur. 

Aşağıdaki videoda oktal-binary sayı dönüşümüyle ilgili örnek sorular yer almaktadır.














6 Mart 2016 Pazar

Zaman Gecikmeli Duran Devre (TURN OFF)

Zaman gecikmeli duran devre, butona basıldığında devrede bulunan ledi ya da lambayı yakan , buton bırakıldıktan bir süre sonra ise çıkıştaki ledi söndüren bir devredir.

Şekil 1' de zaman gecikmeli duran devrenin şeması görülmektedir.

turn off devresi
şekil 1

Devrede Kullanılan Elemanlar:

  • 2xBC237 NPN transistör
  • 1 adet buton
  • 1 adet 1000 uF kutuplu kondansatör
  • 1 adet 120k
  • 1 adet 10k
  • 1 adet 1k
  • 1 adet led diyot
  • 12 volt güç kaynağı

Devrenin Çalışma Prensibi:

Zaman gecikmeli duran devrede, butona basıldığında T1 transistörü kesime gider. Bunun sebebi T1 transistörünün B-E uçlarının kısa devre olmasıdır. Böylece T2 transistörü beyz polarmasını  R2 ve R3 dirençleri üzerinden alır ve iletime geçer: Dolayısıyla T2 transistörünün C-E uçları arasından bir akım akar ve devredeki LED1 diyodu yanar yani ışık verir. 

Buton bırakıldığı zaman C kondansatörü şarj olmaya başlar. Kondansatör uçları arasındaki gerilim T1 transistörünün B-E eşik gerilimine yani 0.7 volta ulaştığı anda T1 transistörü iletime geçer. T2 transisötürün beyz polarması ise T1 transistörünün C-E uçları arasından akan negatif polarma olur ve bu akım T2 transistörünü kesime sokar ve LED1 led diyodu ışık vermez.  Devre bu şekilde çalışır.

BC237 Transistörü:

BC237 bir NPN transistördür ve emiter , beyz , kollektör uçlarından oluşur.  Transistörün beyz-emiter eşik gerilimi 0.7 volttur yani bu transistörü iletime geçirebilmek için 0.7 volt değerinde bir gerilim uygulamamız gerekir. 

Aşağıdaki şekilde bir BC237 NPN transistörünün dış görünüşü ve sembolü gösterilmektedir.

bc237 npn
şekil 2




Aşağıdaki video, zaman gecikmeli duran devrenin çalışma prensibi anlatılmıştır ve devre Proteus İsis programında çizilip devrenin simülasyonu yapılmıştır. 





TURN OF Devresinin Baskı Devre Görüntüsü İçin Tıklayınız>>https://goo.gl/Nruxsy

TURN OF Devresinin Eleman Yerleşim Üst Görünüşü İçin Tıklayınız>>https://goo.gl/0GfBqT

TURN OF Devresinin 3 Boyutlu Üst Görüntüsü İçin Tıklayınız>>https://goo.gl/8rXvEz










5 Mart 2016 Cumartesi

CCS C Diziler

Diziler bir topluluktur ve aynı tipteki elemanlardan oluşurlar. Diziler, karakter, sayı gibi tiplere ayrılırlar ve dizi belirtilirken dizinin tipinin ya tanımlamasının da yapılması gerekir.

Dizi tipleri;

1-int tipi

örnek 1:int sayı[5]={2,6,7,9,10};

örnek 1'de  int tipinde sayı isimli 5 değişkenli bir dizi tanımlaması yapılmıştır.  Bu dizinin elemanları 2,6,7,9,10 sayılarından oluşmaktadır.

  • Dizinin birinci elemanı      sayı[0]=2   şeklinde ifade edilir.
  • Dizinin ikinci   elemanı     sayı[1]=6   şeklinde ifade edilir. 
  • Dizinin üçüncü elemanı     sayı[2]=7   şeklinde ifade edilir. 
  • Dizinin dördüncü elemanı  sayı[3]=9   şeklinde ifade edilir. 
  • Dizinin beşinci elemanı      sayı[5]=10  şeklinde ifade edilir. 


2-float tipi 

örnek 2:float ondalık[3];

örnek 2'de 3 elemanlı ondalıklı bir float dizisi tanımlanmıştır. Dizinin adı ondalıkdır.  Dizinin elemanları belirtilmemiştir. Dizinin alacağı değerler 0.5, 6.7 ,4.8 gibi ondalıklı sayılar olabilir.

3- char tipi

örnek 3:char karakter[]={'m', 'e', 'r', 'h', 'a', 'b', 'a'};

örnek 3' de 7 elemanlı char tipinde bir karakter dizisi tanımlanmıştır. Dizi sadece karakterlerden oluşur. Örnekteki dizi 7 elemanlıdır.

  • Dizinin 1. elemanı  karakter[0]='m'  şeklinde ifade edilir. 
  • Dizinin 2. elemanı  karakter[1]='e'  şeklinde ifade edilir.
  • Dizinin 3. elemanı  karakter[2]='r'  şeklinde ifade edilir. 
  • Dizinin 4. elemanı  karakter[3]='h'  şeklinde ifade edilir. 
  • Dizinin 5. elemanı  karakter[4]='a'  şeklinde ifade edilir.
  • Dizinin 6. elemanı  karakter[5]='b'  şeklinde ifade edilir. 
  • Dizinin 7. elemanı  karakter[6]='a'  şeklinde ifade edilir. 



Yukarıdaki dizi tipleri sıklıkla kullanılırlar.

Boyutlarına Göre Diziler:

  • Tek boyutlu diziler
  • Çok boyutlu diziler olarak ikiye ayrılırlar.
Tek boyutlu diziler;bu diziler tek boyutludur.

örnek 4; int x[3];    //Bu dizi 3 karakterden oluşan tek boyutlu bir dizidir. 
  
Çok boyutlu diziler:bu diziler çok boyutludur. 

örnek 5: int  y[2][3];   //Bu disi 3 elemandan oluşan 2 ayrı dizidir. 

örnek 6: int  y[3][4]={{1,2,3,4},
                                    {5,6,7,8},
                                    {9,10,11,12},     
                                    {13,14,15,16}}

örnek 6'da  4 elemandan oluşan 3 ayrı dizi yer almaktadır. 
  • y[0][0]; //bu dizi birinci dizinin birinci elemanıdır. Yani "1" sayısı belirtilmektedir. 
  • y[0][2]; //bu dizi birinci dizinin üçüncü elemanıdır. Yani "3" sayısı belirtilmektedir. 
  • y[1][2]; //bu dizi ikinci dizinin üçüncü elemanıdır. Yani "7" sayısı belirtilmektedir.
  • y[2][0]; //bu dizi üçüncü dizinin birinci elemanıdır. Yani "9" sayısı belirtilmektedir. 
dizi nasıl oluşturulur
şekil 1



şekil 1' de  x adında tanımlanmış 5 boyutlu bir dizi görülmektedir. Bu dizinin elemanları 1,15,34,87,9 sayılarından oluşmaktadır.

Aşağıdaki video'da dizilerin nasıl oluşturulduğu ve dizi çeşitleri hakkında genel bilgiler verilip örnek sorular yer almaktadır.























3 Mart 2016 Perşembe

Paralel Devrelerde Eşdeğer Direnç, Akım Gerilim Hesaplama

Paralel devreler, dirençlerin birbirine paralel bağlanmasıyla oluşan devrelerdir.  İstenildiği kadar direnç birbirine paralel bağlanarak paralel direnç devresi oluşturulabilir.

Aşağıda birbirine paralel olarak bağlanmış direnç devresi yer almaktadır.


şekil 1 

Paralel Devrelerde Toplam Direnci Bulma

Şekil 1'de 3 adet direnç birbirine paralel olarak bağlanmıştır.  Bu dirençlerin birbirine paralel bağlanmasıyla oluşan devrenin  eşdeğer direnci yani toplam direnç değeri Rt'dır. 
Dolayısıyla Rt;

paralel eşdeğer direnç
şekil 2

Şekil 2'de 3 adet direnç birbirine paralel bağlanmıştır. Direnç sayısı arttıkça toplama işlemi de o sayıda artacaktır.

Devredeki toplam direnç değeri bulunduktan sonra devredeki kollardan geçen akım miktarı ve gerilim miktarı bulunur.

Paralel Devrelerde Gerilim Bulma

Paralel direnç devresinde gerilim sabittir, değişmez. Yani bir direnç devresinde paralel dirençler üzerindeki gerilim değeri devredeki kaynak geriline eşittir.

paralel devre
şekil 3

Şekil 3'deki devrede;

Şekil 3 deki devrede paralel dirençler üzerindeki gerilimler;
  • R₁ direnci üzerindeki gerilim V₁
  • R₂ direnci üzerindeki gerilim V₂
  • R₃ direnci üzerindeki gerilim V₃  dür.
  • Kaynak gerilimi ise   V’dir.

Dirençler üzerindeki gerilimler kaynak gerilimine eşittir. Yani;

V= V₁= V₂= V₃ ‘dür.

Paralel Devrelerde Akım Bulma

Paralel devrelerde akım bulurken şu yol izlenir:

  1. Her bir direnç üzerine düşen gerilim değeri bulunur. 
  2. Direnç üzerindeki gerilim, dirence bölünür ve o koldaki akım değeri bulunur. 
Şekil 3'deki devreye bakacak olursak;
  • R₁ direncinden geçen akım I₁
  • R₂ direncinden geçen akım I₂
  • R₃ direncinden geçen akım I₃  dür.
  • Kaynak akımı (anakol akımı)  ise  I'dır.
Dirençler üzerindeki akımlar;


  •       I₁= V₁/R₁
  •     I₂=V₂/R₂
  •     I₃=V₃/R₃
  •     I=V/Rt


Kirşoff'un akım kanununa göre bir düğüm noktasına giren akımlar, çıkan akımlara eşittir. Dolayısıyla;

     I=I₁+I₂+I₃' dür.

Aşağıdaki video'da paralel devrelerde eşdeğer direnç, akım ve gerilim bulma konuları hakkında genel bilgiler yer almaktadır.



Aşağıdaki video'da paralel direnç devreleriyle ilgili örnek sorular yer almaktadır.

       













2 Mart 2016 Çarşamba

CCS C Operatörler

Bütün programlama dillerinde zaman zaman matematiksel işlemler gerçekleştirilir.  Aslında bu matematiksel işlemler programlamada pek çok yerde kullanılır.

Mesala , bir for döngüsü düşünelim. For döngüsünün içerisinde artırma operatörü kullanılır. Bu operatör döngünün içindeki sayıyı ya da değişken değerini belirli bir sayıda artırır. 

örneğin;  for(int i=0; i<10; ++i)
               {
               }


Yukarıdaki örneğe bakacak olursak;
  • i=0  denildiğinde  i değerine 0 sabit sayısı atanır . Yani i değişkeni 0 değerine sahip olur.
  • i<10 denildiğinde ise i değişkeninin 10 sayısından küçük olması gerektiği ifade edilir. 
  • ++i denildiğinde ise i değişkenin 1 sayı artırılıp tekrar i'ye atanması gerektiği ifade edilir. 
Operatörler nerelerde kullanılır?

Operatörler, azaltma, artırma ,bölme, karşılaştırma, bit kaydırma, eşitleme vb. işlemlerde kullanılır. 

CCS C dilinde sıklıkla kullanılan operatörler şunlardır;

CCS C operatörler
şekil 1



Yukarıdaki tablodaki operatörlere örnek verecek olursak;

x ve y isimli iki adet sabit değişken tanımlayalım;
  • ++x işleminde ++ operatörü x değişkenini 1 artırır.  x değeri 1 arttı ve x 6 ya eşit oldu. 
          örnek; x=5,  ++x işlemi sonucunda x=6 olur.
  • x=x+y  işleminde  x sayısı y sayısı ile toplandı ve sonuç tekrar x değişkenine atandı. 
          örnek;  x=5, y=6,   x=x+y ise x=5+6, x=11 olur. 
  • a==b işleminde == operatörü koşul işleminde kullanılır. 
          örnek;  if(a==b)  koşulunda a değişkeni b değişkenine  eşit midir? anlamına gelir. 
  • --x işleminde -- operatörü sayıyı 1 eksiltmeye yarar. 
          örnek;  x=4;    --x sonucunda x=3 olur. 
  •  x<5 işleminde < operatörü x sayısının 5 küçük olması gerektiğini belirtir. 
         örnek; while(x<5) 
                    {
                     }   işleminde  x değişkeni 5 den küçük olduğu sürece döngü içerisindeki işlemler devam                           eder. x 5 olduğunda ise döngüden çıkılır. 
  •  <<x   işleminde << operatörü   x değişkenini istenilen bit değerinde sola kaydırma işlemini yapar
           örnek; x=0110 , 1<<x işleminde x değeri 1 bit sola kayar ve değeri 1100 olur.      


Benzer şekilde diğer operatörler içinde yukarıdaki  işlem mantıklarından yola çıkılarak işlemler gerçekleştirilir. 

Aşağıdaki resimde CCS C derleyicisinde yazılmış küçük bir program parçacığı yer almaktadır ve bu programda bazı matematiksel işlemler kullanılmıştır. Şimdi programdaki işlemlere göz atalım.

toplama, çıkarma, çarpma, kaydırma operatörleri
şekil 2


Şekil 2'deki program 13  satırdan oluşmaktadır. Satırlara teker teker bakacak olursak;
  • 1. satırda x adında sabit bir değişken oluşturulmuş  ve x' e 5 değeri atanmıştır.
  • 2. satırda y adında sabit bir değişken oluşturulmuş  ve y' ye 9 değeri atanmıştır.
  • 3. satırda z adında sabit bir değişken oluşturulmuş  ve z' ye  12 değeri atanmıştır.
  • 4 satır  boş bırakılmıştır. 
  • 5.satırda m adında sabit bir değişken oluşturulup, m'ye  01101 binary sayısı atanmıştır. 
  • 6.satırda n adında  sabit bir değişken oluşturulup, n'ye  10111 binary sayısı atanmıştır. 
  • 7. satır boş bırakılmıştır. 
  • 8. satırda m sayısı 2 bit sola kaydırılmıştır ve sonuç tekrar m' ye atılmıştır. m=10100 olur.
  • 9. satırda m ile n çarpılıp sonuç tekrar m 'ye atanır.  yani m=10100*10111=10100 olur. 
  • 10. satır boş bırakılmıştır. 
  • 11. satırda x 1 artırılır ve x'in son değeri 6  olur.
  • 12. satırda x ile y toplanır ve sonuç x'e aktarılır. x=6+9=15 olur. 
  • 13. satırda z 1 eksiltilir ve z'nin son değeri 12-1=11 olur.