Tartalomjegyzék

< C

Portkezelés

GCC

portkezeles.c
#include <sys/io.h>
 
main()
{
    int ertek;
    int lab1, lab2, lab3, lab4, lab5, lab6, lab7, lab8,
 
    //Ellenőrizzük írható-e a port (jog)
    if(ioperm(0x378, 3, 1))
    {
      printf("Nincs jogod a portot írni\n");
      exit(1);
    }
 
    /* Ha lab1 = 1, akkor a lab1 be van kapcsolva. 0 esetén ki */
    lab1 = 0; //Kikapcsolva
    lab2 = 1; //Bekapcsolva
    lab3 = lab4 = lab5 = lab6 = lab7 = lab8 = 0; //Mind kikapcsolva
 
    ertek = lab1*1 + lab2*2 + lab3*4 + lab4*8 + lab5*16 + lab6*32 + lab7* 64 + lab8*128;
 
    //A 0x378-as portra írjuk az értéket. 
    outb(ertek, 0x378);
}

Turbo vagy Borland C (DOS)

output(portcím, adat);