Newsgroup: it.comp.lang.delphi
Titolo: Come leggere una frequenza sulla parallela?

Ciao a tutti.
Mi chiamo Paolo e sono di Bologna.
Ho l'hobby dell'acquario ed in rete ho reperito lo schema di un misuratore
di conduttività (purezza dell'acqua) a basso costo da collegare alla porta
parallela. Viene fornito un programma DOS per la lettura della misura di
conduttività, e mi piacerebbe poter realizzarlo per Windows (possibilmente
Windows 2000 compatibile).
Ho la necessità di leggere una frequenza (da 0 a 100KHz) dal pin 13 della
porta parallela, ma non ho le conoscenze per farlo con Delphi.
Qualcuno di voi ha mai realizzato qualcosa di simile?
Chi mi potrebbe aiutare nel mio intento?
Premetto che non sono pratico di VXD, DLL etc..
Vi ringrazio anticipatamente.
Paolo

 ha scritto nel messaggio
news:9pcq83$46l$2...@nreada.inwind.it...


 calcolo della frequenza.
Ti ringrazio per il link che mi hai mandato. Ora vado a vedere se esiste un
componente per questa applicazione. Purtroppo credo che non vi sia niente
che mi permetta di leggere lo stato dei singoli pin della parallela e poi
con tutti i task di questo sistema operativo non so se riesco a leggere una
frequenza così alta senza un qualcosa che gira sotto a basso livello.
Comunque sarò più preciso:
Il dispositivo invia al PC una frequenza che normalmente misurando la
conduttività dell'acqua di un acquario risulta variabile tra i 10 e i 40KHz,
ovvero tra i 10000 e i 40000 impulsi al secondo (ma in casi estremi esempio
acqua molto sporca tipo fango può arrivare a 100KHz) . Il duty-cicle di tale
frequenza è circa il 50% ovvero per ogni impulso il tempo in cui il pin 13 è
alto è uguale al tempo in cui sta basso.
Per alimentare il dispositivo avrei inoltre bisogno di mondare il dato FFh
nel bus dati della porta stessa.
Vi ringrazio ancora per la gentile collaborazione.
Aiutatemi per favore.
Striscerò ai vostri piedi.
Ciao Paolo.

 di 100khz (100000 volte al secondo).
La porta parallela ha un clock alla frequenza di 1 Mhz.


Ecco un link piu' preciso:
http://www.torry.net/portaccess.htm

 wrote in message
9pcq83$46l$2...@nreada.inwind.it...


 wrote

il kit che hai acquistato, è dotato si un suo software con o senza sorgenti
?
Forse è una domanda stupida, ma se c'è anche uno stralcio di basic, ci tiri
fuori qualcosa.
Il problema non è tanto leggere la frequenza, ma forse il resto, cioè dati
hardware riguardanti il chip che con qualche sensore misura la conduttività
dell'acqua.
Io ho un misuratore di resistenza fornito in kit e con software BASIC
annesso. ( in sorgente ovviamente )
Nulla di speciale, sono pochissime righe, però la misurazione che avviene in
analogico, viene trasformata in digitale dal chip e poi il programma
ricompone i vari bit per poi restituire il valore della resistenza.
Fatto questo però, non finisce quì. Diciamo che c'è una comunicazione
botta-risposta tra periferica e PC. Insomma, il software setta alcuni PIN ad
un certo stato logico prima di rileggere il valore digitalizzato della
resistenza !!
Quanti fili partono dalla periferica e si connettono alla spina per porta
parallela ? 1 solo ? anzi, due con la massa !! :-))) mmmm.......
non penso ti servino VXD o DLL, ci sono componenti per la parallela, seriale
ecc ecc......si tratta solo di essere sicuri su come comunica questa
periferica con il PC.
Poi, questa frequenza come è legata alla conduttività ? E' solo una
curiosità, perchè essendo la conduttività l'inverso della resistività, non
mi spiego perchè usano gli herz invece degli ohm !!
Ti saluto.....a risentirci.
Antonio Tarolla


Windows 2000 gestisce in modo diverso l'accesso all'hardware, come Win NT,
devi utilizzare delle componenti compilate apposta.


 ha scritto nel messaggio
news:9pcq83$46l$2...@nreada.inwind.it...

Leggere una frequenza via sw con un sistema multitasking è una impresa. Io
cio ho provato ma i risultati sono stati scoraggianti. Infatti per leggere
una frequenza puoi o calcolare il tempo che passa fra 2 impulsi oppure
contare quanti impulsi arrivano in certo periodo.
Il problema è che l'hw della parallela (usata in modo std) non genera
interrupt, perciò il sw deve pollare il più velocemente possibile sperando
di non perdere impulsi (cosa che avviene sicuramente, visto che il so è
multitasking e che quindi per un intervallo anche breve interrompe
l'applicazione).
Ti consiglio vivamente di integrare gli impulsi, ovvero convertire la
frequenza in tensione (volt) e quindi in digitale, leggendo poi il valore
tramite la parallela.
Un ulteriore consiglio (che è la strada che ho intrapreso io): usa un PIC o
similare, con poche righe di assembler, un unico integrato a 8 o 18 pin hai
la conversione Hz -> V -> RS232 con il protocollo che vuoi.
Ciao. Roberto

 Ciao Paolo,


 ha scritto nel messaggio
news:9pedei$dpl$1...@fe1.cs.interbusiness.it...


Ciao Antonio.
Innanzi tutto grazie per l'interessamento.
PS. Ringrazio ovviamente anche tutti gli altri che mi aiutano.
Il dispositivo che mi sono costruito è quello pubblicato in questo sito:
http://www.acquariolife.it/informazionitecniche/faidate/kondu.htm


 ha scritto nel messaggio
news:9pcq83$46l$2...@nreada.inwind.it...


 giusta resa.
Oppure mettici un contatore CMOS (CD4060) e leggi gli 8 bit più
significativi collegandoli sulla parallela, configurata in modalità
bidirezionale. Fai la lettura in tranquillità e lo resetti.
Io proverei pure a collegare solo il sensore sulla porta joystick.
La porta si aspetta un potenziometro da 100K. Se in qualche modo
ci siamo con i valori, magari ti funziona pure.
--
Virgilio Lattanzi       HARPAX srl
Tel: +39 733 816872     via Fontanella, 38
Fax: +39 733 819133     62012 Civitanova Marche MC
WWW: 
www.harpax.com
     ITALY


Guarda che ormai si utilizzano i PIC o similari per tutte le applicazioni
proprio perchè costano una inezia. Con 5k lire prendi il + piccolo 12c508 e
con 15k lire prendi già la versione con uart e a/d converter.Diventa
certamente una applicazione + stimolante, senza contare che potresti
collegargli direttamente 2 o 3 display a 7 segmenti e fare uno strumentino
indipendente dal pc, oppure segnalare con LED lo stato corrente :normale,
allarme, superallarme :-)
Ciao, Roberto

 Vi ringrazio anticipatamente.
--
Saluti e buon lavoro
Mario Costantini
www.macozo.it
mac...@tin.it