USB Wii manette classique (1 / 18 étapes)

Étape 1: Utilisation de l’AVR avec V-USB

Pour le microcontrôleur, nous allons utiliser un ATmega328P. Ce microcontrôleur dispose d’assez de ressources mémoire et un intégré TWI/I2C périphériques pour atteindre nos objectifs. Cependant, il n’a pas à USB intégré, qui est un problème que nous allons résoudre en utilisant V-USB.

« V-USB est une implémentation logicielle d’un périphérique USB de basse vitesse pour le domaine des microcontrôleurs Atmel AVR®, rendant possible la construction d’un périphérique USB avec presque n’importe quel Microcontrôleur AVR®, ne nécessitant ne pas de n’importe quel morceau supplémentaire. »

- Site officiel de V-USB

V-USB utilise un ensemble de matériel et un assemblage très spécial techniques de programmation à bit-bang non-retour à zéro (NRZ) code binaire utilisé par USB pour communiquer. Les fichiers fournis par V-USB seront compilés dans notre programme afin de créer un périphérique USB avec nos ATmega328P

Veuillez consulter la section du site Web de V-USB download pour obtenir une copie de la dernière version. Dans le code source de mon projet, il est déjà inclus.

Pour compiler V-USB dans votre projet...

  1. Assurez-vous que vous avez défini le processeur et vitesse d’horloge correctement (V-USB prend uniquement en charge certaines vitesses d’horloge)
  2. Copiez le dossier « usbdrv » depuis le paquet téléchargé dans votre dossier de projet
  3. Dans votre gestionnaire de projet ou le makefile, incluent « usbdrv.c » et "usbdrvasm. S", tel que le fichier objet généré va devenir lié dans votre projet
  4. Dans le dossier « usbdrv », il y a un « usbconfig-prototype.h », copiez ce fichier dans votre répertoire de projet principal et renommez l’en « usbconfig.h »
  5. Éditer « usbconfig.h », cela sera expliqué en détail plus tard
  6. Utilisez les instructions « #include » pour inclure « usbconfig.h », puis « usbdrv/usbdrv.h »
  7. Assurez-vous que « usbdrv/usbdrv.h » est en mesure de trouver des « usbconfig.h », si ce n’est pas possible, utiliser le "-J’ai" à votre « usbdrv/usbdrv.h » makefile ou edit pour modifier le chemin d’accès du fichier à « usbconfig.h » (pour ".. / usbconfig.h ")

Ensuite, votre projet doit implémenter certaines fonctions des...

  • Vous devez initialiser V-USB et ensuite permettre aux interruptions de l’AVR
  • C’est presque une pratique courante de faux déconnecter et se reconnecter à l’ordinateur, au démarrage le code attendre quelques millisecondes. Cela garantit que votre appareil et votre ordinateur sont dans un état de « reset » pour commencer.
  • Une fonction de gestionnaire de requête doit être mis en œuvre, même si vous n’effectuez des actions réelles en elle, vous devez l’implémenter vous-même. Recherchez « usbFunctionSetup » plus tard.
    • Dans notre exemple, nous avons besoin d’utiliser cette fonction pour traiter les deux demandes spéciales, vous le verrez plus tard
  • La manette est un périphérique HID, un descripteur USB HID de rapport doit être rédigé et stocké dans votre code

Lecture plus :

Articles Liés

Contrôleur de l’objectif de l’Arduino - synchronisé Zoom/mise au point avec la manette classique Wii

Contrôleur de l’objectif de l’Arduino - synchronisé Zoom/mise au point avec la manette classique Wii

mon Lumix GH2 Micro Four Thirds caméra tire non seulement des vidéos fantastiques haute définition, mais avec des adaptateurs bon marchés je peux l'utiliser avec les anciennes lentilles manuelles qui sont bon marchés et souvent très haute qualité. Je
Manette classique pour adaptateur USB

Manette classique pour adaptateur USB

Si vous a grandi dans le début des années 1980 et ont été dans les jeux vidéo, vous avez probablement eu un Atari 2600, ColecoVision ou console de jeu similaire. Les contrôleurs ou les manettes de jeu pour chacun de ces systèmes ont une sensation dis
Teensy USB Wii Classic Controller

Teensy USB Wii Classic Controller

Je suis un fan de la Manette classique Wii, mais je n'ai jamais pris en charge pour avoir à garder les contrôleurs sans fil facturés pour un épisode occasionnel de nostalgie. Ne serait-il pas merveilleux si je pouvais utiliser ma manette classique Wi
Wireless clé USB Wii Nunchuk-à-souris pour PC, Mac et la tablette de jeux vidéo

Wireless clé USB Wii Nunchuk-à-souris pour PC, Mac et la tablette de jeux vidéo

Prêt pour se sentir comme le légendaire « Bruce Lee » utilisant des Wii Nunchuks sans fil sur un amusant jeu vidéo combat de stickman kung fu PC appelé One Finger Death Punch (OFDP). Que diriez-vous de jouer Jetpack Joyride sur Facebook ou sur votre
Périphérique Midi USB de manette de jeu vieux

Périphérique Midi USB de manette de jeu vieux

vous pouvez dépenser beaucoup d'argent sur un périphérique USB Midi cher ou créer les vôtres. Vous pouvez acheter des cartes USB HID et construire votre propre totalement à partir de zéro. Pour rendre le processus encore plus facile, sauver une vieil
SNES + Teensy = USB/PS3 manette

SNES + Teensy = USB/PS3 manette

contrôleur de la Super Nintendo est l'un des meilleurs manettes jamais réalisé. Ce tutoriel va montrer comment vous pouvez insuffler une vie à votre manette SNES vieux donc vous pouvez l'utiliser avec votre PC et votre PS3.Vous aurez besoin des éléme
Manette de Wii USB utilisant Arduino Leonardo

Manette de Wii USB utilisant Arduino Leonardo

Le week-end dernier, j'ai essayé la nouvelle RetroPie sur ma belle nouvelle Raspberry Pi 3, mais le contrôleur de jeu que j'ai est l'oldie Wii manette classique ; alors, comment puis-je convertir il à un contrôleur de jeu USB ordinaire ?Après quelque
Funtendo - un contrôleur multistick rétro pour votre PC

Funtendo - un contrôleur multistick rétro pour votre PC

Funtendo est un complètement autonomes rétro gaming & contrôleur de système pour votre PC.Il est capable d'utiliser l'original Nintendo contrôleur, le contrôleur de la N64 et le contrôleur Wii Classic en même temps !Funtendo est alimenté par USB et c
Initiation à l’ordinateur de poche Mini

Initiation à l’ordinateur de poche Mini

Environ un mois et demi, j'ai créé un projet appelé l'ordinateur de poche Mini et écrit une Instructable sur la façon de le construire. Ce Instructable prend l'ensemble du projet un peu plus loin en vous aidant à démarrer avec votre ordinateur de poc
Construire votre propre mini ordinateur de poche

Construire votre propre mini ordinateur de poche

jamais veulent faire l'expérience des années 70 et 80 informatique sans jongler avec le matériel ancien qui grincent et 5,25 disquettes ?Dans ce Instructable, je vais vous apprendre comment construire et programmer votre propre mini ordinateur de poc
Console de jeu ultime classique manette pour adaptateur USB

Console de jeu ultime classique manette pour adaptateur USB

Cet article décrit comment utiliser un Arduino Leonardo ou Arduino Micro pour mettre à la disposition d'un ordinateur modern (p. ex. Windows PC, Mac ou Linux) jusqu'à trois manettes de console classique (Atari 2600, ColecoVision et éventuellement d'a
Manette de la NES de Nintendo Bluetooth à l’aide de la Wiimote !

Manette de la NES de Nintendo Bluetooth à l’aide de la Wiimote !

Disposé à jouer rétro-jeux sur mon PC ou le Mac j'ai voulu utiliser le pad classique de NES !Je sais Wiimote fonctionne bien avec les deux alors pourquoi réinventer la roue.Le problème est de savoir comment intégrer une manette classique de la NES un
GameCube Controller pour Wiimote

GameCube Controller pour Wiimote

Deuxième Instructable. Faites-moi savoir si quelque chose doit être fixée.Je n'ai fait le circuit ou le programme. Je fais juste un guide qui montre l'assemblage étape par étape comment faire une Gamecube contrôleur Wiimote.La page originale est ici
Contrôleur de MAME sans fil portable

Contrôleur de MAME sans fil portable

Description:Ce projet vous permettra de fabriquer un contrôleur sans fil Portable pour MAME. La boîte MAME (Multiple Arcade Machine Emulator) j'ai utilisé était un Pi de framboise Mame avancée en cours d'exécution, mais n'importe quelle boîte support