Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    gestire flussi dati usb

    Salve a tutti, sono nuovo del forum e spero di non aver sbagliato sessione sulla quale pubblicare il mio post... cmq, sperando nella divina provvidenza vi invito a riflettere su cosa vorrei fare e darmi una mano nel farlo.

    COSA HO FATTO:
    . ho comprato un dispositivo da 3 euro del cacchio che praticamente è una sorta di allarme che suona se apri le porte
    . l'ho smontato e ho isolato i 2 cavetti che mandano il segnale alla cosa che suona... praticamente questi 2 cavetti sono alimentati a 5V se si verifica un determinato evento

    COSA VOGLIO FARE:
    . il dispositivo che vi ho descritto in se è completamente analogico, quello che voglio farlo è digitalizzarlo
    . ho una tastiera e un mouse a infrarossi e da questi posso smontare il sistema a infrarossi in modo da collegarlo ai 2 famosi cavetti del dispositivo
    . voglio scrivere un programma in C (ambiente LINUX o WIN è uguale) che mi permetta di catturare quello che passa sulla porta usb sulla quale ho collegato il sistema a infrarossi

    PRATICAMENTE:
    quando si verifica l'evento (apertura porta) in qualche modo riesco ad inviare tramite l'infrarosso della ex tastiera un segnale qualsiasi al ricettore che lo manda poi sottoforma di dato sulla usb; io vorrei riuscire ad intercettarlo e avviare in automatico una procedura di servizo.

    PROBLEMI: non ho la minima idea di come vengano gestite le risorse USB, penso però che, siccome inizialmente il ricevitore infrarossi era il ricevitore della tastiera/mouse, se anche smonto la testiera e ottengo il dispositivo infrarosso comunque il computer continui a vedere qualsiasi cosa ci attacco dietro come una tastiera... ma questa è solo un mio pensiero.

    PARASEGMENTAZIONI:
    non so cosa significhi, sto scherzando... grazie anticipatamente delle eventuali risposte

    Ragazzi su internet di queste cose non si parla molto, se riuscite a darmi qualche consiglio utile sicuramente andrà tutto a favore del forum...

    ciao

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Non ho capito una cosa ... alla USB cosa hai collegato?

  3. #3
    alla USB ho collegato il ricevitore infrarossi della tasetiera, solo che attualmetne la tastiera non esiste più e al suo posto c'è il rilevatore...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Perdonami, ma non ho chiara la "catena" ... potresti spiegarla nuovamente ?

    In particolare, il trasmettitore ad infrarossi, cosa e come trasmette?

  5. #5
    ok allora provo a rispiegare più chiaramente il problema...
    ho questo dispositivo che invia su un canale (2 cavi) 5 V ad una certa frequenza al verificarsi di un'evento... questo canale inizialmente era collegato ad una semplice sirena.
    Quello che voglio fare è far si che il mio pc rilevi in qualche modo questo evento e per far questo ho bisogno di collegare in qualche modo questi 2 cavetti sui quali viaggiano i 5 V al mio pc; ho pensato inizialmente di collegarli alla porta parallela LPT1: così facendo mi sarebbe facile con un programmino di 15 righe capire quando su questa porta arriva il segnale solo che ci sono delle controindicazioni di natura tecnica e ho deciso di abbandonare l'idea della LPT1. Ho pensato quindi di usare un sistema a infrarossi che di norma è composto da 2 elementi: l'elemento che invia il segnale e l'elemento che lo riceve. Non avendo a disposizione questi 2 elementi e non essendo riuscito a recuperarli in qualche negozio, ho pensato di utilizzare gli infrarossi della mia tastiera a infrarossi appunto: questo sistema ha come trasmettitore un elemento incorporato nella tastiera (che da ora in poi chiamo Tx) e un secondo elemento ricevitore che si attacca alla porta USB (che chiamo Rx).
    Ho pensato quindi che smontando Tx dalla tastiera e collegandolo ai 2 cavetti famosi sui quali viaggiano 5 volt, in una qualche maniera, al verificarsi dell'evento, il Tx invierà qualcosa nell'aria che sarà ricevuto da Rx e comunicato quindi all'interfaccia USB. Non mi interessa neanche tanto cosa Tx invia perchè, per come ho pensato io la cosa, essendo l'unico dispositivo collegato all'infrarosso, non appena Rx riceve qualsiasi cosa il programma che dovrei scrivere deve generare un evento che poi andrò a decidere... mi serve sapere innanzitutto se è possibile fare una cosa del genere e quindi come si scrive un programma che legga i dati in arrivo sulla porta usb che definisco io. Spero di essere stato abbastanza chiaro, scusatemi ma certi casini renderebbero meglio se disegnati
    Se qualcuno ha idea di come si potrebbe fare o di eventuali soluzioni alternative mi faccia sapere e grazie cmq per l'interessamento

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ok ... ora e' un po' piu' chiaro, ma il problema c'e' tutto.

    Ogni dispositivo USB e' utilizzabile solo perche' c'e' un driver che permette di colloquiare con l'hardware relativo. In particolare, il ricevitore con USB verra' riconosciuto come "dispositivo di input" (come una qualsiasi tastiera) e il driver passera' i dati ricevuti come "tasti pressati" al sistema.

    Nessun programma "utente" potra' gestire tali informazioni in quanto il driver non presuppone un "dialogo" con un programma del genere. Ne', tanto meno, il programma "utente" puo' "saltare" il driver e interrogare direttamente la porta USB in quanto il loro funzionamento (il protocollo in particolare) e' molto complesso e non paragonabile a quello di una seriale o una parallela.

    In definitiva, abbandonerei questa strada e passerei a qualcosa di piu' semplice ed artigianale e comunque seguirei una strada legata alla porta seriale (se disponibile).
    Esistono in rete semplici esempi di gestione remota tramite infrarossi (usano IRDA) ... ne potrai trovare tanti ... ad esempio

    http://fly.cc.fer.hr/~mozgic/UIR/

    ma sicuramente ce ne sono tanti.

  7. #7
    ecco esatto, il problema che temevo è proprio quello che tu mi hai comunicato... vedo allora cosa riesco a fare tramite il link che mi hai passato, se riesco a costruire qualcosa scriverò tutto qui e cmq vi terrò presenti per eventuali problemi che nasceranno...
    Colgo però l'occasione per fare una domanda che a questo punto nasce quasi spontanea: se avessi voluto creare un dispositivo ex novo che comunichi dati sulla porta USB con un nomale cavetto senza alcuna interfaccia preesistente, avrei dovuto creare questo catalogandolo obbligatoriamente in una delle categorie di dispositivi USB già esistenti in modo che il PC riesca a trovare dei driver? grazie mille ancora

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Non necessariamente ... avresti potuto scrivere il tuo driver specifico per il tuo hardware particolare ...

  9. #9
    Originariamente inviato da oregon
    Non necessariamente ... avresti potuto scrivere il tuo driver specifico per il tuo hardware particolare ...
    e se riesci a fare questo ti consiglio di tirar su un'impresa

    scusate x lo spam ma era spontaneo
    La curiosità è la fonte della conoscenza.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.