12 Ağustos 2015 Çarşamba

PIC16F877 İle Zamanla Hızlanarak Kayan Ledler


Eğer mikrodenetleyiciler ile ilgileniyorsanız kayan led yapımını görmüşsünüzdür. Fakat bu ledler arasındaki süre sabittir. Belkide PIC C ile yapılan örnekleri vardır ama ben şahsen Assembly ile yapılanını görmedim. Bunun için böyle bir uygulama yapmaya karar verdik. Umarız beğenirsiniz. Aşağıda bir video ve kaynak kodları vardır.

HTML ve CSS Paragraf Örneği

HTML ve CSS ile yapabildiklerimiz hayal gücümüze kalmış. Bizde şimdi sizler için bir örnek vermek istiyoruz. Bu örnekte hem CSS'ye dair bir şeyler öğrenmiş olacak hem de kendi hayal gücünüzü geliştirmiş
olacaksınız. Sizde hayal gücünüzü kullanarak benzer örnekler yapabilir ve kendinizi geliştirebilirsiniz.

12 Haziran 2015 Cuma

Toplayıcı Devreler

Şimdi sizlere toplayıcı devrelerden bahsetmek istiyoruz ama elektronikte ikili sayı sistemi kullanıldığı için öncelikle ikili sayı sisteminde toplama işleminden bahsedeceğiz. Buda çok basit bir işlem. diyelim ki 110 ve 101 sayıları olsun. Bunların onlu sayı sistemine dönüşümlerini internetten araştırabilirsiniz. Biz şimdi bu iki sayıyı toplamaya çalışacağız:

Önce her iki sayının son basamağını toplarız eğer sonuç 0 ise toplamın son basamağı 0, 1 ise toplamın son basamağı 1, 2 ise toplamın son basamağı 0 ve elde 1 olacaktır. Yani bu 1'i bir sonraki basamakları toplamada ekleyeceğiz. Böylece iki sayının toplamını bulmuş oluruz. Aslında bu toplamayı önce sayıları onlu sayı sistemine çevirip bu iki sayıyı toplar ve sonra yine ikili sayı sistemine çevirebiliriz. Veya en basitinden hesap makinesi ile toplarız :).

11 Haziran 2015 Perşembe

Mantıksal Kapılar

Entegreler, mikrodenetleyiciler, işlemciler, bilgisayarlar; bunların hepsi mantıksal kapılarla oluşturuluyor. Mantıksal kapılarda transistörlerle. Yani en temelde transister var, ondan sonra mantıksal kapılar. Bunun için bunları size verme ihtiyacı doğdu. İleride İnşallah mantıksal kapılarla toplama, çıkarma, bölme ve çarpma işlemlerini gerçekleştireceğiz. Hatta işlemcilerin aritmetik mantık birimi olan ALU tasarlayacağız.

Mantıksal kapılarla işlem yaparken ikili sayı sistemini kullanacağız. Çünkü bunlar elektriğin varlığı ve yokluğu arasında işlem yapabiliyorlar. Elektriğin varlığına 1 ve yokluğuna 0 demişler. Bizde buna göre tanım yapacağız. Şimdi kapıları tanıtalım.

Değil Kapısı: Bu kapı tek girişlidir. Girilen değer terslenir. Yani 1 ise 0 oluri 0 ise 1 olur.

Ve Kapısı: Bu ve bundan sonraki kapıların giriş sayısı en az ikidir. Girilen değerlerin içerisinde 0 var ise çıkış 0'dır. Çıkışın 1 olması için tüm girişlerin 1 olması gerekir.

Veya Kapısı: Girilen değerlerden en az biri 1 ise çıkış 1'dir. Çıkışın 0 olması için girişlerin tümü 0 olmalıdır.

Ve-Değil Kapısı: Bu kapı Ve Kapısı ile Değil Kapısı'nın birleşiminden oluşur. Yani Ve Kapısın'daki çıkış değerini tersler.

Veya-Değil Kapısı: Buda aynı Ve-Değil Kapısı gibidir. Yani Veya Kapısı'ndaki çıkış değerini tersler.

Özel Veya Kapısı: Girilen değerlerin sadece bir tanesinin 1 olması durumunda çıkışa 1 değerini verir. Çıkışın sıfır olması için giriş değerlerinin; ya hepsi 0 değerini almalı ya da en az ikisi 1 değerini almalıdır.

Özel Veya-Değil Kapısı: Özel Veya Kapısı'ndaki çıkış değerini tersler.

Bunları kısaca anlattıktan sonra birde kapıların şematik resmini gösterelim. Bu resim 'Logisim' adlı programdan yararlanılarak yapılmıştır. Sizde bu programı indirerek mantıksal kapıları test edebilirsiniz.




:::KAYNAK DOSYALARINI İNDİR:::


Logisim programının kaynak kodunu indirmek için tıklayın.

PIC Programlamaya Giriş

Eğer seninde elektroniğe merakın varsa öğrenmen gereken önemli konulardan biride mikrodenetleyicilerdir. Çünkü elektronik bunlar sayesinde eğlenceli oluyor. Örneğin mikrodenetleyiciler ile çizgi izleyen robotunu yapabilirsin veya kendi uzaktan kumandalı arabanı. Hatta alkış ile odanın lambasını açan bir proje yapabilirsin. Bunun dışındaki her şey senin hayal gücüne kalmış. Çünkü hayal ettiğin çoğu şeyi mikrodenetleyiciler ile gerçekleştirebilirsin. Bu arada son zamanlarda popular olan arduino ile de hayallerinizdeki projelerinizi gerçekleştirebilirsiniz. Hatta daha hızlı gerçekleştirirsiniz. Fakat benim tavsiyem bunu yapmamanız.

Amacınız sadece yapmak ise arduino sizin için biçilmiş kaftandır. Fakat bunu yaparken kaputun altında gerçekleşen olayları gözardı etmiş olursunuz. Birde bu işe başlarken sizde olması gereken en önemli kriter sabırdır. Bir şeyi yaparken bir sorun çıktığında hemen pes etmeyin. Araştırın (ki bu gereken en önemli ikinci kriter; araştırmacı olmak.), forumlara bakın, yabancı kaynaklara bakın ama hemen vazgeçmeyin. Eğer sabredemeyecekseniz bu işe başlamamanızı tavsiye ederim.

Biz bu seride sizlere hem konu anlatacağız hemde olabildiğince fazladan örnek program vermeye çalışacağız. Bu işin en önemli noktalarından biri de program incelemesidir. Ne kadar çok örnek program incelerseniz o kadar çok yeni projeler üretebileceksiniz.

PIC programlamayı assembly programlama dili ile yapacağız. Bu dil anlaşılması zor olan bir dildir. Ama anladığımız zaman da mikrodenetleyicilerin ve bilgisayarların nasıl çalıştığını çok iyi bir şekilde anlayacağız. Böylece sistem tasarlarken ne yapmamız gerektiğini bileceğiz. Bir dahaki derste görüşmek üzere Allah'a emanet olun!

6 Nisan 2015 Pazartesi

Türüne Göre En Büyük 10 Dinozor

Arkalarında dev fosiller bırakmış olmalarına rağmen yaşamış en büyük dinozorları tanımlamak oldukça zor. Çünkü bu fosillerin her zaman tam bir iskelet halinde çıkarılması mümkün olmuyor.

4 Nisan 2015 Cumartesi

Toplam Sembolü

Eğer matematikle ilgileniyorsanız bu sembolü ve kurallarını bilmeniz sizin işinizi oldukça kolaylaştıracaktır.  (Sigma) sembolünü ile gösterilir. Bir sayı dizisinin toplamını ifade eder. Matematiksel açıklaması şöyledir:

25 Mart 2015 Çarşamba

C++ Switch Case Yapısı

Bu yapı ile verilen bir değişkendeki veriyi kontrol ederek, program akışını bir çok seçenekten birine yönlendirir. Switch() ile değişkendeki veri alınır. Case ile değişendeki veri kontrol edilir. Eğer case'deki durumların hiçbirine uymazsa program default'da yer alan komutları çalıştıracaktır. Bunu if else yapısı ile de yapabiliriz. Fakat program kodları biraz uzun olacağından programcılar bu yapıyı tercih ediyorlar.

7 Mart 2015 Cumartesi

Yazının Şifrelisi: KRİPTOGRAFİ

Enigma Makinesi: Gizli mesajların şifrelenmesi ve tekrar çözülmesi amacı ile kullanılan bir şifre makinesi.
Bu makine Nazi Alman Ordusu tarafından II. Dünya Savaş’ı sırasında haberleşme için kullanıldı. Fakat müttefik şifreciler tarafından geniş mesajları çözümlendi. Bu durum müttefiklerinin savaşı kazanmalarını kolaylaştırdı. Hatta bazı tarihçiler Alman Enigma kod sisteminin deşifre edilmesi Avrupa’da savaşın 1 yıl önce bitmesine sebep olduğunu ileri sürmüşlerdi.
Konuya böyle başlamamızın sebebi gizli iletişimin önemini vurgulamak içindi. Bu iletişim günümüzün de önemli parçalarından biridir. Çünkü teknolojinin gelişmesiyle artık elektronik ticaretin önü açılmış oldu.

8 Ocak 2015 Perşembe

C++ İf Else ve Else İf Yapısı


C++ dilinde koşul ifadeleri çok önemlidir. İşte bu koşul ifadelerini "if else" yapısı ile yapıyoruz. Bu yapı sadece iki koşul için geçerlidir. İkiden fazla koşul için "else if"  yapısını kullanırız.

C++ Mantıksal Operatörler

En çok kullanılan operatörler aşağıda verilmiştir.

 "+"------> Toplama operatörü
 "-"------> Çıkarma operatörü
 "*"------> Çarpma operatörü
 "/" -----> Bölme operatörü 
 "=="----> Eşittir operatörü
 "!="----> Eşit değildir operatörü
 "<="----> Küçük eşit operatörü
 ">="----> Büyük eşit operatörü
 "&&"----> Ve operatörü
 "||"----> Veya operatörü
 "%" -----> Mod alma operatörü.