Oui, moins la consommation du hub !si j'ouvre le hub et l'integre au montage je pourrais utiliser directement les 500mA (par une derivetion) fournis par le pc, non?
A+
-----
Oui, moins la consommation du hub !si j'ouvre le hub et l'integre au montage je pourrais utiliser directement les 500mA (par une derivetion) fournis par le pc, non?
A+
Ne soldez pas grand mère, elle brosse encore.
Salut, c'est une question tres interessante que voilà.
Une hub USB n'est, il me semble, pas une simple mise en parrallele mais bien un controlleur (Host Controller, apres ca va dependre de la version qu'on utilise *) qui s'enregistre au pres de l'OS comme n'importe quel device USB.
Pour l'UHCI, la doc se trouve sur le site d'intel
Sinon le site www.usb.org a des liens vers toute la doc technique dont tu pourrais avoir besoin.
*: voir Wikipedia : OHCI/UHCI pour usb 1.0 et 1.1 et EHCI pour 2.0
Peut etre que ca va t'intéresser plus : http://www.beyondlogic.org/
salut,Envoyé par einsteincomme j'ai dis je ne connais rien au microcontroleur, alors si c'est facile, pourriez vous me proposer une sollution pour gerer 28bit? sinon je prefere rester sur ma sollution d'utiliser 4 jb8, et elaborer un driver pour chacun.
tu n'y connais rien en µC et tu te lances dans cette réalisation bon courrage.
j'y connais un peu plus et c'est assez facile d'utiliser un seul µC relié à l'USB:
pour l'instant tu veux envoyer un octet à un des 4 µC pour le commander, je pense que j'ai compris.
tu peux donc envoyer à un seul µC 2 octets: un pour "l'adresse"(le µC concerné quoi) et un autre pour la "valeur". il va donc décoder l'adresse et envoyer le bon code au bon µC (via liaison série par exemple)
j'espère que c'est clair...
c'est un octet a chacun des 4 microcontroleursEnvoyé par romelecpour l'instant tu veux envoyer un octet à un des 4 µC pour le commander, je pense que j'ai compris.
2 octets ca fait 16bit, j'en ai besoin de 28Envoyé par romelectu peux donc envoyer à un seul µC 2 octets
le jb8 dispose de 8 pattes en sortie soit 8bits donc un seul octets
on ne vit que pour apprendreEnvoyé par romelectu n'y connais rien en µC et tu te lances dans cette réalisation bon courrage.
mais le jb8 c'est pas un microcontrôleur ??? le 68HC908jb8 (tu as e modèle à 13I/O en DIP20)
j'ai regardé vite fait la doc, il resterait en effet le port A de libre, c'est ca?
c'est largement suffisant: une broche pour une liaison série 4 pour faire une sorte de chip select.
concernant le nombre d'octets:
en utilisant un hub, tu vas envoyer un octet à chaque µC, c'est ca?
je te propose d'envoyer 2 octets: le 1°pour dire à quel µC il doit aller et le second pour la commande.
le jb8 va lire le 1° et positionner correctement le chip select et va envoyer le second par la liaison série.
donc le µC sélectionné par le chip select va recevoir son octet de commande et tout est bon!
c'est pas bon ca?
merci pour l'info, je commence a comprendre.
a present, connais tu un microC disposant d'au moin 28 sorties mais qui ne soit pas smd.
a supposer que physiquement ca soit resolu, question programmation (affectation des adresses) du jb8 et du uC, est ce une tache ardue?
non non c'est pas dur (enfin le coté usb je ne connais pas du tout)
tu lis la 1° valeur qui ne peut être que 1,2,3 ou 4 (par exemple) de là tu sais à quel µC s'adresse l'ordre. tu positionnes donc la sortie de chip select correspondant et tu renvoies le 2° octet par une liaison série (gérée en hard ou soft, il y a surement des routines disponibles qqpart)
les 4 µC qui font le "boulot" vont tous recevoir cet ordre en série mais grace aux chip select tu sais s'il t'es destiné ou pas ... et pas besoin de 28 sorties pour faire ca.
PS: oui j'en connais, le "célèbre" PIC 16F877 avec ses 33I/O en DIP40 (et y'en a d'autres chez microchip)
PS: tu as 5 hc908, c'est la limite pour les samples ??
le 68hc908jb8 est belle et bien un microcontroleur mais juste pour l'usb, ou plustot il a un microcotroleur le hc11. il fonctionne de la sorte il resoit des octets du pc avec une adresse, si c'est la cienne il divise chaque octet en huit bit et affecte chacun a une e/s, sinon il ne reagit pas.Envoyé par romelecnon non c'est pas dur (enfin le coté usb je ne connais pas du tout)
si j'ai bien saisi,ce que tu dis est justement mon idee de depart j'envois tous les paquets d'info a tous les jb8 et chacun traite l'info qui lui est destinee.reste le comment. corrige moi si je me suis trampeEnvoyé par romelectu lis la 1° valeur qui ne peut être que 1,2,3 ou 4 (par exemple) de là tu sais à quel µC s'adresse l'ordre. tu positionnes donc la sortie de chip select correspondant et tu renvoies le 2° octet par une liaison série (gérée en hard ou soft, il y a surement des routines disponibles qqpart)
les 4 µC qui font le "boulot" vont tous recevoir cet ordre en série mais grace aux chip select tu sais s'il t'es destiné ou pas ... et pas besoin de 28 sorties pour faire ca.
je n'ai pas bie compris ce que tu veux direEnvoyé par romelecPS: tu as 5 hc908, c'est la limite pour les samples ??
ah d'accord je ne savais pas, je croyais qu'il gérait ca comme une liaison série sur les pics, c'est à dire qu'il place la valeur dans une mémoire interne et qu'après on en fait ce qu'on veut. Tu es sur de ce que tu dis, ca me surprend un peu quand même.Envoyé par einsteinle 68hc908jb8 est belle et bien un microcontroleur mais juste pour l'usb, ou plustot il a un microcotroleur le hc11. il fonctionne de la sorte il resoit des octets du pc avec une adresse, si c'est la cienne il divise chaque octet en huit bit et affecte chacun a une e/s, sinon il ne reagit pas.
en fait c'est presque ca! il y en a un seul qui est relié à l'usb et je disais qu'il redistribue aux autres en fonction d'à qui c'était destiné ( ) mais vu que le fonctionnement est différent de ce que je pensais ca ne peut pas fonctionner en fait.Envoyé par einsteinsi j'ai bien saisi,ce que tu dis est justement mon idee de depart j'envois tous les paquets d'info a tous les jb8 et chacun traite l'info qui lui est destinee.reste le comment. corrige moi si je me suis trampe
on peut commander des samples (échantillons gratuits) chez freescale, et bien entendu il doit y avoir une limite. (c'est pas bien de le faire quand même)Envoyé par einsteinje n'ai pas bie compris ce que tu veux dire
Si je réfléchis bien à tout ce qui est écrit, pour commander un pas à pas (par exemple) tu envoies directement la séquence pour commander les 4 bobinages (1000 0100 ...) et non des ordres du type "avancer de 4 pas à la vitesse 2".
j'en suis sur, ca explique pourquoi l'info envoyee al'impriment ne va qu'a l'imprimente et non au flashdisk ou autreEnvoyé par romelecah d'accord je ne savais pas, je croyais qu'il gérait ca comme une liaison série sur les pics, c'est à dire qu'il place la valeur dans une mémoire interne et qu'après on en fait ce qu'on veut. Tu es sur de ce que tu dis, ca me surprend un peu quand même.
y a-t-il une autre sollution alors?Envoyé par romelecen fait c'est presque ca! il y en a un seul qui est relié à l'usb et je disais qu'il redistribue aux autres en fonction d'à qui c'était destiné ( ) mais vu que le fonctionnement est différent de ce que je pensais ca ne peut pas fonctionner en fait.
a ma connaissance, les samples chez freescale sont au nombre de 2Envoyé par romelecon peut commander des samples (échantillons gratuits) chez freescale, et bien entendu il doit y avoir une limite. (c'est pas bien de le faire quand même)
c'est ca, et c'est pourquoi j'ai dis qu'il faut 4bits par moteur pas a pasEnvoyé par romelecSi je réfléchis bien à tout ce qui est écrit, pour commander un pas à pas (par exemple) tu envoies directement la séquence pour commander les 4 bobinages (1000 0100 ...) et non des ordres du type "avancer de 4 pas à la vitesse 2".
j'ai déjà proposé de n'utiliser qu'un seul JB8 associé avec un autre microcontrôleur.
Note en passant que le JB8 ne fait pas que gérer l'usb. Il possède tout de même 19 E/S en plus des 2 réservées à l'usb, des timer, etc...
L'autre µ pourrait être un 68HC908GR8 ou, si tu veux encore plus d'E/S, un GP32.
PS: on peut commander jusqu'à 3 échantillons par référence chez freescale.
A+
ca confirme bien mes doutes: le µC ne fait pas que "sortir" l'octet reçu... ca me paraissait louche.
en fait einstein tu n'as pas compris ma question: le µC fait tout ce qu'on veut et TOI tu souhaites sortir directement l'octet reçu, c'est pas du tout pareil...
donc l'idée de Jack (rendons à Jack ce qui est à Jack ) que je n'ai fait que reprendre (et détailler) est bien réalisable.
en sortie ce n'est même pas la peine de mettre d'autres micros, 4 registres à décalages 8 bits suffisent amplement... ou alors un seul micro qui a assez d'I/O (j'ai regardé le site de freescale c'est pas pratique leur recherche de circuits, en fait y'en a pas!)
je ne comprends pas trop le rôle des registres à décalage.
Pour le site de freescale, en haut à gauche tu as tout ce qu'il faut pour une recherche: PART NUMBER et KEYWORD.
A+
pour faire simple, un registre à décalage convertit un signal série (+ horloge) en parallèle donc l'octet transmis par série va être disponible sur 8 sorties.Envoyé par Jackje ne comprends pas trop le rôle des registres à décalage.
Pour le site de freescale, en haut à gauche tu as tout ce qu'il faut pour une recherche: PART NUMBER et KEYWORD.
Mais en fait ca ne fonctionnera pas car lors d'une mise à jour des sorties ca fera "n'importe quoi" sur ces sorties (si jamais y'a des infos sur le net...)
pour freescale je cherchais plutot une recherche paramétrique, j'ai trouvé c'est 5mm en dessous!
j'ai d'ailleur vu un micro qui pourrait convenir: http://www.freescale.com/webapp/sps/...46844976635559 en DIP42...
je sais ce qu'est un registre à décalage. Ce que je ne comprenais pas, c'était son rôle dans le montage.
C'est un solution intéressante car elle ne monopolisera que 4 pattes: data, clock, latch et reset registre, mais pour commander des moteurs pas à pas, ce n'est pas génial.
Concernant le 908BD48, ce n'est pas le plus simple à implanter car ce type de boîtier (PSDIP) utilise un pas de grille peu courant, ce qui interdit l'utilisation d'un support.
A+
bonjour,
jack, merci de m'avoir rammene a la realiteEnvoyé par Jackj'ai déjà proposé de n'utiliser qu'un seul JB8 associé avec un autre microcontrôleur.
Note en passant que le JB8 ne fait pas que gérer l'usb. Il possède tout de même 19 E/S en plus des 2 réservées à l'usb, des timer, etc...
L'autre µ pourrait être un 68HC908GR8 ou, si tu veux encore plus d'E/S, un GP32.
PS: on peut commander jusqu'à 3 échantillons par référence chez freescale.
A+
pour utiliser une nouvelle sollution(deuxieme uC) il faudrait rediger de nouveau un driver, je suppose(impossible a maitriser en 15 jours)Envoyé par JackPour utiliser le driver à partir de ton application sur le PC, j'espère que tu sais programmer en VB ou avec delphi, parce qu'il y a un peu de travail de ce côté là aussi.
En attendant, je peux te donner les références d'un site proposant un driver gratuit et quelques exemples d'utilisation du JB8 avec celui-ci. Ca te donnera la mesure de la tâche qui t'attend.
http://hc08web.de/usb08/
A+
Envoyé par einsteinsi j'ouvre le hub et l'integre au montage je pourrais utiliser directement les 500mA (par une derivetion) fournis par le pc, non?par concequent je crois que je vais rester a cette sollution, ce serait bien que le montage soit plus "beau" et plus "simple" mais il est plus important qu'il soit fonctionnelEnvoyé par monnolivOui, moins la consommation du hub !
A+
merci
derniere question, ce lien s'ouvre-t-il chez vous
http://www.lpmi.u-nancy.fr/realisation/USB/usbhub.html
veillez getter un coup d'oeuil sur ca
http://www.lpmi.uhp-nancy.fr/realisa...SB/usbhub.html
He bien voilà ! Te reste plus qu'à virer le TPS2041 et à mettre un vrai 5V/500mA par port pour être totalement compatible avec la norme!
A+
Ne soldez pas grand mère, elle brosse encore.
apres un bref coup d'oeuil sur les magasins d'electronique les plus proches, je n'ai trouve aucune des references indiquees de chez texas insstruments, pratiquement rien quoi.
connessez vous une reference?Envoyé par monnolivHe bien voilà ! Te reste plus qu'à virer le TPS2041 et à mettre un vrai 5V/500mA par port pour être totalement compatible avec la norme!
A+
et en ce qui concerne
SN75240P
TPS76433DBVR
TUSB2046VF
connessez cous des equivalents ou des remplacants?
pas besoin de repondre
A priori un controller USB (au moins pour l'OHCI) ne demande pas un grand nombre de portes, du coup je me demande si y'a pas moyen de mettre ca sur un FPGA (le controller + ce dont tu as besoin) ?
je n'ai pas compris ce que tu viseEnvoyé par JeremyA priori un controller USB (au moins pour l'OHCI) ne demande pas un grand nombre de portes, du coup je me demande si y'a pas moyen de mettre ca sur un FPGA (le controller + ce dont tu as besoin) ?
C'est pas une hotline ici.pas besoin de repondre
A+
Ne soldez pas grand mère, elle brosse encore.
bonjour,
desolé monnoliv
Envoyé par einsteinapres un bref coup d'oeuil sur les magasins d'electronique les plus proches, je n'ai trouve aucune des references indiquees de chez texas insstruments, pratiquement rien quoi.
connessez vous une reference?
et en ce qui concerne
SN75240P
TPS76433DBVR
TUSB2046VF
connessez cous des equivalents ou des remplacants?Envoyé par JeremyA priori un controller USB (au moins pour l'OHCI) ne demande pas un grand nombre de portes, du coup je me demande si y'a pas moyen de mettre ca sur un FPGA (le controller + ce dont tu as besoin) ?Envoyé par einsteinje n'ai pas compris ce que tu vise
Laisse tomber pour le FPGA, il faut être plus expérimenté pour faire joujou avec ça.
Concernant les composants, je n'ai pas trouvé (mais j'ai pas cherché des masses )
A+
Ne soldez pas grand mère, elle brosse encore.