Miky Mouse
13-10-2009, 08:38
ciao a tutti,
allora... il mio problem oggi è questo:
devo scrivedere su una porta seriale (/dev/ttyS3) dei caratteri che vengono ricevuti da un "apparato" su cui non ho controllo (quindi non posso vedere cosa gli arriva effettivamente).
se dalla shell scrivo
echo "ciao" >> /dev/ttyS3
tutto va bene... se invece provo a scrivere un programma che fa la stessa cosa non funziona niente (qualcosa sulla porta viene inviato, ma evidentemente non la scritta giusta perche l'altro apparato non risponde).
più o meno il listato è questo:
tty_fd = open(TTY_DEV,O_RDWR| O_NOCTTY | O_NONBLOCK)
write(tty_fd,"ciao",sizeof(char)*5);
forse nel programma devo impostare di nuovo tutti i parametri di comunicazione per la porta? o forse devo inserire qualche carattere di terminazione nel write?
allora... il mio problem oggi è questo:
devo scrivedere su una porta seriale (/dev/ttyS3) dei caratteri che vengono ricevuti da un "apparato" su cui non ho controllo (quindi non posso vedere cosa gli arriva effettivamente).
se dalla shell scrivo
echo "ciao" >> /dev/ttyS3
tutto va bene... se invece provo a scrivere un programma che fa la stessa cosa non funziona niente (qualcosa sulla porta viene inviato, ma evidentemente non la scritta giusta perche l'altro apparato non risponde).
più o meno il listato è questo:
tty_fd = open(TTY_DEV,O_RDWR| O_NOCTTY | O_NONBLOCK)
write(tty_fd,"ciao",sizeof(char)*5);
forse nel programma devo impostare di nuovo tutti i parametri di comunicazione per la porta? o forse devo inserire qualche carattere di terminazione nel write?