Bu yazın başında boş zamanlarımda ilgilendiğim AVR konusu hakkında aldığım notları birleştirerek 25 sayfalık bir kitapçık haline getirdim. Bu 25 sayfalık kitapçıkta Atmega16 ve Atmega8′in çevresel donanımlarını, özellikle de -bence- Atmega’nın en karmaşık yapılarından olan Capture, Compare ve PWM işlemlerini anlatmaya çalıştım. İçerisinde Hi-Tech Pic Programlama kitabımda olduğu kadar bolca örnek olmasa da özellikle Timer konusunda oldukça doyurucu bilgilere sahip olduğunu düşünüyorum.
Kitapçığı yazmamdaki bir diğer amaç da PIC’den başka mikrodenetleyici görmemiş kişilere, yeni ve özellikle dünya da çok popüler olan AVR’yi tanıtmak istememdi. Kitapçıkta da görülebileceği üzere Atmega’yı tanımak için 25 sayfalık not yeterli olabiliyor.

C#: Gauge

Yorum yok...

Çocuklarla meşe oynayacağım, iş yerine gideceğim, raporları yazacağım derken uzun bir süredir siteyle ilgilenemedim. Fakat bu geri dönüşte herkesin oldukça fazla ilgisini çekeceğini düşündüğüm bir konuya el attım: Gauge.
İnternette dolaşırken ‘gauge’nin oldukça fazla anlama sahip olduğunu gördüm; 1 milin 100′de biri, tüfek namlusu ölçü birimi, ölçü aygıtı.. Benim ise ilgilendiğim tanımı ‘gösterge’ olanıydı. Daha önce C#’ta chart işlemlerini burada paylaşmıştım, fakat ‘chart’ yapmak istediklerimi tam olarak karşılamamaktaydı, bu yüzden C#’ın drawing yani çizim kısmına girmem gerekti.
Öncelikle kendim bir seven-segment uygulaması yapmaya karar verdim. Seven segment’in o köşeli yapısını vermek için System.Drawing sınıfının Polygon metodunu kullandım. Biraz matematiksel hesaptan sonra yanda görülen sonucu elde ettim.

Tatili meşe oynayarak geçirdiğim şu günlerde C# üzerine çalışmalarımı seri port üzerine yoğunlaştırdım. Bir elektrik ya da elektronikçi olarak, şimdilerde geçmiş yüzyılın teknolojisi kabul edilen fakat yeni başlayanlar için kullanım kolaylığı sağlayan seri port haberleşmesi ile oldukça sık uğraşacaksınız. Bu sene özellikle robot kol, FFT gibi projelerde sıkça kullandığım seri portu, C# öğrenmem vesilesi ile tekrar ele aldım. Programı yazarken herkes gibi benim de oldukça sık kullandığım Terminal v1.9b programını baz aldım.
Böyle ufak işler için hazır programlar kullanmaktansa, kendi programımı yazmak istediğimden daha önceki yazımda bahsetmiştim. Fakat var olan bir şeyi yenilemeden kopyalamanın da boşa zaman kaybı olacağını düşünmekteyim. Bunun için Terminal v1.9b programının en büyük eksikliği olarak gördüğüm, o an açık COM port’ların yenilenmemesi olayı üzerine yoğunlaştım.

Bu sene geç kalmış olsam da C# dilini öğrenmeye başladım.
Özellikle en ufak ihtiyacımda bile başkalarının programlarını aramaktan bıktığımdan ele almaya karar verdiğim C#’ı, özellikle C’den sonra, biraz da nesne tabanlı bir dil olmasından dolayı oldukça zevkli buldum.
Şu anda öğrenimimin başında da olsam ufak ve faydalı olabilecek bir uygulama paylaşmaya karar verdim.
AVR’nin PWM kısmı ile çalışırken aklıma sinüs, cosinüs dizilerini otomatik yazdırabileceğim bir program yapma fikri geldi. Bunu elbette PIC ya da AVR’ye kod yazarken kendim de oluşturabilirdim, yalnız dizi tanımlamak hem yerden, hem hızdan kazandırdığı için ben, yapabiliyorsam, dizi kullanmaya özen gösteriyorum.

MSP430

Yorum yok...

Staja başladığım ilk günlerde incelediğim MSP430‘u, işlerimin biraz durulmasından sonra biraz daha öğrenmek için tekrar kutusundan çıkardım. İlk öğrenmeye başladığım zamanlarda osilatör ayarlarının zorluğundan yakınsam da, Texas’ın ilgili dokümanlarında bu ayarların ne kadar kolay yapıldığını görünce, bu kadar zaman bununla mı uğraşıyormuşum diye kendime de kızmıştım. Peki nedir bu MSP430, neden bugünlerde herkesin gündeminde?
Texas Instrument‘in özellikle Microchip’in karşısına “düşük güç tüketimi neymiş gör” diye ürettiği dünyanın en düşük güç harcayan mikrodenetleyicilerinden biri MSP430. Elektronik piyasasında özellikle ürettiği güç entegreleri ile nam salan Texas Instrument’in ürettiği bir mikrodenetleyicinin güç tüketiminin uçuk olması beklenemezdi elbette.

Stajdı, oydu, buydu derken uzun zamandır siteyle ilgilenemedim; son yazımdan bu yana iki hafta geçmiş bile.
İlginç ve daha önce kullanmadığım neyi eklesem siteye diye düşünürken bir arkadaşın “nasıl oluyor da tarama işlemi ile 4 adet 7 segmenti kontrol edebiliyoruz” diye sorması, bu çalışmamı yapmamda ön ayak oldu.
Bir çok sitede tarama mantığı anlatılıyordu yalnız port genişletme kullanan çok az devre gördüm. Benim bu konuda favori port genişletme entegrem ise 74HC595. Projede ayrıca 0-9999 sayıcıdan farklı olsun (ayıp olur artık) diye pek az sitede kullanımını gördüğüm 14 segment display’leri ele almaya karar verdim.
Ayrıca hemen burada belirtmek isterim, kodlarımı deneysel olmadıktan sonra artık PIC’de değil AVR’de yazmaya karar verdim. “Peki biz PIC kullanıcıları ne olacak?” diye soranlara şimdiden söylüyorum, Hi-Tech C’ye geçin, kodları direk kullanın.

Gerek işlerimin yoğunluğundan gerekse üşengeçlikten uzun süredir siteme proje koyamıyordum.
Bugün biraz bunu kırmak amaçlı ufak da olsa, pek çok amatör mikrodenetleyici kullanıcısının göz ardı ettiği ADC çoğullamaya değinmek istedim.
Öncelikle mantık devreleri dersinde hepimizin kullandığı multiplexer ya da demultiplexer entegrelerine benzer bir entegre arayışına girdim. Fakat kullanacağım yapı TTL mantığında çalışmaması gerektiğinden (yani 1V’tu sıfır algılamasını istemiyorum) multiplexer ve demultiplexer’ın bu iş için uygun olmayacağını biliyordum. Bir kaç yerde bu sorunumu dile getirdiğimde ise piyasada oldukça fazla kullanılan 74HC4051 ve 74HC4052 entegrelerini işittim.

Bugün, 3 haftadır, sabah 6, akşam 19 staj seansımdan kurtulduğum bu haftasonu hem kafamı dağıtmak hem de dayımın oğlunun sünneti için memlekete geldim; memleket dediysem benden sadece 150km ötede olan köyüm.
İlk önce dedemi karşıladım, 1 aydır kendisini doğru düzgün görememiştim, zavallım sıcaktan olsa gerek mışıl mışıl uyuyordu, bağırdım ettim ama uyandıramadım. Derken bahçe domatesi, bahçe patlıcanı, bahçe karpuzuyla güzel bir ziyafet çektikten sonra dedem uyandı ve ‘sabah olmadı mı’ dedi. Yaşlılığının belirtileri yavaş yavaş ortaya çıksa da, hâlâ bıraksanız tarlaları çapalayacak, bidonla ağaçları sulayacak. Yaş 70 ama eski toprak onlar, işi bırakmak ile ölüm bir onlar için.

Bu dönem Erkan Zeki Engin tarafından Sayısal Sistem İşleme dersinde bizden aşağıdaki verilen sayısal filtre tasarımının yapılması istendi.
• Köşe frekansı 325Hz olan elliptic low-pass filtre tasarlanacak,
• Girişten 100Hz kare dalga uygulanacak,
• Giriş sinyalinin şekli, FFT’si ve filtrelenmiş sinyalin FFT’si GLCD’de gösterilecek,
• Devre tasarımında FPGA, PIC, 8051 gibi herhangi bir sayısal kontrolcü kullanılacak,
• MATLAB ve simülasyon sonuçları raporda belirtilecek.

Yukarıdaki özellikler aldıktan sonra öncelikle FFT öğrenme çalışmalarına başladık ve burada öncelikle 18F452, daha sonra ise Radix-2 algoritmaları öğrendik.

Bu sene Mutlu Boztepe tarafından verilen Mikroelektronik-II dersi kapsamı içinde bizden dersin de konularını içeren, 3 kanal girişli, vumetre ve bas-tiz ayarlama devresine sahip olan 5Wrms AB sınıfı mono amplifier tasarımın yapılması istendi. Proje tasarımı için bizden istenenler şöyleydi;
• THD (Total Harmonic Distortion) < %0.5 olacak,
• 4Ω yük için en az 5Wrms çıkış gücü üretecek,
• Sensivitesi 100mV’tan küçük,
• Bant genişliği 20Hz-20kHz arasında,
• Giriş Empedansı 10kΩ’dan yüksek olan,
• 3 kanal, 20db bas ve tize sahip, her kanalın sesi farklı ayarlanabilen mikser ve
• En az 8 ledli bir Vu-Metre tasarımı yapılacaktır.

Wordpress'in Gücü Adına Web Design by SRS Solutions ©2010 FxDev | ße Different Everytime! Design by SRS Solutions