Newsgroup: it.hobby.radioamatori
Titolo: KEY CW e PTT via LPT o COM

Ciao...ci sono in giro esempi di interfaccia e sorgenti, codice programma
delle commutazione classiche tipo quelle usate in wlog2000, CT, TRlog ecc...
su LPT e COM in uso con i maggiori soft di comunicazione digitale?
Volevo strusarci dentro un poco, ma non trovo documentazione su come
commutano sti programmi anche perchę finora ho lavorato solo con il VOX...
Qualche link?
grazie!
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com
 - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----

 grazie!
Ciao,
dipende da che linguaggio di programmazione utilizzi o prediligi.
In generale posso dirti questo: agendo sul livello di un segnale 
della RS-232 quale il DTR o l'RTS, hai un metodo semplice, generalmente
facilmente implementabile su ogni tipo di sistema operativo; 
come effetto collaterale hai che sacrifichi una preziosa porta seriale.
In visual basic la cosa e' facilmente realizzabile con l'oggetto 
mscomm che ha proprieta' tipo mscomm.dtrenable=true (cosi' alzi il DTR)
oppure mscomm.dtrenable=false (cosi' abbassi il DTR).
Se invece decidi di muovere il pin di una porta parallela, il discorso
e' un po' piu' complesso e ti e' consentito farlo fino a win 98 SE 
(credo, o forse anche Me) con operazioni di input/output a basso livello 
(scrivo un certo valore sul registro all'indirizzo base LPT 
piu' un certo offset) ma non puoi con Win NT, 2000 o XP, a meno di
non usare device driver specifici.
Una volta scelto un linguaggio di programmazione, credo tu possa 
trovare parecchio materiale sul web.
Qui trovi un sacco di info e anche driver specifici:
http://www.lvr.com/parport.htm
Ciao
Fab
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 > commutano sti programmi anche perchê finora ho lavorato solo con il



AGGIORNAMENTO:
allora sto provando con la DLL per win9x e WINnt/XP/2000 ma non saprei che
comando dare per far lavorare il tutto.
Su una demo ho trovato il comando verso la LPT che passa il codice da 0 a
255 in successione leggendo di conseguenza la risposta.
Non ho idea di cosa spararci dato che il comando è semplicissimo:
Out PortAddress, Value
dove value appunto qui me lo passa in demo da 0 a 255 e la porta
evidentemente in LPT1 &H378 ma volendo trattare sia CWkey che PTT
compatibilmente che ce butto?
ora ho mandato una demo al collega per vedere cosa gli succede da 0 a 255


 compatibilmente che ce butto?
Devo ripescare il codice sorgente di un mio vecchio programma 
DOS (DXHUNTER) dove gestisco un keyer CW su LPT.
Non muovo una delle 8 linee dati ma un pin di controllo (l'avevo 
fatto 100% compatibile con CT)
L'ho scritto col mitico QB45 (DOS) ma la tecnica e' ovviamente valida 
per qualsisi altro linguaggio.
A memoria mi sembra che scrivessi su un indirizzo base + un certo offset
per andare su un certo registro di controllo.
Nel fratempo: tu con che linguaggio ti stai muovendo?
P.S.
Occhio che su certi PC la LPT1 e' su &H378 su altri &H3BC


> Devo ripescare il codice sorgente di un mio vecchio programma 
Ho riesaminato il mio codice.
Faccio un peek alle locazioni di memoria &H408, &H409 
per ricavarmi l'indirizzo della porta LPT.
A quell'indirizzo aggiungo 2
Leggo a indirizzo + 2 ottenendo un byte.
Metto in OR quel byte a 1 e quindi il risultato in AND con 247
Scrivo il risultato su indirizzo + 2
Questo per muovere il pin in un senso.
Per muoverlo nell'altro senso leggo allo stesso indirizzo + 2,
faccio un AND di cio' che ho letto con 246
riscrivo il risultato su indirizzo + 2
P.S.
Con questa tecnica agisci sul pin 1 del connettore 25 poli della LPT 
ovvero lo "strobe".
Il GND lo trovi, ad es. sul 18


 riscrivo il risultato su indirizzo + 2


 il pin del PTT al SLCT 17?
Ma non basta un solo segnale per andare in CW?
Lo STROBE dovrebbe essere quello che ti fa i punti e le linee.
l'SLCT, se non sbaglio, dovrebbe avere un livello fisso.
Se non ricordo male l'interfaccia e' realizzata con un semplice NPN
es. 2N4400 con lo STROBE (1) sull'emettitore e l'SLCT (17)
sulla base (con in serie una resistenza da 1K).
Il collettore va sul polo caldo del PTT, la massa del PTT al GND 
della LPT(18).
I livelli dello strobe (-5V/0V ?) determinano il funzionamento.
I valori da scrivere sula porta sono quelli descritti nel mio msg
precedente dove il primo caso dovrebbe mandarti lo strobe a -5V , 
il secondo a 0V... (non ci metto la mano sul fuoco)
Domanda... sei sicuro che quella DLL funzioni su NT, 2000 ed XP?
Mi dici dove l'hai prelevata?


> I valori da scrivere sulla porta ...
Dove, ricordo, l'indirizzo della porta e' quello di base + 2


Ho verificato con un tester:
Quando strobe (pin 1) va a 0 (emettitore) il transistor conduce 
e porta a massa il polo caldo del keyer: -> CW ON
Quando strobe va a +5V (la stessa tensione di SLCT (pin 17), base del
transistor) il transistor va in interdizione
-> CW OFF
L'indirizzo della porta su cui leggere /scrivere e' LPT +2 (es. &H378 +2)
Il valore da scrivere sulla porta (output) per mandare strobe a 0V (CW ON)
e':
il valore che gia' c'e sulla porta stessa (input) in OR con 1,
il tutto in AND con 247
Il valore da scrivere sulla porta (output) per mandare strobe a +5V (CW
OFF) e':
il valore che gia' c'e sulla porta stessa (input) in AND con 246
P.S.
La mia dll include un kernel mode driver per cui funziona
anche su NT/2000/XP...





 CW KEY OFF:
reg% = Inp(&H378+2)
Out &H378+2, reg% AND 246
Secondo me ci sei vicino :-)


 Secondo me ci sei vicino :-)
Si finalmente ho commutato in TX il TS950 del mio amico con dentro la scheda
del CT, solo che gli ho mandato un veloce applicativo con due tasti ON /
OFF:..
menata della DLL dato che lui ha il PC radio WIN98 e HOME XP,,, quindi deve
cambiare continuamente la DLL.
Beh, ho fatto in modo di chiamarla allo stesso modo per non ricompilare
anche perchè non ho ancora trovato una DLL che accettasse sia WIn9x che
NT/XP.-.. come dici tu.
Mi dirai se `quella che usi la si trova in giro oppure proprietaria o
cos'altro.
Nel caso ti ho scritto in EMAIL in reply ma non so se giusto .. nel caso mi
dirai.
è la teoria che mi interessa, cioè magari come intervenire su altri pin..
ho fatto un paio di prove con DTR RTS... ecc... e vanno perfettamente...
ma mooolto più semplice...
beh dai se ti va il discorso, la cosa mi interessa ma non vorrei stressare
il NG anche se sempre di commutazione radio si parla...
ti cerco su QRZ e ti riscrivo se non hai ricevuto l'email.
CIao
Anto.
