Gamoover

Vous êtes nostalgiques des jeux vidéos de votre enfance ? Vous désirez acquérir, ou construire une borne d'arcade ? Vous trouverez ici les réponses a vos questions et une communauté de joueurs passionnés.

Menu

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.

Voir les contributions Menu

Messages - gc339

#1
L'abaissement de la valeur du potentiomètre permet de diminuer la plage de tension en sortie en la limitant à 2 ou 3 volts, ce qui permet d'obtenir un réglage plus proche du centre de la course du potar, donc plus régulier et moins abrupt.
Une valeur de 100 / 220 ohms pour ce potentiomètre n'est valable que si la résistance entre la patte Adj et Vout du régulateur est d'une valeur proche de 120 ohms.
#2
Bonjour.

Le lien Amazon ne fonctionne pas!

1) On peut effectivement utiliser une plaquette prévue pour le seul LM317 comme celle ci-dessous:


A condition:
  • d'inverser les fils d'alimentation, les entrants ainsi que les sortants,
  • d'inverser la polarité des condensateurs chimiques,
  • et de croiser les pattes 2 et 3 du LM337 (IN et OUT).



2) De quel potentiomètre s'agit-il ?

NB: Ne pas oublier de remplacer les condensateurs d'entrée (C121 à C123) du HL-25 ou (C49, C52 et C54) du HL-2529 par un strap sinon la modification sera inefficace.





#3
Bonsoir.
Les raccordements semblent corrects.
Il manque une photo, c'est celle de la neck-board enfichée au cul du tube écran. Juste pour vérifier si la tresse de masse de ce tube y est bien connectée (le fil noir sur la photo ci-dessous).

#4
Bonsoir Robin, bonsoir à tous,

Citation de: english2 le Vendredi 03 Juin 2022, 11:53:41 AM
En regardant le schéma de nouveau, je pensais substituer simplement le LP2950-5 par un LP2950-3.3 pour produire les 3,3V, mais du coup cela implique une tension trop basse pour alimenter le TLE2425 qui a besoin de 4V minimum pour produire la tension de référence de 2,5V côté op amp. De plus, avec des DAC qui sortent jusqu'à 3,3V au lieu de 5V, la tension de référence à 2,5V doit être également abaissée il me semble (à 1,8V, par exemple)?
Exact pour le TLE2425, c'est aussi vrai pour le TLE2426 qui lui délivre non pas une tension fixe mais une tension valant très exactement la moitié de celle d'entrée.
Il reste donc deux solutions pour obtenir cette référence de 1,65 volt (3,3 ÷ 2) quand les DAC's sont alimentés en 3,3 volts (U3 = LP2950-3.3):
• Utiliser le dernier DAC disponible comme je l'avais déjà suggéré pour délivrer la référence. Ce dernier doit donc être initialisé avec la valeur 0800H dés la mise sous tension de la carte v.st.
• Diviser la tension de 3,3 volts par 2 à l'aide d'un pont de résistances de précision à 1‰ (0,1%) pour obtenir le 1,65 volt requis. La référence ainsi obtenue est ensuite bufferisée par le dernier ampli OP inutilisé (IC1D) avant d'être appliquée aux amplificateurs X et Y.
C'est cette solution qui figure dans le schéma ci-dessous.

Citation de: english2 le Vendredi 03 Juin 2022, 11:53:41 AM
Une fois cette étape passée, ensuite viendra la question de la valeur des résistances autour des op amp XYRVB ...
D'ailleurs je me demande bien à quoi servent les résistances en // avec la sortie des DAC's (R9, R10, R14) ainsi que les couples R1/R3 et R2/R5. je vais essayer de retrouver l'article décrivant la carte v.st originale pour savoir si elles ont une justification quelconque.



#5
Bonsoir Robin, bonsoir à tous.

Citation de: english2 le Lundi 23 Mai 2022, 18:59:40 PM
J'étais curieux de voir ce que ça donne sans le translateur TXS0108E. Du coup, en le bridgant tout fonctionne normalement sans changement des résistances en aval ! Une très bonne nouvelle. L'emplacement pourra disparaître sur la prochaine version de la PCB.

Selon le datasheet du MCP4922, ses entrées digitales requièrent un niveau logique haut (VIH) supérieur ou égal à 0,7 × VDD soit ≥ 3,5 volts pour une alimentation en 5 volts. Ce qui est légèrement supérieur au niveau logique haut que peut délivrer les ports d'un Teensy alimenté lui en 3,3 volts!

Le bon fonctionnement constaté en oblitérant le translateur TXS0108E tient donc presque du miracle et rien ne garantit qu'il sera reproductible quelque soient les exemplaires de Tennsy ou de DAC utilisés. Il vaut donc mieux conserver le translateur de niveau ou bien alimenter les DAC's en 3,3 volts comme je l'avais déjà suggéré, cette dernière possibilité nécessitant de retoucher la valeur de certaines résistances pour augmenter le gain des amplificateurs de sortie.



#6
Bonjour à tous, bonjour Robin.

Citation de: english2 le Samedi 07 Mai 2022, 23:24:45 PM
L'interface avec AdvanceMAME fonctionne désormais, y compris pour les jeux en n&b. Le Raspberry Pi affiche parfois un message "under voltage" au démarrage quand la Teensy est branchée. Du coup le régulateur LM2940 a été commandé afin de le soulager.
J'ai donc bien fait de vous suggérer l'adjonction de ce régulateur optionnel.

Citation de: english2 le Samedi 07 Mai 2022, 23:24:45 PM
Globalement les performances avec la Teensy 4.1 en SPI sont meilleures que la Teensy 3.2 en DMA, mais il va falloir chercher encore à optimiser le code (peut-être du côté d'AdvanceMAME également).
Pour rappel, ce que j'avais écrit dans un message précédent:
Citation de: gc339 le Dimanche 17 Avril 2022, 22:34:29 PM
Le Teensy 4.0 ou 4.1 peut gérer 3 bus SPI, alors pourquoi ne pas différencier les DAC's MCP4922 en attribuant un bus à chacun? Il serait ainsi possible de transférer 3 informations simultanément, ce qui devrait participer à améliorer les temps de traitement, qui plus est en affectant les DAC's X et Y dans des boitiers MCP4922 différents.

Citation de: english2 le Samedi 07 Mai 2022, 23:24:45 PM
Un premier test des boutons n'a pas fonctionné, il va falloir creuser ce sujet pour comprendre pourquoi: sans doute un problème lié au code encore.
Comme je n'ai pas vu de boutons sur l'ancienne carte "v.st"avec le Teensy 3.2, je suppose que l'adjonction de ces boutons est de votre fait.
Le problème avec les boutons, c'est le rebond de leur contacts, il existe une méthode logicielle dite "des compteurs verticaux" pour les traiter simultanément: "Vertical counters allow for an elegant, compact and efficient debouncing algorithm which can debounce multiple inputs concurrently"

#7
Citation de: english2 le Samedi 07 Mai 2022, 13:07:09 PM
Un peu de progrès ce matin : le problème d'axes inversés est corrigé, de même que l'absence de rouge et les niveaux de luminosité (bien visibles dans la photo ci-dessous avec la sonde branchée sur le canal rouge et l'oscilloscope réglée sur 5v par division).
Peut-on savoir quels étaient les problèmes et comment ils ont été corrigés?

Citation de: english2 le Samedi 07 Mai 2022, 13:07:09 PM
Avec la sonde sur le pin 10 d'IC5 (sortie du DAC qui génère le rouge en amont du op amp), on voit exactement les mêmes tensions, donc les recherches se poursuivent pour savoir d'où vient la surtension ...
Bizarre une telle amplitude en sortie des DAC's. Serait-ce un problème de masse avec l'oscilloscope? Sur quoi est raccordé la masse de la sonde? 0 volt logique? 0 volt analogique?
Pour vérifier que les DACs sont OK, la solution la plus simple serait de courber leur pin 10 pour qu'elle ne fasse pas contact avec la lyre du support et de connecter la sonde de l'oscillo directement dessus, A pleine échelle, la tension de sortie ne devrait pas être supérieure à celle d'alimentation.
#8
J'ai re-zieuté les plans des masse GND et AGND sur le PCB original du dépot Github et j'ai constaté que les deux pins GND du Teensy 3.2 étaient bien toutes les deux connectées au plan de masse du même nom.




A gauche, les deux pins "GND" du Teensy 3.2 raccordées au plan de masse général "GND"
A droite, les quatre pins "GND" du Teensy 4.1, une est dédiée à la masse analogique "AGND", les trois autres devraient être toutes les 3 reliées au plan de masse "GND" à l'instar du PCB original du dépot Github.






                   


La mise à jour du schéma avec le raccordement des trois pins "GND" du teensy 4.1 au plan de masse général:



#9
Etant donné qu'il reste un peu de place sur le PCB (Zone bleu clair), je propose d'ajouter un régulateur optionnel (LM2940CT-0.5 en TO220) pour pouvoir alimenter le Teensy en 5 volts par sa broche "Vin" grâce à la source extérieure prévue pour alimenter le convertisseur ±12 volts:




• Avec cette option, le Teensy peut toujours être alimenté par l'USB, il suffit de ne pas équiper le LM2940CT-5.0. On peut alimenter le convertisseur ±12 volts par l'extérieur en 5, 9 ou 12 volts selon le modèle.

• Régulateur LM2940CT-5.0 en place, il faut couper le strap sur le PCB du Teensy pour éviter le conflit avec le 5 volts de L'USB. Le convertisseur doit être un modèle  RB-0912D ou RB-1212D selon l'alimentation extérieure choisie (9 ou 12 volts, 5 volts prohibé à cause du LM2940CT-5.0).

• La coupure du 5 volts USB sur le Teensy est réversible puisque deux pads ont été prévus pour remplacer le strap coupé par un pont de soudure.




En bas à gauche, cerclé de rouge, le strap à couper entre les deux pads sous le PCB du teensy pour isoler le 5 volts du bus USB:



#10
Bonjour à tous, bonjour Robin.

Quelques observations:

J'ai remarqué que sur le schéma, les fils de connection ne touchaient pas toujours les pattes des composants. Par exemple:
• Cerclé de rouge: le hiatus entre le fil et la patte.
• Cerclé de vert: c'est OK, le fil vert touche bien la patte marron.
Le hiatus subsiste aussi entre les pattes très proches de deux symboles, par exemple entre R3 et la masse AGND, pas de fil vert même minuscule pour les connecter.




Est ce un défaut de Kicad? Il me semble que la version de Kicad (< version 6) que j'ai utilisé dans le passé, n'avait pas ce problème.




Sur les 8 translateurs du TXS0108E, on en utilise que 5. J'ai utilisé ceux qui me facilitaient le dessin. Il y a aucune obligation de conserver les mêmes, vous pouvez les répartir différemment si cela facilite le routage.

Vous pouvez changer l'implantation de certains composants pour faciliter le routage, par exemple:
• 2 fils du ratnest se croisent pour R4 et R6, si on permute ces résistances, les fils ne se croisent plus!
• En effectuant une rotation de 90° dans le sens horaire) pour C10,  C15, C16, C18... ou inverse pour C9,  les pistes pourraient être plus rectilignes.


#11
J'ai regardé ces histoires de masses GND et AGND sur le PCB original du dépot Github.

Il y a bien deux plans de masse distincts:
• En orange, le plan de masse "AGND"
• En rouge le plan de masse "GND" et les autres connexions de la face composants.
On distingue bien le fil (en bas à droite) qui émerge du plan de masse analogique pour aller se raccorder sur la pin "AGND" du Teesy 3.2.




La connection entre les deux masses "AGND" et "GND" s'effectue sur la plaquette du Teensy 3.x à travers la Ferrite L1 d'une cellule de filtrage (L1, L2 et C10).
Tracé en rouge= interconnection AGND/GND sur la plaquette du Teensy 3.X:




Couleur fuchsia: le strap à couper pour alimenter le Teensy 3.x sur sa pin "Vin" par une alimentation 5 volts extérieure et non plus par l'USB.




Avec le Teensy 4.x, pas de pin spécifique AGND ni aucune cellule de filtrage, toutes les pins libellées GND sont interconnectées entre elles.

A gauche, la plaquette du Teensy 3.2. La pin "AGND" est encadrée par les pins "Vin" au dessus et "3.3V" en dessous, toutes les 3 implantées au dessus des 10 pins analogiques.
A droite, la plaquette Teensy 4.1 avec une configuration de pins similaire. Il semble raisonnable?, pertinent?, de considérer par mimétisme que la pin "GND" au dessus des entrées analogiques peut faire fonction de pin "AGND".





               


La pin "GND" utilisée comme "AGND" pour cette occasion:



#12
Concernant RS particuliers, cela fait plusieurs années que la gratuité le WE n'est plus indiquée dans les CGV mais cela fonctionne encore, ce qui a été le cas pour mes dernières commandes. Attention, les jours fériés en semaine sont exclus.
La recherche sur RS composants n'est pas très performante, il faut rechercher le composant désiré chez RS pro, repérer le "code commande" RS que l'on copy/colle dans la fenêtre de recherche RS particuliers. On a ainsi accès à son prix TTC, on le dépose dans le panier pour pouvoir le commander. 
#13
Bonjor à tous, bonjour Robin.

Une nouvelle proposition avec un translateur de niveau TXS0108E:




La masse des boutons devrait être GND plutôt que AGND.
A ce sujet, même sur le schéma original du dépot Github, je n'ai pas vu de connection entre la masse (GND) et la masse analogique (AGND). Je vais aller vérifier comment ça été fait sur le PCB original.
#14
Bonsoir à tous, bonsoir Robin.

Citation de: english2 le Mardi 19 Avril 2022, 20:06:14 PM
Les 3.3V en sortie du Teensy serviront pour les boutons de contrôle, j'en ai donc rajouté 5. De ce que je comprends, les broches sélectionnées recoivent 3,3V en permanence, et le Teensy détecte la mise à la terre lors de l'appui sur le bouton.
Vous n'avez pas besoin de résistances extérieures pour polariser les boutons, le Teensy dispose de résistances internes "Pull up" et "Pull down" que l'on met en service logiciellement en activant le bit correspondant dans le registre interne qui va bien.
Si les boutons ont leur commun à la masse (0 volt), il faut activer les résistances "pull up" des pins raccordées à ces boutons. Si le commun et connecté au rail d'alimentation 3,3 volts, hé bien il faudra valider les résistances "pull down".
Citation de: https://www.pjrc.com/store/teensy41.html
• Input Pullup / Pulldown / Keeper Resistors
All digital pins have optional pullup, pulldown, or keeper resistors. These are used to keep the pin at logic HIGH or logic LOW or the same logic level when it is not being actively driven by external circuity. Normally these resistors are used with pushbuttons & switches. The pinMode function with INPUT_PULLUP or INPUT_PULLDOWN must be used to configure these pins to input mode with the built-in resistor.
• Pin Change Interrupts
All digital pins can detect changes. Use attachInterrupt to cause a function to be run automatically. Interrupts should only be used for clean signals. The Bounce library is recommended for detecting changes on pushbuttons, switches, and signals with noise or mechanical chatter.




Citation de: english2 le Mardi 19 Avril 2022, 20:06:14 PM
J'ai lu des articles sur les BSS138 et 2N7000 pour la conversion de niveaux, si possible j'aimerais éviter de rajouter les petites PCB de conversion de tension (j'en ai tout de même commandé quelques uns sur Aliexpress au cas où), ainsi que les composants "surface mount".
Il faut considérer ces petites PCB comme des DIL10 au pas de 2,54 et les implanter comme si c'étaient des circuits intégrés standards à moins que la place soit restreinte sur la surface de PCB envisagée.

Citation de: english2 le Mardi 19 Avril 2022, 20:06:14 PM
J'avais en tête d'utiliser le 2N7000, mais les expériences des uns et des autres sont mitigées apparemment (certains disent que ça marche sans problème, d'autres non ...).
Le seul souci à mon avis pourrait être la vitesse de transfert des données sur le bus SPI (qui m'est pour l'instant inconnue). Dans ce cas on peut diminuer la résistance de tirage au +5 volts pour améliorer la forme des signaux. On peut réduire sa valeur de 10 kΩ jusqu'à 1,5 kΩ mais pas au delà car on dépasserait la limite de courant de 4 mA par pin du Teensy.
Sinon avec le TXS0108E, pas de problème de vitesse puisqu'il peut transférer les données jusqu'à 110Mbps.

Citation de: english2 le Mardi 19 Avril 2022, 20:06:14 PM
Y a-t-il un risque à utiliser les 2N7000 au format TO-92 à la place des BSS138 ?
Aucun risque, le BSS138 est la version CMS du BS170 (TO92), et le 2N7000 est l'équivalent du BS170.
Vous pouvez aussi utiliser le VQ1000J avec ses 4 MOSFET's en boitier DIL14.
Sinon il reste la solution du TSX01108E avec ses 8 translateurs si vous avez de meilleurs echos à son sujet.




Voici le dernier schéma avec le câblage des boutons, les résistances extérieures de tirage au rail 3,3 volts sont inutiles si on déclare logiciellement les résistances de "pull up" sur les pins raccordées aux boutons.
Vaut mieux pas laisser les entrées d'un ampli Op inutilisées en l'air, donc celles de IC1D sont à connecter à AGND.



#15
Voici une nouvelle suggestion de schéma avec les DAC's MCP4922 alimentés en 5 volts et une translation de niveau avec transistors MOSFET.

Le 3,3 volts nécessaire aux translateurs est prélevé sur la sortie "3.3V" du Teensy 4.x.

Les résistances en série avec les pins CS des MCP4922 ont été supprimées (R27 et les autres) car elles n'existent pas sur le schéma original du dépot Github.

J'ai constaté une erreur: il y a un court-circuit entre les fils CS des circuits IC4 et IC5 au niveau des pins du Teensy.



#16
Voici une suggestion de schéma avec les DAC's MCP4922 alimentés en 3,3 volts à partir de la pin "3.3V" du Teensy 4.x. A eux trois, ils devraient consommer moins de 2 mA.

Le 1,65 volt de la masse virtuelle est généré par le 6ème DAC qui devra être initialisé avec cette consigne à la mise sous tension du Teensy (et peut-être même rafraichi régulièrement). Le 1,65 volt est bufférisé par le dernier ampli OP disponible (IC1D).

Les valeurs des couples de résistances R29/R16, R28/R12, R30/R15, R4/R7 et R6/R8 devront être recalculés pour que le gain des amplificateurs impactés soit multiplié par ≈1,5 (1,515 théorique) pour compenser la moindre amplitude maximale délivrée par les DAC's.

Les résistances en série avec les pins CS des MCP4922 ont été supprimées (R27 et les autres) car elles n'existent pas sur le schéma original du dépot Github.

J'ai constaté une erreur: il y a un court-circuit entre les fils CS des circuits IC4 et IC5 au niveau des pins du Teensy.