PIC C ile Dalga Jeneratörü yapmak(DAC kulanımı)

Başlatan SCHOTTKY, 28 Mart 2006, 19:37:17

SCHOTTKY

Merhabalar,

ben, ödev projesi olarak, grafik LCD ekranlı ve programlanabilir hafızası olan bir TENS veya EMS cihazı yapacağım.Bu cihazlar temelde bir tür sinyal jeneratörü olarak görev yaparlar.Ben de PIC16F877 veya benzeri bir entegreyi programlayarak bu işlemleri gerçekleştireceğim.Ancak, PIC C ile bu fonksiyonları nasıl yazmam gerektiğini ve daha da önemlisi bunları analog çıkışa nasıl çevireceğimi bilmiyorum.Siteyi iyice gözden geçirdim ama tam olarak aradığım şeyi bulamadım.Bu konuda yardımcı olabilirseniz çok memnun olurum.

NOT: PIC C dilini temel seviyede biliyorum, kendimi geliştirmek için tavsiye edebileceğiniz iyi bir kaynak varsa onu da paylaşmanızı rica edeceğim :)

Klein

valla kodu analog sinyale çevirmek kolay ,  PIC'ın capture modülünü kullanıp PWM elde edersin.  Biraz da kristal frekansını yüksek tutarsan , bayaa da hızlı bi analog çıkışın olur. ama o çıkıştan sinüs üretmeye kalkınca işler biraz zorlaşır.   yazılım'ı halledersin C nin kütüphanesinde her türlü trigonometrik fonksiyon var. Ama  10HZ lik , bir sinüs için ; şeklinde biraz bozulma çok önemli olmaz da dersen , her periyotta en az 14 örnekten = 140 örnek demek. Aslında  fena da değil. PIC 'in bölücülerini vs tam hatırlamıyorum ama , 20 MHZ' de en az 1-2 KHZ alırsın. bu da yine bi periyodu 14 noktadan örnekleyerek 100-150 HZ 'e kadar çıkabilirsin demek.

CaFFeiNe

devrene ekstradan bir DAC ilave edersen (kullanacağın DAC a bağlı olarak) daha yüksek frekanslara ve daha düzgün dalga şekline sahip olabilirsin

Klein

ekstra eleman bağlanacaksa dac'a bile gerek yok. SPI dan kontrol edlebilen çok geniş frekans aralığına sahip çipler var.  şimdi kodunu hatırlamıyorum. ama önümüzdeki günlerde öğrenir , yazarım. test edildi gerçekten harika bir çip. sinüs , kare  , testere dişi ve üçgen dalga üretebiliyo.

argeelektronik

üretmek istediğin frekans aralığı nedir?
eğer çok geniş bandlı değilse bir dizi direnç ve kondansatör kullanarak  kare dalgayı sinus sa çevirebilirsin
Altında Çürümekten Kurtulamıyacağın Topraklar Üzerinde Böbürlenerek Yürüme, Üzerine Tükürmeye Bile Miğdenin kaldıramıyacağı Kurtçuklara Yem Olacak Bedeninle...

SCHOTTKY

10-500Hz(hatta 1 KHz)arası bir frekansa ihtiyacım var.Dalga formalrı olarak da sinüzoidal tipteki şekilleri kullanmayacağım, tamamı içgenimsi olacak :)

Erol YILMAZ

Piramit gibi diyelim :)

R-2R ile Analog gerilim elde edebilirsin.

SCHOTTKY

Arkadaşlar,

cevaplarınız için çok teşekkür ederim.Fakat ben acemi olduğumdan GLCD(mümkünse dokunmatik) ile ilgili bilgiye ihtiyacım var.Forumda bulduğum bilgiler çok dağınık.Daha derli-toplu ve ayrıntılı bilgiyi nereden bulabilirim?

CaFFeiNe

en derli toplu ve ayrıntılı bilgiyi datasheetlerden bulabilirsin