Parcourir le wiki

Play and Hobbies  +
Published  +
50  +
EUR (€)  +
Une manette type arcade utilisant le protocole USBHID.  +
Hard  +
1  +
day(s)  +
https://github.com/hugotpichon/arcpad-pic18f4550/tree/master/3D_2D/fichier%202D%20vect  +
Le projet fini, dans la version 1.1, propoLe projet fini, dans la version 1.1, propose un Pad arcade compatible Windows (testé sous xp, et 7), non testé sous Mac,Linux. Le protocole USB utilisé est le "HID", ne nécessitant pas de pilote. Le circuit peut supporter soit : - 2 axes numériques + 24 boutons (2 joueurs arcade) - 2 axes analogiques + 10 boutons (manette commerciale la plus fréquente) Le support (boitier) quand à lui est conçu pour porter une Pad arcade 1 joueur.conçu pour porter une Pad arcade 1 joueur.  +
fr  +
Attribution (CC BY)  +
Pad_d'arcade_arcade_big.png  +
* Circuit imprimé (cf. partie circuit) * * Circuit imprimé (cf. partie circuit) * Pic 18f4550 * Résistances (3,3k(2) et 3,3k ->10k ohm(14 pour le pad 1 joueur)) * Capacité (condensateurs 47nf et 100uF) * Bois (MDF 5 (ou 6mm)) * Câble USBA mâle * Bouton et stick * Pickit 3 (ou autre programmeur) SB<sub>A</sub> mâle * Bouton et stick * Pickit 3 <sub>(ou autre programmeur)</sub>   +
Un projet réalisé au [[Group:LabBoîte Cergy|fablab LabBoîte de Cergy]] à retrouver aussi sur [https://github.com/hugotpichon/arcpad-pic18f4550 github.com/hugotpichon/arcpad-pic18f4550].  +
Pour le Pic18f4550 un programmateur PickitPour le Pic18f4550 un programmateur Pickit 3 ( ~15€ ) suffis. Deux logiciels s'offrent à vous : - MPLab 8.92 + c18 compiler - MPLab X + xc8 compiler Pour une simple de raison de programme d'exemple disponible et de prise en main j'ai utilisé MPLab 8.91 + c18 compiler (disponible sur le site de Microchip) J'ai donc modifié le fichier d'exemple "HID - Mousse" pour en faire un HID - joypad Les fichiers qui vous seront utiles pour modification sont : * joypad.c ** #pragma config PLLDIV = X //(X = fréquence du quartz/4Mhz) ** char buffer[7]; // peut être modifié si vous changez les sorties de la manette ** void joypad(void) //à modifier si vous changez les sorties * usb_config.h ** #define HID_INT_IN_EP_SIZE      7 //nombre d'octets par message ** #define HID_RPT01_SIZE          55 // à changer si vous modifiez le "HID report" ** #define MY_VID 0x04D8 #define MY_PID 0x80FA // éditez si vous avez mieux, ce sont des VID et PID de microchip (non commerciaux) * joypad_map.c ** char Lect_ANX(void) *** N'est pas utilisé, mais quelques changements permettent d'effectuer la lecture d'un stick analogique. ** char Lect_XY(void) *** Permet la lecture de stick numérique (type arcade) ** char Lect_buton_X_to_Y (void) *** Permet la lecture des boutons *** Vous devrez probablement modifier les valeurs : if (botonX == 0) en fonction de vos soudure. * joypad_map.h ** Définie les utilitaires liés à joypad_map.c *** Pratique pour repérer les liens entre "entrée et bouton" * usb_descriptor.c ** Le fichier le plus complexe que vous pourriez avoir à modifier ** //Manufacturer string descriptor *** votre nom, plus ou moins **** n'oubliez pas de de modifier "string[25]" si vous changez le nombre de caractère ** //Product string descriptor *** Le nom qu'il aura dans le système (vue par les jeux et autres) **** N'oubliez pas de modifier "string[25]" si vous changez le nombre de caractères ***** (un nombre réduit de caractères < 12 , sans accents, est une bonne idée) ** //Class specific descriptor - HID joypad *** Bien que je vous déconseille de vous aventurer en terrain dangereux vous devrez toucher à cette horreur si vous souhaitez modifier les sorties du pad. *** Je n'ai pas tout compris à ce langage mais si vous souhaitez vous y aventurer : **** "usb_lyser" (payant mais version trial de 30 jour disponible) ***** Peut vous aider en récupérant les HID report des objets que vous connectez en USB à votre PC (souris pas chère, manette,...). **** MSDEV : Dt.exe (logiciel fournit par Microsoft) permet d'écrire les Bytes(octet) de code du HID report.crire les Bytes(octet) de code du HID report.  , Bravo votre borne est finie !  +, Pour ce qui est du circuit imprimé, je vouPour ce qui est du circuit imprimé, je vous propose celui que j'ai conçu. Il est conseillé d'apporter les améliorations suivantes : - Ajout d'un plan de masse (pour une gravure du circuit à la CNC, et pour faire moins de bruit CEM) - Réduction de la taille (coût plus faible et moins de place dans la boîte)us faible et moins de place dans la boîte)  +  et La boîte à été faite pour 1 joueur. Elle contient 10 boutons (8 de jeu + select, start), 1 espace pour le stick et 2 visses pour fermer le capot supérieur. Le capot inférieur est fixé par de la colle à bois aux quatre contours.  +
Circuit imprimé  +, Programmation du PIC  +, Boîtier  +  et Résultat final  +
Arcade  +
'''Machines utilisées''' * Machine d'impression de circuit (CNC ou imprimante chimique). * Découpeuse laser * Fer à souder '''Logiciel utilisé''' * MPLab IDE 8.91 <sub>disponible sur le site de  microchip</sub> * Eagle <sub>ou autre logiciel de CAO</sub>  +
Creation  +
Display title of« Display title of » est une propriété prédéfinie qui peut affecter un titre affiché distinct à une entité, et est fournie par Médiawiki Sémantique.
Pad d'arcade  +
Date de modification« Date de modification (Modification date) » est une propriété prédéfinie qui correspond à la date de la dernière modification d’un sujet et est fournie par MédiaWiki Sémantique.
10:47:59, 9 décembre 2019  +
⧼cs-comments⧽Cette propriété est une propriété spéciale dans ce wiki.
0  +
Créateur de la pageCette propriété est une propriété spéciale dans ce wiki.
I did itCette propriété est une propriété spéciale dans ce wiki.
0  +
FavorisCette propriété est une propriété spéciale dans ce wiki.
0  +
 
Aucune propriété ne pointe vers cette page.