unix & rs232

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
tgmx
Linux 4.x
Linux 4.x
Messaggi: 1336
Iscritto il: ven 28 apr 2006, 14:40
Slackware: 14.1
Desktop: KDE 4
Località: Ancona

unix & rs232

Messaggio da tgmx »

Ciao Ragazzi,

mi trovo in questi giorni a dover sviluppare una piccola applicazione su un sistema sco-unix. Non ho mai messo le mani su quel tipo di sistema e tantomento sviluppato software per unix.

Il programma deve accedere alla seriale per trasmettere e ricevere delle stringhe di caratteri. Su linux so come fare ( più o meno) dato che ho già affrontato problematiche del genere ma non sono sicuro di come sia la gestione della seriale su unix.

La prima differenza che ho trovato ( anche la più stupida) è che il device non è /dev/ttyS0 ma /dev/tty1a.
A parte questo c'è altro che cambia? C'è qualche script iniziale che occupa o setta la seriale automaticamente? e se c'è dove lo trovo?

Avatar utente
V
Linux 2.x
Linux 2.x
Messaggi: 313
Iscritto il: gio 23 mar 2006, 10:54

Messaggio da V »

La mia soluzione è potenzialmente un IMMANE cavolata, però:

1) Unix e Linux sono molto simili (che genio sono)
2) In linux la seriale è vista come periferica a caratteri, quindi puoi accederci leggendo e scrivendo delle stinghe appropriate
3) In C prova ad aprire in lettura/scrittura il file /dev/tty1a, leggi e scrivi quello che ti serve con le chiamate di sistema read e write (x info man read ecc)

In alternativa devi ricorrere a ioctl http://en.wikipedia.org/wiki/Ioctl

Fammi sapere!
Ciao!

Avatar utente
tgmx
Linux 4.x
Linux 4.x
Messaggi: 1336
Iscritto il: ven 28 apr 2006, 14:40
Slackware: 14.1
Desktop: KDE 4
Località: Ancona

Messaggio da tgmx »

Quello che dici funziona perfettamente sotto linux, ed è ciò che avevo fatto tempo fa, ma su unix sembra non funzionare.
Ho anche provato ad impostare i vari parametri della seriale con ioctl e compagnia bella ma niente.

Non vorrei che la seriale su unix abbia una gestione diversa, ieri ho anche scoperto che su unix scrivendo in /dev/tty1a si utilizza il dispositivo a caratteri ma scrivendo in /dev/tty1A si comunica con un modem :?

Avatar utente
V
Linux 2.x
Linux 2.x
Messaggi: 313
Iscritto il: gio 23 mar 2006, 10:54

Messaggio da V »


Avatar utente
tgmx
Linux 4.x
Linux 4.x
Messaggi: 1336
Iscritto il: ven 28 apr 2006, 14:40
Slackware: 14.1
Desktop: KDE 4
Località: Ancona

Messaggio da tgmx »

Il secondo lo conoscevo già e l'ho usato per programmare la seriale sotto linux, mentre il primo no e sembra buono. Ora gli do un'occhiata ma in particolare mi servono info sulla seriale di sco-unix (sempre che effettivamente ci siano delle differenze da linux).

Rispondi