Commcarte.c : Différence entre versions
m |
m |
||
Ligne 48 : | Ligne 48 : | ||
int closeParPort(int device) | int closeParPort(int device) | ||
{ | { | ||
+ | unsigned char val=3; | ||
+ | if (ioctl (device, PPWCONTROL, &val) < 0) | ||
+ | { | ||
+ | fprintf(stderr,"erreur de configuration : %s (%d)\n", | ||
+ | strerror(errno),errno); | ||
+ | return -1; | ||
+ | } | ||
if (ioctl(device, PPRELEASE) < 0) | if (ioctl(device, PPRELEASE) < 0) | ||
{ | { | ||
Ligne 57 : | Ligne 64 : | ||
{ | { | ||
fprintf(stderr,"Erreur de fermeture : %s (%d)\n", | fprintf(stderr,"Erreur de fermeture : %s (%d)\n", | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
strerror(errno),errno); | strerror(errno),errno); | ||
return -1; | return -1; |
Version du 11 décembre 2012 à 16:07
retour vers la page des Tps II
#include "commcarte.h"
int openParPort(char * parport) { int errno, device; if ((device = open(parport, O_RDWR)) < 0) { fprintf(stderr,"Erreur à l'ouverture : %s (%d)\n", strerror(errno),errno); return -1; } if (ioctl(device, PPCLAIM) < 0) { fprintf(stderr,"Erreur d'accès : %s (%d)\n", strerror(errno),errno); return -1; } unsigned char val=4; if (ioctl (device, PPWCONTROL, &val) < 0) { fprintf(stderr,"erreur de configuration : %s (%d)\n", strerror(errno),errno); return -1; } return device; }
int ecrireParPortp(int device,unsigned char *val) { if (ioctl (device, PPWDATA, val) < 0) { fprintf(stderr,"erreur d'écriture : %s (%d)\n", strerror(errno),errno); return -1; } return 0; }
int ecrireParPort(int device,unsigned char val) { if (ioctl (device, PPWDATA, &val) < 0) { fprintf(stderr,"erreur d'écriture : %s (%d)\n", strerror(errno),errno); return -1; } return 0; }
int closeParPort(int device) { unsigned char val=3; if (ioctl (device, PPWCONTROL, &val) < 0) { fprintf(stderr,"erreur de configuration : %s (%d)\n", strerror(errno),errno); return -1; } if (ioctl(device, PPRELEASE) < 0) { fprintf(stderr,"Erreur : %s (%d)\n", strerror(errno),errno); return -1; } if(close(device) < 0) { fprintf(stderr,"Erreur de fermeture : %s (%d)\n", strerror(errno),errno); return -1; } return 0; }