Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy?
Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy?
Google Pixel 10 è uno smartphone che unisce una fotocamera molto più versatile rispetto al passato grazie allo zoom ottico 5x, il supporto magnetico Pixelsnap e il nuovo chip Tensor G5. Il dispositivo porta Android 16 e funzionalità AI avanzate come Camera Coach, mantenendo il design caratteristico della serie Pixel con miglioramenti nelle prestazioni e nell'autonomia. In Italia, però, mancano diverse feature peculiari basate sull'AI.
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre
L'abbonamento Ultimate di GeForce NOW ora comprende la nuova architettura Blackwell RTX con GPU RTX 5080 che garantisce prestazioni tre volte superiori alla precedente generazione. Non si tratta solo di velocità, ma di un'esperienza di gioco migliorata con nuove tecnologie di streaming e un catalogo giochi raddoppiato grazie alla funzione Install-to-Play
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-11-2008, 21:13   #1
artintel
Junior Member
 
Iscritto dal: Nov 2008
Messaggi: 3
PROGRAMMARE LA PORTA USB

Ciao, vorrei sapere se qualcuno sa indicarmi come posso realizzare un programma per pilotare la porta USB.
Mi spiego meglio, voglio realizzare dei circuiti elettronici comandabili via USB, senza però dover ricorrere alla trasformazione da USB a SERIALE o PARALLELA. Ho letto in molti forum che è complesso.
Mi è sufficiente sapere anche soltanto il nome di qualche libro che possa spiegarmi come fare.
Vi ringrazio anticipamente

Luca
artintel è offline   Rispondi citando il messaggio o parte di esso
Old 30-11-2008, 21:31   #2
vizzz
Senior Member
 
L'Avatar di vizzz
 
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
Quote:
Originariamente inviato da artintel Guarda i messaggi
Ciao, vorrei sapere se qualcuno sa indicarmi come posso realizzare un programma per pilotare la porta USB.
Mi spiego meglio, voglio realizzare dei circuiti elettronici comandabili via USB, senza però dover ricorrere alla trasformazione da USB a SERIALE o PARALLELA. Ho letto in molti forum che è complesso.
Mi è sufficiente sapere anche soltanto il nome di qualche libro che possa spiegarmi come fare.
Vi ringrazio anticipamente

Luca
Dipende molto dalla logica che c'è sulla parte elettronica...se è un micro che ha già delle funzionalità usb o meno.
Nel primo caso dovrai scrivere del firmware per gestire la parte usb.
Dove lavoro ultimamente utilizziamo questi cavi: http://www.ftdichip.com/Documents/Da...ABLES_V201.pdf
puoi poi comunicare utilizzando la porta com virtuale o con dei driver diretti (D2xx)
__________________
ho concluso con: kvegeta, doctordb, Leland Gaunt.
vizzz è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 07:55   #3
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Appunto non sono quello che voleva lui, cioè un adattatore USB-Seriale.

artintel, specifica almeno il sistema operativo
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 10:29   #4
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Per quel poco che ne so, USB significa "Universal Serial Bus" che, come dice wikipedia (http://it.wikipedia.org/wiki/USB), e' uno standard di comunicazione seriale.
Non penso che sia quindi possibile evitare una conversione a seriale...
Al limite puoi evitare di convertire i segnali ai livelli/timing TTL.
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 10:52   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da sottovento Guarda i messaggi
Per quel poco che ne so, USB significa "Universal Serial Bus" che, come dice wikipedia (http://it.wikipedia.org/wiki/USB), e' uno standard di comunicazione seriale.
Non penso che sia quindi possibile evitare una conversione a seriale...
Al limite puoi evitare di convertire i segnali ai livelli/timing TTL.
Quel cavo serve a convertire da USB a RS232 che è ben diverso dal dire che l'usb è seriale

In pratica vedi l'usb come uno stack di livelli, sia l'host che il client (non mi ricordo il termine preciso) dialogano tra loro avendo sia da un lato che dall'altro questo stack. Il servizio del livello i-esimo dialoga con il servizi del livello i-esimo dell'altra parte del cavo sfruttando i servizi del livello sottostante.
Parte di questi livelli è realizzata in hardware, parte opzionalmente in software (checchessia messo in una rom e interpretato da un microcontrollore o elaborato dalla CPU). Quindi di fatto non esiste una periferica usb senza un driver.
Quel cavo che converte in RS232 è già una periferica completa che implementa tutto lo stack USB e ha come interfaccia una RS232 da una parte e dall'altra i servizi messi a disposizione dal driver che emula una porta COM.

Le possibilità di lavorare con USB sono due: sfruttare un controller già prodotto con relativo driver, oppure produrre il controller e il driver. Per i controller ci sono già chip pronti che permettono di interfacciare l'usb con un microcontroller, ovviamente bisogna scrivere il codice relativo agli ultimi livelli dello stack all'interno di una memoria Flash. Questo impone anche la realizzazione di un driver di periferica sul nostro sistema operativo che dialoghi con gli ultimi livelli prodotti dall'altra parte.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 11:17   #6
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Quote:
Originariamente inviato da cionci Guarda i messaggi
Quel cavo serve a convertire da USB a RS232 che è ben diverso dal dire che l'usb è seriale
Beh si, ma questo non toglie che l'USB sia un dispositivo seriale. Lo si puo' guardare sotto tutti i punti di vista che si vuole. Resta sempre seriale

Quote:
Originariamente inviato da cionci Guarda i messaggi
In pratica vedi l'usb come uno stack di livelli, sia l'host che il client (non mi ricordo il termine preciso) dialogano tra loro avendo sia da un lato che dall'altro questo stack. Il servizio del livello i-esimo dialoga con il servizi del livello i-esimo dell'altra parte del cavo sfruttando i servizi del livello sottostante.
Parte di questi livelli è realizzata in hardware, parte opzionalmente in software (checchessia messo in una rom e interpretato da un microcontrollore o elaborato dalla CPU). Quindi di fatto non esiste una periferica usb senza un driver.
Quel cavo che converte in RS232 è già una periferica completa che implementa tutto lo stack USB e ha come interfaccia una RS232 da una parte e dall'altra i servizi messi a disposizione dal driver che emula una porta COM.

Le possibilità di lavorare con USB sono due: sfruttare un controller già prodotto con relativo driver, oppure produrre il controller e il driver. Per i controller ci sono già chip pronti che permettono di interfacciare l'usb con un microcontroller, ovviamente bisogna scrivere il codice relativo agli ultimi livelli dello stack all'interno di una memoria Flash. Questo impone anche la realizzazione di un driver di periferica sul nostro sistema operativo che dialoghi con gli ultimi livelli prodotti dall'altra parte.
Hai ragione. Occorre anche precisare che anche i driver sono sovrapposti alla stessa maniera.
Detto questo: cosa occorre fare, ora? Occorre tirare fuori quei segnali, i quali arriveranno inevitabilmente in maniera seriale.
Tutti i sistemi finora elencati, quindi "decodificano" ("traducono") cio' che arriva dalla linea dati e te li mettono a disposizione. Non vedo quindi nessuna differenza, almeno a livello concettuale, no?
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 11:28   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Nessuno mette in dubbio che l'usb sia seriale eh. Ripeto che per convertitore USB-seriale intendevo USB-RS232

In ogni caso che l'USB sia seriale ad un programmatore non deve assolutamente interessare niente in quanto il canale viene completamente astratto da primi 3 (mi sembra) livelli dello stack che sono già implementati in hardware e software sia sull'host che sul device.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 11:45   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Specifico meglio: non interessa nemmeno a chi programma o implementa il controller sul device, perché i primi tre livelli vengono forniti già preconfezionati. Quindi per entrambi quello che interessa è la lista ed il protocollo dei vari servizi che i layer di livello 3 offrono a chi li deve usare.
E' un po' la stessa cosa che succede con TCP: nessuno, vedendo il solo canale TCP, può dire che la connessione fra i due host in realtà è solo virtuale, ma il protocollo è a commutazione di pacchetto.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 12:09   #9
sottovento
Senior Member
 
L'Avatar di sottovento
 
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
Stiamo dicendo la stessa cosa
Beh, allora scusa per aver allungato il brodo per nulla
__________________
In God we trust; all others bring data
sottovento è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 15:27   #10
artintel
Junior Member
 
Iscritto dal: Nov 2008
Messaggi: 3
Quote:
Originariamente inviato da cionci:
Appunto non sono quello che voleva lui, cioè un adattatore USB-Seriale.

artintel, specifica almeno il sistema operativo
Preferirei windows, comunque non è indispensabile, va bene anche linux.
artintel è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 15:34   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da artintel Guarda i messaggi
Preferirei windows, comunque non è indispensabile, va bene anche linux.
Per Windows devi guardare la documentazione della DDK. Sapevo che inclusi c'erano un paio di driver base per l'usb.
http://www.microsoft.com/whdc/DevTools/default.mspx
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 15:39   #12
das
Senior Member
 
Iscritto dal: Jan 2001
Città: Livorno
Messaggi: 1350
Quote:
Originariamente inviato da artintel Guarda i messaggi
Preferirei windows, comunque non è indispensabile, va bene anche linux.
Credo che debba partire da quì: www.microsoft.com/whdc/

Scarica la guida in questa pagina:
http://www.microsoft.com/whdc/device/wpd/wpd_dk.mspx

C'è un infarinatura sulla programmazione dei driver

Ultima modifica di das : 01-12-2008 alle 15:41.
das è offline   Rispondi citando il messaggio o parte di esso
Old 01-12-2008, 15:39   #13
artintel
Junior Member
 
Iscritto dal: Nov 2008
Messaggi: 3
Grazie, cercherò di capirci qualcosa.
artintel è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2008, 06:30   #14
Q_Q
Member
 
Iscritto dal: Jan 2008
Messaggi: 103
Ciao a tutti.
Mi stavo chiedendo se i driver servono per forza o basta un'applicazione creata apposta per quell'hardware.
Da quello che ho capito dentro l'hardware è memorizzato l'id con versione ecc... poi il pc "chiede" quando viene collegato, se non ha il driver ti chiede d'installarlo. Questo con tutte le periferiche (webcam, hd, ecc..) che possono essere usate da vari programmi, ma se quell'hardware viene gestito solamente da un programma, servono comunque i driver o basta quell'applicazione?
Q_Q è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2008, 07:52   #15
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Serve comunque un driver perché in user mode l'accesso alle API per interfacciarsi al dispositivo è interdetto. Almeno su Windows, sinceramente su Linux credo che si possa anche ovviare con un programma in user mode, ma non ne ho idea.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2008, 23:13   #16
Q_Q
Member
 
Iscritto dal: Jan 2008
Messaggi: 103
Per creare una scheda con i/o analogici e digitali come si dovrebbe procedere ?
Sto leggendo quà e là ma non sapendo niente di elettronica sono alquanto confuso (l'unica cosa che ho fatto è stata comandare dei led sulla lpt1 anni fa, in dos con turbopascal).
E` possibile collegare direttamente un "coso" che muxa/demuxa il segnale dall'usb o serve per forza un pic ?
Q_Q è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2008, 23:54   #17
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Puoi fare tutto e il contrario di tutto, dipende da cosa realizzi nell'USB Device.
Se metti un paio di registri con un covertitore D/A puoi anche pilotare segnali analogici, ma ripeto, non è quello il problema, il problema è realizzare l'interfacciamento con lo stack USB. L'alimentazione USB se non sbaglio può arrivare anche a 250mA, quindi un discreta quantità di corrente, in parte assorbita dal controller, ma nella maggiore parte disponibile per alimentare il resto.
Sono convinto che esistano già PIC pronti per essere comandati tramite un cavo USB e con il driver già pronto, ma allora tanto vale utilizzare un convertitore USB/RS232.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2008, 01:00   #18
Q_Q
Member
 
Iscritto dal: Jan 2008
Messaggi: 103
Ma con un convertitore USB/RS232 quando lo colleghi al pc non lo vede come porta com ?
Mettiamo caso che sia una periferica da vendere, usando usb->rs232 l'utente dovrebbe selezionare poi dal programma la porta com corretta (se poi cambia usb non cambia anche la com? Quindi dovrebbe risettarlo nel programma).
Con un pic il pc saprebbe che la periferica è quella anche se cambia porta usb e l'utente non dovrebbe settare nulla o sbaglio ?
Q_Q è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2008, 02:00   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Q_Q Guarda i messaggi
Con un pic il pc saprebbe che la periferica è quella anche se cambia porta usb e l'utente non dovrebbe settare nulla o sbaglio ?
Dipende da come è implementato il controller sul device...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2008, 05:17   #20
Q_Q
Member
 
Iscritto dal: Jan 2008
Messaggi: 103
Sono un pò fuso cmq, si può programmare un pic 18F2550 per sembrare un HID in modo da non dover creare un driver e usare le api di windows per comunicare con la periferica ?
Q_Q è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Google Pixel 10 è compatto e ha uno zoom 5x a 899€: basta per essere un best-buy? Google Pixel 10 è compatto e ha uno zoom ...
Prova GeForce NOW upgrade Blackwell: il cloud gaming cambia per sempre Prova GeForce NOW upgrade Blackwell: il cloud ga...
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
Iliad: si consolida la partnership tecno...
Il SoC a 2 nm di Samsung non sfigura nel...
Prezzo shock per i Galaxy Buds FE + nuov...
Il nuovo SoC di Qualcomm vuole stupire: ...
Offerta lampo per pulire l'auto: aspirap...
I robotaxi di Amazon entrano in azione: ...
ECOVACS DEEBOT T50 PRO OMNI Gen2 domina ...
iPhone 17 Pro su Amazon: tutti i colori,...
Disney Plus da 2,99 euro al mese per 3 m...
Nuovo test di accensione dei motori per ...
Novità dalle analisi dell'asteroi...
La PS6 sarà più potente del previsto: ec...
Sony svela Xperia 10 VII: è il nu...
Amazon Weekend da urlo: iPhone 16 a prez...
Spotify diffida ReVanced: chiesta la rim...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:08.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v