Table des matières:
- Étape 1: Câblage du contrôleur
- Étape 2: Décompressez et exécutez le code
- Étape 3: Configurer le projet 64
- Étape 4: Code Arduino en profondeur
- Étape 5: Références
Vidéo: Utiliser un Arduino avec un contrôleur N64 : 5 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:11
Il existe des tutoriels pour utiliser un contrôleur NES avec un Arduino, mais l'utilisation du contrôleur N64 plus compliqué et de son joystick analogique a un attrait certain. Si vous avez un Arduino et que vous ne voulez pas acheter un Adaptoid, cette instructable permettra de jouer à des jeux émulés dans Project 64 avec votre Ardunio et un contrôleur N64. Est-ce difficile ? / Est-ce que ça va endommager mes affaires ? Cela ne modifiera en rien votre manette, et le câblage est extrêmement simple, donc si vous faites tout avec soin il ne devrait y avoir aucun risque pour votre manette, et vous pouvez la décrocher à tout moment pour l'utiliser avec une console N64. besoin:Arduino - $30Processing 1.0 - logiciel gratuit Arduino - 3 morceaux de fil gratuits - câble USB gratuit (j'espère)
Étape 1: Câblage du contrôleur
La première chose que vous devez faire est de connecter votre Arduino au contrôleur. Le contrôleur n'utilise que trois fils: +3,3 V, signal et masse. En regardant directement la prise, la masse est la plus à gauche, le signal est au milieu et +3,3 V est à droite. À l'aide du fil, connectez la terre et +3,3 V aux broches respectives de l'Arduino et connectez le fil de signal à la broche Digital 2 de l'Ardunio. REMARQUE: si vous avez un autre code sur votre Arduino, vous devez déconnecter le contrôleur et télécharger le nouveau code de la page suivante à l'Arduino avant de l'allumer avec le contrôleur connecté. Connectez l'Arduino Connectez le câble USB et l'Arduino sera alimenté.
Étape 2: Décompressez et exécutez le code
Ce code a été écrit par moi, avec des parties du fichier N64_Arduino basé sur le code d'assemblage écrit par Andrew Brown. Archives ZIP: Les deux fichiers Zip ci-dessous contiennent le code nécessaire pour exécuter l'Arduino puis pour interpréter les données qu'il envoie à l'ordinateur. Le fichier N64_Arduino doit être compilé dans l'IDE Arduino et le N64_Controller s'exécute dans Processing 1.0. N64_Arduino Ce fichier PDE doit être téléchargé sur votre Arduino et s'exécuter sans problème si tout est correctement connecté. Il interroge simplement le contrôleur N64 pour les données sur les boutons et le stick analogique et les renvoie à l'ordinateur via le port série. Il est assez facile à modifier, par exemple, vous pouvez utiliser les méthodes de ce fichier pour interroger un contrôleur et utiliser les données pour exécuter un robot Arduino au lieu de le transmettre à l'ordinateur. N64_Controller Il s'agit d'un projet Processing 1.0 qui prend le données transmises par l'Arduino et les convertit en pressions de clavier que vous pouvez mapper à un émulateur comme Project 64. Vous devrez peut-être modifier la ligne String portName = Serial.list ()[1]; pour correspondre à votre Arduino, il doit être soit Serial.list()[0]; Serial.list ()[1]; ou Serial.list()[2]; EDIT: ajoutez « import java.awt. Robot; » « import java.awt. AWTException; » "import java.awt.event. InputEvent;" dans le code si vous utilisez Processing 1.1N64_Controller_mouse C'est la même chose que N64_Controller, sauf que le stick analogique contrôle votre souris, pas les touches fléchées. A et B sont respectivement des clics droit et gauche. Pour activer la souris, appuyez sur le bouton de démarrage de votre manette.
Étape 3: Configurer le projet 64
Avant de pouvoir utiliser le contrôleur, l'Arduino doit être connecté et exécuter le code que vous avez téléchargé à la dernière étape, et Processing 1.0 doit être ouvert avec le programme N64_Controller en cours d'exécution. Testez-le dans le Bloc-notes, appuyez sur le bouton A pour taper un A, B pour taper un B, etc. Vous avez donc maintenant un contrôleur fonctionnel (espérons-le) et vous voulez jouer à quelques jeux. Downl0ad PJ 64https://www.pj64 -emu.com/downloads/Set Key MappingsDémarrez PJ 64 et ouvrez d'abord le menu des paramètres (Ctrl+T). Changez le contrôleur d'entrée en entrée directe de N-Rage. Ouvrez le menu "Configurer le plug-in du contrôleur" et définissez les mappages à l'aide du contrôleur. Commencez à jouer ! Vous devriez être prêt à partir maintenant ! Téléchargez des ROM et commencez à profiter de votre adaptateur homebrew N64.
Étape 4: Code Arduino en profondeur
Le protocole N64 Les bits envoyés vers et depuis le contrôleur N64 sur l'interface à un fil sont codés en impulsions de 4 µs de large. Un '0' est 3 µs bas et 1 µs haut. Un '1' correspond à 1 µs de bas et 3 µs de haut. Le code Arduino dans les méthodes N64_send ou N64_receive utilise un code d'assemblage très soigneusement chronométré écrit par Andrew Brown pour exploser la ligne de données afin de communiquer avec le contrôleur. Les blocs nop sont utilisés pour attendre les quantités appropriées de µs avant d'interroger la ligne d'envoi de données. Au démarrage, 0x00 est envoyé au contrôleur, puis la seule commande utilisée est 0x01 pour demander l'état du contrôleur. Codage des données Lorsque les données sont reçues après un 0x01, elles arrivent sous forme de 16 bits d'informations de bouton et 16 bits de informations sur le joystick analogique. Les données ressembleraient à 440000000000004000444400440000444. Le format des bits est: A, B, Z, Start, Dup, Ddown, Dleft, Dright, 0, 0, L, R, Cup, Cdown, Cleft, Cright + 16 bits d'analogique position du bâton. La méthode translate_raw_data() parcourt les 32 bits, les insérant dans la struct N64_status. Les 16 premiers bits sont simples 1 ou 0, mais les 16 derniers sont traduits en un entier approximativement dans la plage (-80, 80) par for (i=0; i<8; i++) { N64_status.stick_x |= N64_raw_dump[16+i] ? (0x80 >> je): 0; } Une fois que les données sont sous cette forme simple, il est facile d'en faire ce que vous voulez. Dans ce cas, il est simplement envoyé sur le port série dans la méthode loop() sous la forme d'une chaîne de données binaires avec deux entiers pour les valeurs x et y. Les données envoyées via le port série pourraient ressembler à: 0400000000000400 63 -67, ce qui signifierait que deux boutons ont été enfoncés et que le manche de commande était à 63, -67.
Étape 5: Références
Le projet d'Andrew Brown de créer un adaptateur gamecube vers N64 avec l'Arduino a été inestimable lors du codage de ce projet:
Des schémas utiles peuvent être trouvés ici: https://www.raphnet.net/electronique/gc_n64_usb/index_en.php Des informations sur le protocole propriétaire des contrôleurs N64 peuvent être trouvées ici:
Conseillé:
Comment utiliser le contrôleur Wled RGB : 5 étapes
Comment utiliser le contrôleur Wled RGB : Bonjour à tous, j'espère que tout le monde se porte parfaitement bien et en toute sécurité dans la pandémie en cours. Je suis extrêmement désolé d'être coincé avec Work & Projets et beaucoup de montage à faireDans cette vidéo, je vais vous montrer Wled un simple contrôleur RGB Pixel whi
Contrôleur de robot inspiré de N64 (Arduino + NRF24L01): 4 étapes
Contrôleur de robot inspiré de N64 (Arduino + NRF24L01): Depuis mon premier projet robotique, j'utilise des contrôleurs de jeu pour exécuter des commandes et des fonctions. C'est certainement une influence de mes jours de joueur. J'ai déjà fait des projets avec des manettes PS2, Xbox 360… mais il est arrivé un moment où j'ai eu des problèmes d'interface
Contrôleur de jeu DIY basé sur Arduino - Contrôleur de jeu Arduino PS2 - Jouer à Tekken avec la manette de jeu DIY Arduino : 7 étapes
Contrôleur de jeu DIY basé sur Arduino | Contrôleur de jeu Arduino PS2 | Jouer à Tekken avec la manette de jeu DIY Arduino : Bonjour les gars, jouer à des jeux est toujours amusant, mais jouer avec votre propre contrôleur de jeu personnalisé DIY est plus amusant. Nous allons donc créer un contrôleur de jeu utilisant arduino pro micro dans cette instructables
Comment utiliser le terminal Mac et comment utiliser les fonctions clés : 4 étapes
Comment utiliser le terminal Mac et comment utiliser les fonctions clés : Nous allons vous montrer comment ouvrir le terminal MAC. Nous vous montrerons également quelques fonctionnalités du terminal, telles que ifconfig, le changement de répertoire, l'accès aux fichiers et arp. Ifconfig vous permettra de vérifier votre adresse IP, et votre annonce MAC
YABC - Encore un autre contrôleur Blynk - Contrôleur de température et d'humidité du cloud IoT, ESP8266 : 4 étapes
YABC - Encore un autre contrôleur Blynk - Contrôleur de température et d'humidité du cloud IoT, ESP8266 : Salut les fabricants, j'ai récemment commencé à cultiver des champignons à la maison, des pleurotes, mais j'ai déjà 3x de ces contrôleurs à la maison pour le contrôle de la température du fermenteur pour ma bière maison, femme fait aussi ce truc de Kombucha maintenant, et en tant que thermostat pour la chaleur