PDA

Επιστροφή στο Forum : Έλεγχος USB με Visual Basic



ALAMAN
16-01-09, 02:07
Τώρα τελευταία σκέυτομαι να χρησιμοποιήσω την visual basic 2008 για να φτιάξω διάφορα κυκλώματα όπως ο έλεγχος μιας θύρας USB.
Θέλω κυρίως να διαβάζω ψηφιακά δεδομένα απο αυτήν και να τα απεικονίζω στη φόρμα της VB.
Ξέρετε πώς μπορεί να υλοποιηθεί κάτι τέτοιο??

kopla
16-01-09, 03:38
Η USB θέλει πολύ διάβασμα και κόπο. Είναι πολύ συνθετο πρωτόκολλο. Το μόνο κοινό (δεν είμαι 100% σίγουρος για το "μόνο") με τo RS232 είναι ότι και τα δύο είναι σειριακά πρωτόκολλα.
Θα χρειαστείς φυσικά μικροελεγκτή. Αν επιλέξεις microchip PIC, τότε αρχίζεις από www.microchip.com/usb (http://www.microchip.com/usb). Θα χρειαστείς 2 προγραμματα (firmware PIC και μια γλώσσα για το pc σου) και drivers (εκτός αν αυτό που θα φτιάξεις θα ανήκει σε standard κατηγορία όπου το λειτουργικό εχει τους drivers ήδη. Πχ mass-storage, κτλ).
Για τους 18F τουλάχιστον, το παιχνίδι είναι master/slave δλδ PC -> PIC. Αν θες να παρεις μετρήσεις, θα πρεπει το pc να στείλει πακέτο, να κρατηθεί σε αναμονή εως ότου το γεμίσει ο pic με τα δεδομένα σου, και τελος να το στείλει πίσω (όσο είναι ανοικτός ο δίαυλος - προχοσή μη γίνει timeout και κλείσει το "endpoint"). Οι δυνατότεροι PIC (16 μπιτοι και 32 μπιτοι) είναι πιο ευέλικτοι, δλδ PC <-> PIC καθώς υπάρχει δυνατότητα ο PIC να γίνει master.

Ταυτόχρονα πρέπει να αρχίσεις το διάβασμα από το original USB 2.0 pdf manual. Από usb.org.

Αυτά είναι καποια αρχικά στοιχεία για να ξέρεις τι θα αντιμετωπίσεις (5% και πολύ είπα... η USB είναι τεράστια).
Ως εναλλακτική χρησιμοποίησε το FTDI 232BL και BM το οποίο είναι UUART δλδ UsbUART usb <-> serial. Μπορείς να το χρησιμοποιήσεις με πολύ υψηλά baud rates! Οι drivers είναι δωρεάν και το μόνο που πρέπει να εχει ο PIC σου είναι USART (Tx, Rx). Το chip (και αλλα παρόμοια) σου διαθέτουν και τα άλλα σήματα που εχει η απλή σειριακή (null modem)

:001_unsure: Your choice
Good Luck soldier

ALAMAN
16-01-09, 13:00
Υπάρχει τουλάχιστον κανένα έτοιμο πρόγραμμα επικοινωνίας της visual basic για να το επεξεργαστούμε μετά?

kopla
16-01-09, 16:10
Nαι
http://www.piccoder.co.uk/content/category/4/24/26/

ALAMAN
25-01-09, 00:33
Ποιό απ' όλα είναι??

plouf
25-01-09, 02:26
σου προτείνω και εγώ αυτο που ειπε ο kopla
τα FT232 ths FTDI εχουν dll έτοιμο και ειναι όλοκληρος USB σε rs232

στο PIC θα είσαι σαν RS 232 και απο ΠιΣι με έλενχο απο dll
(χρησιμοποιώντας το dll ΔΕΝ ειναι VirtualCom αλλα πραγματική USB που θα έχει και το όνομα που θές,σεριακό κτλ) η FTDI σου δίνει και deviceId σαν πρωτοτύπο.

παραδοσιακά πάνε μέχρι 1MBit.

kopla
25-01-09, 03:25
Ποιό απ' όλα είναι??
Basic USB - Using Microchip Stack and C#.Net - Hardware


Εγω παντως συμφωνώ με τον plouf που συμφωνεί με εμένα :lool:

ALAMAN
25-01-09, 12:02
Αυτό το πρόγραμμα επικοινωνεί με PIC??\
Χωρίς PIC δεν γίνεται?
Απλά να στέλω σειριακά δεδομένα μέσω της USB και να φορτώνονται σε έναν παράλληλο καταχωρητή (για περισότερα bit).
Και ανάποδα να τα διαβάζει...

kopla
25-01-09, 16:09
Η usb επικοινωνία είναι μεν σειριακή αλλά πολύ πιο πολύπλοκή απο το RS232 πρωτόκολλο. Χρειάζεσαι μΕ δυστηχώς, ο οποίος υλοποιεί το πρωτοκολλο.

Από οτι φαινεται χρειάζεσαι κατι σαν FTDI...

ALAMAN
29-01-09, 22:33
Ψάχνοντας κάποια παλια τεύχη του ελέκτορ βρήκα στο τεύχος Ιανουαρίου 2005 ένα άρθρο με τίτλο "Διασύνδεση USB / I2C"
Με τον δίαυλο I2C δεν μπορεί να γίνει έλεγχος και επιτήρηση συσκευών??

ALAMAN
30-01-09, 01:03
Παιδιά νομίζω οτι βρήκα κάτι πιο απλό...
ΕΛΕΚΟΡ Δεκέμβριος 2007
Επειδή η σελίδα του ελέκτορ μάλλον έκλεισε μπορεί να με βοηθήσει κάποιος να βρώ το λογισμικό του???
Είναι γραμμένο σε γλώσσα C και πιστεύω να μπορούμε να επεξεργαστούμε το πρόγραμμα για να προσθέσουμε διάφορα...



http://img140.imageshack.us/img140/5633/usbdatayv8.jpg (http://imageshack.us)
http://img140.imageshack.us/img140/usbdatayv8.jpg/1/w743.png (http://g.imageshack.us/img140/usbdatayv8.jpg/1/)

SV1EDG
30-01-09, 13:39
Alaman

Μπορείς να γραφτείς στο αγγλικο site και τότε θα έχεις πρόσβαση σε δωρεάν υλικό προηγούμενων τευχών.Αν θελεις κάτι πιο απλό κάνε κλικ εδώ και πάρτο:

http://rapidshare.com/files/191520084/070148-11.zip.html

ALAMAN
30-01-09, 15:20
Πόσο κοστίζει ο μικροελεγκτής?

kopla
30-01-09, 16:20
Απο Ακτίνιο ... 22 ευρώ

ALAMAN
30-01-09, 16:22
Πολύ ακριβος! :confused1:

JOHNY+
30-01-09, 18:08
Πιο ακτινιο , ρωτα στον φανο , η τον μπουριωτη εκει κοντα ειναι , το ακτινιο καλο ειναι αλλα κυριως για οργανα μετρησης.

ALAMAN
30-01-09, 19:10
Alaman

Μπορείς να γραφτείς στο αγγλικο site και τότε θα έχεις πρόσβαση σε δωρεάν υλικό προηγούμενων τευχών.Αν θελεις κάτι πιο απλό κάνε κλικ εδώ και πάρτο:

http://rapidshare.com/files/191520084/070148-11.zip.html

Το hex που φορτώνουμε στον μικροελεγκτή πού είναι???
Τώρα το πρόβλημα είναι οτι δέν έχω προγραμματιστή για PIC :saad:

SV1EDG
30-01-09, 19:41
Για δες μέσα στο \CUSTOM_TAD\_output.Υπάρχει ένα TAD_v1.hex.Αυτό πρέπει να είναι.Βέβαια υπάρχει και ένα TAD_USB.hex.Διαβασε προσεχτικά το άρθρο.Για προγραμματιστή δεν μπορώ να σε βοηθήσω.Αν ήθελες AVR κάτι θα κάναμε.

ALAMAN
30-01-09, 19:48
Ok ευχαριστώ!

ALAMAN
31-01-09, 13:53
Απο πού κατεβάζουμε τα free του ελέκτορ???
Στο elektor.com δεν μπορώ να βρώ τίποτα...

ALAMAN
31-01-09, 14:08
Να ρωτήσω και κάτι άλλο...
Το πρόγραμμα της συγκεκριμένης συσκευής είναι γραμμένο σε C++ ??

SV1EDG
31-01-09, 23:57
Κατεβάζεις free το software και ίσως κάποια Utilities που μπορεί να συνοδεύουν την κατασκευή.Στο http://www.elektor-electronics.co.uk/ επιλέγεις το τεύχος που θέλεις και πηγαίνεις στο tab Free downloads.Πρέπει όμως να έχεις κάνει Login.Το πρόγραμμα είναι σε C.

GEWKWN
09-02-09, 05:53
Ψάχνοντας κάποια παλια τεύχη του ελέκτορ βρήκα στο τεύχος Ιανουαρίου 2005 ένα άρθρο με τίτλο "Διασύνδεση USB / I2C"
Με τον δίαυλο I2C δεν μπορεί να γίνει έλεγχος και επιτήρηση συσκευών??

Βασικα μπορεις να μου στειλεις το αρθο;
καιτι ασχετο κατι αντοιστιχο μπορει να γινει και μεσα απ οτο ftdi-232
εχει και του καταληλους drivers με παραδειγματα για visual basic.
FTDI (http://www.ftdichip.com/Projects/MPSSE.htm)

aeonios
10-10-09, 19:38
Αν και είναι παλιό το θέμα βρήκα ένα template για vb 2005 με το οποίο μπορείς να "μιλάς" με το usb περιφερειακό.

http://www.helmpcb.com/Software/USBHIDVB/USBHIDVB.aspx#

Αν κάποιος ξέρει το vid/pid της συσκευής καθώς και τι δεδομένα παίζουν με το buffer θα είναι απλό. Τα vid/pid μπορούμε να τα βρούμε από τις ιδιότητες της συσκευής στα windows ή από εδώ (http://www.ftdichip.com/Resources/Utilities/usbview.zip)