PIC16F84A Mikroişlemci Denetimli Bir Sayısal Sinyal Üretici Tasarım
ÖZET
Günümüz elektroniginde sinyal üreticileri çok önemli bir yer tutmaktadır. Bu cihazlar, sadece Meslek Lisesi, Meslek Yüksek Okulu veya Üniversitelerde degil, ayrıca elektronigi kendine hobi olarak seçen kisiler tarafindan da yaygin bir şekilde kullanilmaktadir. Bir sinyal üreticisinin esas görevi, istenen dalga şeklini dogru ve kararli bir biçimde üretmektir. Üretilen sinyalin, seçilmis olan frekans ve genlik degerlerinde zaman içinde degisim olmamasi sinyal üreticisinin dogru ve güvenli çalıştigini gösterir. Analog sinyal üreticileri hem pahalidirlar hem de RLC elemanlarinda meydana gelen yaslanmadan dolayi, frekans ve genlikte kaymaya sebep olmaktadirlar.
Bu çalışmada, PIC16F84A mikroişlemcisi kullanilarak yapilan bir sayısal sinyal üretici tasarimi önerilmektedir. Önerilen sistemdeki dalga şekilleri bir program tarafindan üretildigi için, zaman içinde frekansın kaymasi veya genligin degismesi gibi sorunlar kesinlikle sözkonusu degildir. Ayrıca, PIC16F84A mikroişlemcisinin ve devrede kullanilan diger elemanlarin son derece ekonomik oluşu, analog üreticilere göre daha ucuz bir üretici devresinin oluşmasina olanak vermistir.
1. GİRİŞ
Bir sayısal sinyal üreticisinin temel görevi, dogru ve kararli bir biçimde istenen dalga şeklini üretmektir. Bu çalışmada kare, üçgen ve sinüzoidal dalga şekillerinin sayısal olarak üretimi göz önüne alınmıştir. Burada tanitilan yöntemin mantigi, sözkonusu dalga şekillerinin bir program tarafindan üretilmesi ve daha sonra Sayısal/Analog Çevirici (Digital to Analog Converter - DAC) kullanmak suretiyle analog sekle dönüstürülmesi temeline dayanmaktadir. Istenen dalga şeklini üretmek ilgili programi çalıştirmakla mümkün olur. Dolayisiyle, bu isaretlerin sirasini belirlemek için iki tane anahtar kullanilmistir. Bu anahtarlarin sayısal degerleri ve üretilen dalga şekilleri sunlardir:
| Anahtar1 | Anahtar2 | Üretilen Dalga Şekli |
| 0 | 0 | Üçgen |
| 1 | 0 | Kare |
| 0 | 1 | Sinüzoidal |
Program üç dalga şekli üretecegi için, üç tane fonksiyondan oluşmaktadir. Anahtar degerleri programın hangi fonksiyonu oluşturacagını belirlemekte ve bu degerler programın içinde kontrol edilip ilgili dalga şekli üretilmektedir.
2. Sayısal SINYAL ÜRETICISININ TASARIMI
Bu çalışmada önerilen sayısal sinyal üreticinin blok şeması Şekil’1de gösterilmistir. PIC16F84A anahtarlarin konumuna göre istenen dalga şekline ait fonksiyonu program içinden çalıştırır ve üretilen sayısal degerler Sayısal/Analog Çevirici (DAC) girişine uygulanir. DAC bu sayısal degerleri 0-4V arasinda kalan analog dc gerilim degerlerine dönüstürür. Dogal olarak, bu noktadaki analog dalga şekillerinde bir dc seviye ortaya çıkmaktadir. Bu noktadaki dc seviye, analog dalga şeklinden 2V eksiltmek suretiyle yok edilmektedir. Genligi ayarlanabilir yapmak için arka arkaya iki adet kazanç devresi yerlestirilmiştir (inverting operational amplifier). Bu çalışmada ayarlanabilir frekans durumu göz önüne alinmamistir.

Şekil 1. Sayısal sinyal üreticisinin blok şeması.
Sayısal sinyal üreticisinin çalışmasini saglayan ve bütün işlemlerin direkt olarak baglantılı oldugu,
devredeki en önemli eleman PIC16F84A mikrokoişlemcisidir. Microişlemci içerisindeki 1024 word’lük
EEPROM (Electrically Erasable Programmable Read Only Memory) yazılan programları tutmakta, 68
byte’lik RAM (Random Access Memory) ise sistemin çalışmasi esnasında geçici bilgi depolama amaciyla
kullanilmaktadir [1]. 13 adet I/O (Input/Output) hattı sistem çalışmasi esnasında programlanabilir olup,
gerekli şekilde ayarlamalar yapilabilir.
Şekil 1’de gösterilen blok semada PIC16F84A mikroişlemcisi, yazilan programi EEPROM’da tutmakta ve devreye gerekli olan gerilim verildikten sonra bu program çalışarak is tenen sinyalin üretilmesini gerçeklestirmektedir.
3. Sayısal SINYAL ÜRETICI DEVRE şeması VE DENEYSEL SONUÇLAR
Önerilen sinyal üretici devresi şekil 2’de gösterilmistir. Buna ek olarak, yazilan programi PIC16F84A mikroişlemcisine bir PC’nin paralel portu üzerinden aktarabilen bir programlayiciya ihtiyaç vardir. Bu programlayicinin devresi www.picall.com internet adresinden indirebilinir [2]. Sistem isleyisi “JAL” dilinde yazilan program sayesinde saglanmaktadir. Program compile edilerek kullanilan işlemcinin makine diline çevrilmis ve yukarida bahsedilen programlayici ile mikroişlemci EEPROM’una saklanmistir. programın ana kontrol kismi asagidaki yapidadir.
-- target configuration: 16f84 with 10 Mhz Xtal include 16f84_10 include jlib port_b_direction = all_output pin_a0_direction = input pin_a1_direction = input -- main loop forever loop if ( ! pin_a0 ) then if ( ! pin_a1 ) then triangle end if end if if ( pin_a0 ) then if ( ! pin_a1 ) then square end if end if if ( ! pin_a0 ) then if ( pin_a1 ) then sinus end if end if if ( pin_a0 ) then if ( pin_a1 ) then port_b = 0 end if end if end loop

Şekil 2. Sayısal sinyal üretici devre şeması.
Şekil 3’de, önerilen sayısal sinyal üreticiden elde edilen deneysel üçgen dalga şekli gösterilmistir. Burada,
anahtar1=0 ve anahtar2=0 konumundadir. Yani, herikisi de topraklanmistir. Şekilden de görülecegi üzere,
toplam genlik 8V’dur (peak-to-peak).

Şekil 3. Üçgen dalga şeklinin sayısal osiloskopta görünüsü.
Şekil 4’de, önerilen sayısal sinyal üreticiden elde edilen deneysel kare dalga şekli gösterilmistir. Burada, anahtar1=0 ve anahtar2=1 konumundadir. Yani, anahtar1 toprakli, anahtar2 ise +5V’a baglidir. Şekilden de görülecegi üzere, toplam genlik yaklasik olarak 11.2V’dur (peak-to-peak).

Şekil 4. Kare dalga şeklinin sayısal osiloskopta görünüsü
Şekil 5’de, önerilen sayısal sinyal üreticiden elde edilen deneysel sinüzoidal dalga şekli gösterilmistir. Burada, anahtar1=1 ve anahtar2=0 konumundadir. Yani, anahtar1 +5V’a bagli, anahtar2 ise topraklidir. Şekilden de görülecegi üzere, toplam genlik yaklasik olarak 12V’dur (peak-to-peak).

Şekil 5. Sinüzoidal dalga şeklinin sayısal osiloskopta görünüsü.
4. SONUÇ
Günümüzdeki teknolojik gelismelere parallel olarak herhangi bir islevin program ile tasarlanmasi ve mikroişlemci ile bütünlesmesi, burada önerilen sayısal sinyal üreticisini, son derece güvenilir ve üzün ömürlü kilmaktadir. Ayrıca yapilan sistemin maloluş fiyatının da son derece düsük olmasi güvenilirlik ile de birlesince, sayısal sinyalüreticisini analog sinyal üreticilerine göre daha da avantajli bir duruma getirmektedir. PIC mikroişlemcilerinin bellek kapasitesi PIC16F84A’ya göre daha iyi olanlari kullanilarak, ayarlanabilir frekans özelligi olan bir sayısal sinyal üretici devresi tasarlanabilir.
5. KAYNAKÇA
[1] PIC16F84A Data sheet (18-pin Enhanced FLASH/EEPROM 8-bit microcontroller),
Microchip Technology Inc., 2001.
[2] www.picall.com
Hazırlayan : Melike SAH ve Doç.Dr. Hasan KÖMÜRCÜGIL
- Yorum yazmak için giriş yapın veya kayıt olun