C# ile Paralel Port Kullanımı:
Şuan pek kullanılmıyor olsa da (usb vs… yanında) paralel port u kullanmanın önemli olduğunu düşünüyorum ve bu konudaki bilgilerimi dilim döndüğünce anlatarak paylaşmak istiyorum.
Öncelikle paralel “port nedir?” sorsunu sorduğunuzda :”Paralel port bilgisayarımıza genellikle yazıcıyı bağlayarak veri(data) transferi yaptığımız konnektördür.” cevabını size verebilirim.
Fakat bazen (bende olduğu gibi) programlama ile ilgilenen insanlar bilgisayarı aracılığı ile bazı mekanizmaları kontrol etmek isteyebilirler.Buna örnek verecek olursak : televizyon, buzdolabı, çamaşır makinesi vb ev aletleri veya aklınıza gelebilecek her türlü elektronik devre…Ve bu istek üzerine farklı bir amaca yöneldiğimiz için farklı yollar izlememiz gerekir.Öncelikle parelel port un yapısını, nasıl çalıştığını anlamamız gereklidir.
Paralel port 25 adet pine sahiptir.Benim anlatacağım konuda bu pinlerden sadece 8’ini yani çıkış pinlerini kullanacağız.Bu 8 pin aracılığı ile +5 v göndererek tetikleme enerjisi elde edeceğiz.Bu tetikleme enerjisi sayesinde de istediğimiz mekanizmayı ara devreler yardımı ile istediğimiz an çalıştırıp durdurabiliriz.Gelelim kullandığımız 8 pin in 25 tanesinden hangileri olduğuna….Lpt kablosunun erkek ucuna (delikli olmayan http://dijitalbilgi.tripod.com/images/pc1a.jpg ) baktığımızda 1,2,3,4…25 e kadar yazan numaraları göreceğiz…Bu numaralardan 2,3,4,5,6,7,8,9 olanları bizim işimize yarayanlardır.
http://dijitalbilgi.tripod.com/images/parale1.gifyapısına buradan bakabilirsiniz..
Her neyse artık bizimle ilgili olan programlama kısmına geçelim…
Öncelikle internet üzerinden inpout32.dll ini edinin ve c://Windows/system32 ye kopyalayın.Çünkü programı yazarken bu dll bize lazım olacak…
Programımızda bu dll e ;
class gonder
{
[DllImport("inpout32.dll", EntryPoint = "Out32")]
public static extern void verigonder(int pn, int sayi);
}
class ını ekleyerek ulaşıyoruz..
ayrıca
using System.Runtime.InteropServices;
referansını da eklemeniz gerekiyor.
Bu işlemleri tamamladıktan sonra istediğimiz olay içerisine aşagıdaki kodumuzu ekleyebiliriz :
//gonder.verigonder(888, 255);
//255 sayısı binary olarak”11111111” sayısına karşılık gelmektedir.Bu şekilde kod eklediğinizde tüm pinlere +5v gönderilecektir. 888 sayısı ise port numarasını vermektedir.Port numarası : Paralel port un (Lpt1) bilgisayar üzerindeki donanım numarasıdır.888 in karşılığı &378 dir.
Şuan pek kullanılmıyor olsa da (usb vs… yanında) paralel port u kullanmanın önemli olduğunu düşünüyorum ve bu konudaki bilgilerimi dilim döndüğünce anlatarak paylaşmak istiyorum.
Öncelikle paralel “port nedir?” sorsunu sorduğunuzda :”Paralel port bilgisayarımıza genellikle yazıcıyı bağlayarak veri(data) transferi yaptığımız konnektördür.” cevabını size verebilirim.
Fakat bazen (bende olduğu gibi) programlama ile ilgilenen insanlar bilgisayarı aracılığı ile bazı mekanizmaları kontrol etmek isteyebilirler.Buna örnek verecek olursak : televizyon, buzdolabı, çamaşır makinesi vb ev aletleri veya aklınıza gelebilecek her türlü elektronik devre…Ve bu istek üzerine farklı bir amaca yöneldiğimiz için farklı yollar izlememiz gerekir.Öncelikle parelel port un yapısını, nasıl çalıştığını anlamamız gereklidir.
Paralel port 25 adet pine sahiptir.Benim anlatacağım konuda bu pinlerden sadece 8’ini yani çıkış pinlerini kullanacağız.Bu 8 pin aracılığı ile +5 v göndererek tetikleme enerjisi elde edeceğiz.Bu tetikleme enerjisi sayesinde de istediğimiz mekanizmayı ara devreler yardımı ile istediğimiz an çalıştırıp durdurabiliriz.Gelelim kullandığımız 8 pin in 25 tanesinden hangileri olduğuna….Lpt kablosunun erkek ucuna (delikli olmayan http://dijitalbilgi.tripod.com/images/pc1a.jpg ) baktığımızda 1,2,3,4…25 e kadar yazan numaraları göreceğiz…Bu numaralardan 2,3,4,5,6,7,8,9 olanları bizim işimize yarayanlardır.
http://dijitalbilgi.tripod.com/images/parale1.gifyapısına buradan bakabilirsiniz..
Her neyse artık bizimle ilgili olan programlama kısmına geçelim…
Öncelikle internet üzerinden inpout32.dll ini edinin ve c://Windows/system32 ye kopyalayın.Çünkü programı yazarken bu dll bize lazım olacak…
Programımızda bu dll e ;
class gonder
{
[DllImport("inpout32.dll", EntryPoint = "Out32")]
public static extern void verigonder(int pn, int sayi);
}
class ını ekleyerek ulaşıyoruz..
ayrıca
using System.Runtime.InteropServices;
referansını da eklemeniz gerekiyor.
Bu işlemleri tamamladıktan sonra istediğimiz olay içerisine aşagıdaki kodumuzu ekleyebiliriz :
//gonder.verigonder(888, 255);
//255 sayısı binary olarak”11111111” sayısına karşılık gelmektedir.Bu şekilde kod eklediğinizde tüm pinlere +5v gönderilecektir. 888 sayısı ise port numarasını vermektedir.Port numarası : Paralel port un (Lpt1) bilgisayar üzerindeki donanım numarasıdır.888 in karşılığı &378 dir.