Yazar Arşivleri: abdullaho

abdullaho

abdullaho Hakkında

Yazılımları Hi Tech C derleyici ile hazırlanmış çeşitli mikrodenetleyici proje yazıları. Hi Tech C Örnekleri, Led, Display devreleri, Mikrodenetleyici matematik işlemleri İletişim E-Posta

Hi Tech C Örnekleri Hakkında

| 2011/01/15

Günümüzde en popüler mikro denetleyicilerden biri olan PIC için ondan fazla derleyici vardır. Her derleyicinin kendisine göre avantajı ve dezavantajı mevcuttur. Bazılarını yeni başlayan biri çok çabuk kavrayarak hemen proje üretmeye başlayabilir. Ne yazık ki bu tür derleyicilerin bir kısmı projeniz büyüdüğünde sizi yarı yolda bırakabiliyor. Bazı derleyiciler içindeki kapalı kütüphaneleri nedeniyle arka tarafta neler…

Hi tech C 8 led kayan ışık uygulaması

| 2011/01/14

İkinci çalışmamız kayan ışık uygulamasıdır. Pic’e ledleri iki türlü bağlarsınız. Birincisinde porttan dışarıya 25mA lik bir source akımı ile sürersiniz. Bu durumda ledin anodu pice bir direnç ile şaseye bağlanır. Port 1 uygulandığında led yanar. İkinci türde ise bu devremizdeki gibi ledin katodu pice, diğer ucu bir direnç ile pozitif gerilime bağlanır. Bu durumda ledi…

Hi tech C ile 8 Ledli karaşimşek efekt devresi

| 2011/01/14

Bu uygulama adını 80lerin efsane dizisinden almaktadır. Karaşimşek 🙂 Bu uygulamada ledlerin katotu pice bağlanmıştır. İlgili port 1 yapıldığında led yanmaktadır. Sonsuz döngü içinde iki tane for döngüsü yer almaktadır. Döngüye girilmeden önce ilk yanacak lede atama yapılır. Ondan sonra ilk döngüde sola ikinci döngüde sağa kaydırılarak karaşimşek efeği oluşturulmuştur.

Hi tech C ile kaydırma işlelemi örneği

| 2011/01/14

Bu uygulama ilk başta size biraz zormuş gibi gelebilir. Öncelikle burada 8bit değil 16 bitlik kaydırma işlemi kullanılmıştır. Bunu yapmak içinde 16 bitlik gecici bir değişken (tmp değişkeni) tanımlanmıştır. Tüm kaydırma işlemleri ilk önce bu değişkende yapılmış ve sonrada ilgili portlara aktarılmıştır. 16bitlik bir yapıyı iki tane 8 bite bölmek için aşağıdaki yapılar kullanılmıştır. LED1=(unsigned…

Hi tech C trafik ışığı uygulama örneği

| 2011/01/14

Trafik ışığı uygulaması diğer uygulamalardan farklı değildir. Bir porta birden fazla led bağlanmıştır. Bir porta birden fazla led bağlanacağı zaman çıkış akımını mutlaka bir transistör ile yükseltin. Direk bağladığınızda Pice zarar verirsiniz. Karşılıklı olan ledler aynı porta bağlanmıştır. Örnek devrenin isis çizimi; RB1=!RB1; ifade bir önceki değerin zıttını atar.Buna elektronikte Değil işlemi denir. Önceki değer…

Hi tech C ile basit ortak katot display örneği

| 2011/01/14

Uygulamamızda ortak katot seven segment display kullanılmıştır. 0 sayısını displayde göstermek için a,b,c,d,e,f pinlerinin bağlandığı portlar 1 yapılmalıdır. 1 sayısını göstermek için ise b ve c pinlerinin bağlandığı portlar 1 diğerleri 0 yapılmalıdır. Öncelikle displayde hangi sayının gösterilmesi için hangi değerlerin atanması gerektiği bilgisi hazırlanmalıdır. Bu veriyi bir tabloda kaydederiz. C programlama dilinde tablolar dizi…

Birleştirilen displaylerin kullanımı

| 2011/01/14

Pice tek bir display bağlamak için 8 pin gerekmektedir. Peki 8 tane displayi pice bağlamak için 8×8=64 pin mi gerekir? Bu kadar çok pini olan picler piyasada rahatlıkla bulunmazlar. Bulsanız bile diğerlerine göre fiyatları yüksektir. Portları çoğalmak için ekstra eleman kullanmak hem devrenizi karmaşıklaştırır hemde maliyetini arttırmaktadır. Ayrıca devrenizin kaplayacağı alanda büyür. isis devre çizimi;…

Hi tech C ile display yanıp sönme efekti

| 2011/01/14

Displaye yanıp sönme efekti vermek istediğimiz durumlarda belli bir süre display taranır. Taranma esnasında displayler yanacaktır. Sonra ortak anod display için porta 0xFF atanır ve tarama işlemi durdurulursa tüm displayler aynı anda sönecektir. Devrenin proteus isis çizimi;

Display kontrolü (digitlere değişken atama)

| 2011/01/14

Displayleri en kolay kontrol etmenin yolu her bir digit için bir değişken atamaktır. Bu uygulamada display tmp dizisi ile kontrol edilmektedir. Hangi displayde hangi sayı gösterilmek isteniyorsa dizinin ilgili elemanına istenen sayı atarnır. Örneğin tmp[0]=5 atayarak ilk displayde 5 gösterilir. Tmp[7]=9 atayarak son displayde 9 gösterilir. Eğer displayde hiçbirşey göstermek istenmiyorsa ilgili değişkene 0xFF ataması…

Butonlar ile 16 led kontrolü

| 2011/01/14

Devrede kullanılan Picin buton bağlanan pinleri giriş yapılmak için ilgili TRIS registerının ilgili biti 1 yapılır. Butonlar birer pullup direnci ile Pice bağlanır. Buton basılı değilse ilgili porttan 1, buton basılıysa 0 okunur. #define L_UP RA2 tanımlamaları kullanılarak esnek bir program yazılmıştır. Sadece burayı değiştirerek buton rahatlıkla başka bir porta taşınabilinir. Butonun basılıp basılmadığı if…