V0 DT2 PIC16F877 1KΩ 1KΩ Prom UYGULAMA AMAÇ prom kalıcı hafıza entegresine, PIC16F77 mikrodenetleyicisinin PD0 ve PD1 portları üzerinden bilgi kayıt edip, kayıt edilen bilgiyi Prom dan okuyarak LCD ekranda göstermek. lektrik Şeması 22pF T X1:4MHz 10KΩ 22pF 1 MCLR 40 PB7 PA0 PB6 PA1 PB5 PA2 PB4 PA3 PB3 PA4 PB2 PA5 PB1 P0 PB0 P1 VCC P2 GND VCC PD7 GND PD6 OSC1 PD5 OSC2 PD4 PC0 PC7 PC1 PC6 PC2 PC5 PC3 PC4 PD0 PD3 PD1 20 PD2 21 DT2 1 8 4 5 51 Ω 10 kω V0 100nF LCD_POT 1 16 d e G e r : 2 5 5 11110 11111 111 11111111100 1111111 dnypic Deneyler artık çok KOLAY! Sayfa - 1
Prom Uygulamanın Programı Proton BASIC 11110 11111 111 11111111100 1111111 Device = 16F877 XTAL 4 Declare LCD_DTPIN PORTB.4 Declare LCD_NPIN PORTB.1 Declare LCD_PIN PORTB.0 Declare LCD_INTRFAC 4 Declare LCD_LINS 2 Cls ' Kullanılan Mikrodenetleyici ' Çalışma Frekans Değeri ' Data portlarının başlangıç biti ' nable bitinin bağlu olduğu port ' Reset bitinin bağlı olduğu port ' LCD 4 bit çalıştırılmaktadır ' LCD 2 satırdır ' LCD kran temizlenir Declare _PIN PORTD.1 Declare _PIN PORTD.0 Dim Okunan As Byte Dim Yazilan As Byte ' pini PD1 portuna bağlanmıştır ' pini PD0 portuna bağlanmıştır ' Okunan değişkeni tanımlanır ' Yazilan değişkeni tanımlanır BASLA: ' BASLA tiketi I2Cin PORTD.0, PORTD.1, $A0, 5, [Okunan] ' 5.Adresdeki değer, Okunan değişkenine yazılır Print At 1,1, "deger:",dec Okunan," " ' LCD kranına deger: ve Okunan degişkeninin ' içersindeki sayısal veri yazdırılır DelayMS 250 ' 250mS gecikme Yazilan = Okunan + 1 ' Okunan değişkenine her döngüde +1 eklenir ve ' sonuç Yazilan değişkenin içerisine yazılır I2COUT PORTD.0, PORTD.1, $A0, 5, [Yazilan] ' Yazilan değişkeninin sayısal değeri Prom un ' 5.Adresine yazılır DelayMS 10 ' 10mS gecikme GoTo BASLA ' BASLA tiketine Dön nd ' Bitir Bu uygulama programında, ilk olarak kullanılan mikrodenetleyici Device komutu ile 16F877 olarak tanımlanır. Harici osilatör devresinde kullanılan kristal değeri 4Mhz dir. Declare LCD_ komutu ile LCD nin çalışabilmesi için gerekli olan bilgiler mikrodenetleyiciye tanıtılır. Ardından LCD de daha önceden oluşmuş olabilecek yazıları silmek için Cls komutu kullanılır. kran temizlendikten sonra, Prom iletişiminde kullanılan ve pinleri tanımlanmıştır. pini PORTD.1, pini PORTD.0 olarak belirlenir. Okunan ve Yazilan değişkenleri Byte olarak tanımlanır. Tanımlama işlemleri yapıldıktan sonra, ana programa geçilir. I2Cin komutu ile 28C08 promun 5.adresinde bulunan sayısal değer okunur ve alınan değer, Okunan değişkeninin içerisine aktarılır. Print At komutu ile LCD ekranının 1.satır ve 1. sütununa ilk olarak deger: text yazısı, ardından Okunan değişkeninin sayısal değeri ekrana yazılır. DelayMS komutu ile 250mS gecikme yapılır. prom un 5. adresindeki sayısal değere, +1 eklenerek yeni değer Yazilan değişkeni içerisine aktarılır. Yazilan değeri, I2COUT komutu ile prom un 5.adresine eski bilgi üzerine yazılır. Goto komutu ile program tekrar BASLA etiketine yönlendirilir. Her bir döngüde, Prom un 5. adresindeki değer +1 artırılarak yeni değer tekrar Prom a yazılır ve okunarak LCD ekrana aktarılır. Değişken değerleri Byte olarak tanımlandığı için, sonuç 0 ile 255 arasında olacaktır. Herhangi bir anda cihazın enerjisi kesilse bile, Prom içerisindeki değer kalıcı olduğu için, yazdığımız değer kaybolmayacaktır. Cihaz tekrar enerjilendirildiğinde program kaldığı yerden devam edecektir. Akış Şeması BAŞLA deger: Dec Okunan Kristal ve LCD Tanımlamaları 250mS Gecikeme Goto BASLA LCD TMİZL Prom OKU Yazilan = Okunan +1 prom = Yazilan 10mS Gecikeme BİTİR Sayfa - 2
A-1 A-2 A-3 A-4 B-1 B-2 B-3 B-4 B-5 B-6 B-7 B-8 L- 1 L- 2 L- 3 L- 4 Y X B PA.0 PA.1 PA.2 PA.3 PA.4 PA.5 PA.6 PA.7 PB.2 PB.3 PC.0 PC.1 PC.2 PC.3 PC.4 PC.5 PC.6 PC.7 PD.0 PD.1 PD.2 PD.3 PD.4 PD.5 PD.6 PD.7 P.0 P.1 P.2 P.3 PA.0 PA.1 PA.2 PA.3 PA.4 PA.5 PA.6 PA.7 PB.2 PB.3 PC.0 PC.1 PC.2 PC.3 PC.4 PC.5 PC.6 PC.7 PD.0 PD.1 PD.2 PD.3 PD.4 PD.5 PD.6 PD.7 P.0 P.1 P.2 P.3 L1 L2 L3 L4 L5 L6 L7 L8 X-1 X-2 X-3 X-4 X-5 X-6 X-7 Y-1 Y-2 Y-3 Y-4 Y-5 NRJİ PORTLARI Prom Kolay Bağlantı Şeması Bu adımda, uygulama için dnypic üzerinde yapmanız gereken kolay bağlantılar gösterilmektedir. Yapılması Gereken Kolay Bağlantılar LCD LD 5X7 LD KRAN DÜDÜK PRVAN DK PV PORT-A PORT-B PORT-C PORT-D PORT- MİKRODNTLYİCİ PORTLARI Bread BOARD +3V3 +3V3 GND GND MİKRODNTLYİCİ PORTLARI PORT-A PORT-B PORT-C PORT-D PORT- POT POT IŞIK IŞIK MCP MCP MNYT K MANYTİK PROM ANAHTAR BUTONLAR LİMİT JOYSTICK Yapılması Gereken Kolay Bağlantılar PD.0 DT2 PD.1 dnypic Deneyler artık çok KOLAY! LCD AYDINLATMA SÇİM Yapılması Gereken Seçimler OSİLATÖR OSL anahtarını OSC konumuna getirin. MCLR SÇİM MCLR anahtarını MCLR konumuna getirin. Sayfa - 3
Ücretsiz Uygulama- www.mekatroniklab.com
Proje Geliştirme Kitleri PIC ğitimleri Komponent Proje Tasarım facebook.com/mekatroniklab www.mekatroniklab.com