PDA

View Full Version : [c]Programmare led porta parallela


ozzy19
10-04-2010, 00:13
Salve a tutti, vorrei far lampeggiare un led sulla porta parallela tramite questo codice che ho trovato su google:


#include <stdio.h>
#include <stdlib.h>
#include <asm/io.h>

// Indirizzo della parallela
#define PORT 0x378

main() {
// Controllo che utente sono
int uid=geteuid();

// Se non sono root, acquisisco i privilegi con un setreuid()
if (uid)
setreuid(0,0);

// Attivo la porta
if (ioperm(PORT,3,1)<0)
exit(1);

// Torno a essere utente normale
setreuid(uid,uid);

// Ciclo infinito
while (1) {
// Scrivo 0000 0001 sulla porta
// in modo da alimentare solo il data pin n.1
// dove è collegato il nostro diodo
outb(0xFF,PORT);

// Aspetto un secondo
sleep(1);

// Disattivo i data pin scrivendo 0000 0000 sulla porta
outb(0,PORT);

// Aspetto un secondo
sleep(1);
}
}



Il problema è questa linea di codice #include <asm/io.h> , io uso da poco dev c++ in windows e sono un novizio nel c,mi dice libreria non trovata, è possibile aggiungere questa libreria? se si da dove scaricarla? Grazie attendo risposta!!:)

lupoxxx87
10-04-2010, 00:52
è una libreria linux

||ElChE||88
10-04-2010, 01:08
Non è una libreria, è un file header che sta nei sorgenti del kernel Linux.

lupoxxx87
10-04-2010, 01:35
cos'è un file header ?
una libreria di prototipi di funzioni...

ozzy19
10-04-2010, 01:45
Ma in pratica per windows non c'è nulla? come lo potrei adattare per windows?

||ElChE||88
10-04-2010, 02:15
cos'è un file header ?
una libreria di prototipi di funzioni...
No, la libreria è quella che contiene le funzioni, il file header serve a facilitare l'uso della libreria.
Ma in pratica per windows non c'è nulla? come lo potrei adattare per windows?
Ci sono sicuramente altri modi, questo è solo per linux.

ozzy19
10-04-2010, 11:54
Ci sono sicuramente altri modi, questo è solo per linux.
Sucsami ma quali potrebbero essere? non sono tanto esperto!! Grazie!!:)

wizard1993
10-04-2010, 13:58
direttamente dall'archivio microsoft
http://msdn.microsoft.com/en-us/library/ms810467.aspx