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 :)
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.
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
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.
ü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
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 :)
Piramit gibi diyelim :)
R-2R ile Analog gerilim elde edebilirsin.
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?
en derli toplu ve ayrıntılı bilgiyi datasheetlerden bulabilirsin