Hoşgeldin, ziyaretçi [ Hesap Oluştur | Giriş YapRSS Feed  | 

Linux paralel port kontrolu

| Genel, Linux Programlama | Kasım 13, 2008

PC ile elektronik sistem konrolu ile uğraşanlar için en çok merak edilen konu bilgisayar portlarıyla elektronik cihazların kontroludur.

Her ne kadar windows ile bu kolayca yapılsa da Linux ile bunu yapmak daha kolaydır. Windows işletim sistemine ve sistem 32/64bit sistemlere göre farklılık gösteri ve ona göre program yazmak gerekir.

Linux işletim sisteminde ilgili kütüpaneler de hazır geldiği için bilgisayar port kontolu daha kolaydır.  Port kontrolu sadece dışarıya açılan paralal ve seri portlarla sınırlı değildir. Bilgisayar içerisine yapılabilecek basit bir kartla sisteme daha çok ve işlevsel port eklenip yazılımlar yoluyla kontrol edilebilir.

En basit haliyle Linux üzerinden bash kabuğundan C ile yazılacak ufak bir programcık ile portlar kontrol edilebilir.

Örnek bir program kodu;

portkontrol.c

#include
#include
#include
#include

main(int argc, char *argvek[])
{
if(argc < 3){
printf("Eksik parametre!\n");
exit(0);
}

if(argc > 3){
printf("Cok fazla parametre !\n");
exit(1);
}

int  port = atoi(argvek[1]);
int  veri = atoi(argvek[2]);

if (ioperm(port,1,1)){
fprintf(stderr, "Couldn't get the port at %x\n", port), exit(1);
}
outb(veri, port);
}

Linux konsolundan programı derlemek için;
gcc -O portkontrol.c -o portkontrol

Programın kullanımı;
./portkontrol port veri

Port adresini bilgisayarınızdaki poert adresinin hex karşılığını girebilirsiniz. Veri olarak girebileceğiniz değer 0-255 arasında olmalıdır. 255 olarak girdiğiniz veri bütün çıkışları “1” durumuna getirecektir. “0” olarak tekrar gönderirseniz bütün çıkışlar off durumuna yani “0” olacaktır.

Programı derleyeceğiniz bilgisayarda gcc, g++ ve bağlı olduğu paketler kurulu olması gerekiyor.

Internete bağlı Debian için şu şekilde paketler ve bağlı olduğu diğer paketler kurulabilir.
apt-get update
apt-get install gcc g++

Share

  

Görüntülenmedi

  

Yorum Yaz

Yorum yazabilmek için giriş yapmalısınız