AccueilblogS'enregistrerConnexion
Le Deal du moment : -56%
Carte Fnac+ & Deezer Premium 12 mois
Voir le deal
60 €

Partagez
 

 Ma borne d'arcade Mahjong

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
cauxim
Padawan
cauxim

Messages : 175
Réputation : 26
Age : 46
Inscrit le : 13/02/2014

Machine préférée gpd xd


Ma borne d'arcade Mahjong Empty
Msg n°1 MessageSujet: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMar 13 Avr 2021, 11:47

Voici ma borne d'arcade Mahjong

[Vous devez être inscrit et connecté pour voir cette image] [Vous devez être inscrit et connecté pour voir cette image]

Bon c'est une construction assez classique: un bartop et un piédestal construit en bois MDF.
Quelques boutons et stick commandés sur aliExpress branché sur une carte encodeur USb, le tout tournant sur un Raspberry 3.

La particularité ici c'est la partie Clavier pour le Mahjong:

[Vous devez être inscrit et connecté pour voir cette image]

Pour Jouer au Mahjong avec l'émulateur Mame, on a besoin des lettres de A à N, Ainsi que de 5 touches pour les commandes "chi", "pon", "kan", "reach", et "ron".
Pour les 5 touches il suffit de modifier les commandes dans Mame pour reconfigurer les touches, mais pour le clavier c'est une autre histoire.

Déjà parce qu'il faut 14 touches supplémentaires, ce qui est supérieur aux entrées restantes sur la carte USB, et le Core Mame de retroarch n'accepte pas de configurer une seconde carte USB pour le joueur 1.

Donc il faut un clavier réel, d'où l'idée d'utiliser une carte Arduino Leonardo, ou un clone comme la Pro micro dispo sur aliExpress pour 3€ environ.

[Vous devez être inscrit et connecté pour voir cette image]

En effet cette carte est doté d'un micro contrôleur Atmega32U4 qui est compatible avec la library Keyboard. Cette carte possède un émetteur-récepteur USB qui va nous permettre de simuler des touches de clavier.

La Seconde idée est d'utiliser un seul port Analog pour toutes les touches, évitant ainsi d'avoir trop de câbles.
l'avantage du port analogue c'est qu'on peut faire varier sa valeur.
En faite l'idée est de séparer chaque touche par une résistance, et ensuite dans le programme Lire la valeur du port Analog pour retrouver la touche pressée.

En branchant les touches comme ceci:

[Vous devez être inscrit et connecté pour voir cette image]

C'est assez simple à comprendre:
Si vous lisez la valeur du port Analog A1 en appuyant sur le Bouton A

Code:
int valeur = analogRead(A1);
Serial.println(valeur);

La tension part du port VCC (+5V), passe par le bouton 'A' pressé, et arrive au port analog 'A1' en n'ayant rencontré aucune résistance, alors la valeur retourné est 1023.

Si maintenant vous appuyez sur le bouton 'B', la tension va rencontrer une résistance de 300Homs et la valeur retourné sera de 993. Sur la touche 'C' elle va rencontrer 2 résistances, etc.

Ensuite il suffit d'écrire un programme pour dire simplement que si la valeur du port Analog (A1) est 993 alors on a appuyé sur la touche 'B' du clavier, si la valeur est 964 alors on a appuyé sur la touche 'C' du clavier, etc.

Bon pour être plus exact, et considérant que les résistances ont une marge d'erreur, on va plutôt chercher la touche pressé dans une fourchette de valeur:

Exemple: si la valeur est comprise entre "985" et 995" alors c'est la touche 'B' qui est pressé.

Voici à quoi peut ressembler le programme à insérer dans la carte:

Code:
#include <Keyboard.h>

int valeur;

void setup() {
 Serial.begin(9600);

  //bouton N
  pinMode(6,INPUT);

}

void loop() {
  
//BOUTON N
boolean a=digitalRead(6);
if(a==1){
  Keyboard.begin();
  Keyboard.press('n');
  delay(100);
  Keyboard.releaseAll();
  delay(100);
  Keyboard.end();
}
  
  valeur = analogRead(A1);

if(valeur>5){
  Keyboard.begin();

 if(valeur >1015){
 
    Keyboard.press('a');
  
 }
 else if(valeur > 995 && valeur < 1005){
  
   Keyboard.press('b');
  
 }
  else if(valeur > 975 && valeur < 985){
  
   Keyboard.press('c');
  
 }
  else if(valeur > 955 && valeur < 965){
  
    Keyboard.press('d');
 
 }
  else if(valeur > 935 && valeur < 945){
  
    Keyboard.press('e');
 
 }
  else if(valeur > 915 && valeur < 925){
  
   Keyboard.press('f');
  
 }
  else if(valeur > 900 && valeur < 910){
  
    Keyboard.press('g');
 
 }
  else if(valeur > 880 && valeur < 890){
  
   Keyboard.press('h');
  
 }
  else if(valeur > 865 && valeur < 875){
  
    Keyboard.press('i');
 
 }
  else if(valeur > 850 && valeur < 860){
  
   Keyboard.press('j');
  
 }
  else if(valeur > 835 && valeur < 845){
  
    Keyboard.press('k');
  
 }
  else if(valeur > 820 && valeur < 830){
  
   Keyboard.press('l');
  
 }
  else if(valeur > 805 && valeur < 815){
 
   Keyboard.press('m');
  
 }
 delay(50);
  Keyboard.releaseAll();
    delay(50);
  Keyboard.end();

}

  delay(10);
}
Voila, si vous lisez correctement mon code, vous verrez que j'ai mis la touche 'N' sur un port simple. En effet au mahjong, on appuie facilement 40 fois sur la touche 'N' par manche. j'ai donc préféré le mettre seul, c'est plus rapide pour la lecture du code.
Ensuite les valeurs ne correspondent pas à mon exemple, tout simplement parce que j'ai utilisé des résistances de 220 Ohms.
Et pour finir j'ai enveloppé le code pour n'ouvrir la lecture clavier que si la valeur est supérieur à 5, inutile de lire en boucle si aucune touche n'est pressé (d'où l'utilité de séparer la touche 'N')

Voila j'espère vous avoir éclairci sur la simulation d'un clavier. pensez y si à l'avenir vous voulez créer un cockpit pour un simulateur de vol, ou tout autre projet qui demande de nombreuses touches.
Revenir en haut Aller en bas
https://cauxprod.blogspot.fr/
Caanunoo
Team Open Consoles
Team Open Consoles
Caanunoo

Messages : 4162
Réputation : 538
Age : 48
Inscrit le : 10/03/2020

Machine préférée Open Pandora 1GHz & 600 MHz, GPD XD+, WIN 1, 2 & MAX

Localisation : Open-Consoles

Humeur : Splité (cf film "Split")


Ma borne d'arcade Mahjong Empty
Msg n°2 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMar 13 Avr 2021, 12:21

Bel objet cauxim !!! happy

________________________________
[Vous devez être inscrit et connecté pour voir cette image]
Revenir en haut Aller en bas
entropie
Accro'
entropie

Messages : 467
Réputation : 15
Age : 41
Inscrit le : 16/12/2014

Localisation : Ici et là


Ma borne d'arcade Mahjong Empty
Msg n°3 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMar 13 Avr 2021, 12:51

Superbe ! :clap:
Revenir en haut Aller en bas
RatedR57
Membre Hyper Actif
RatedR57

Messages : 1794
Réputation : 58
Age : 41
Inscrit le : 16/11/2012

Machine préférée Megadrive, GameBoy et Playstation

Localisation : Tressange (57)

Humeur : Nostalgeek


Ma borne d'arcade Mahjong Empty
Msg n°4 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMar 13 Avr 2021, 20:30

Vraiment cool !!! Bravo
Revenir en haut Aller en bas
cauxim
Padawan
cauxim

Messages : 175
Réputation : 26
Age : 46
Inscrit le : 13/02/2014

Machine préférée gpd xd


Ma borne d'arcade Mahjong Empty
Msg n°5 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 09:05

merci, merci
Revenir en haut Aller en bas
https://cauxprod.blogspot.fr/
ClementNerma
Master Chief
ClementNerma

Messages : 787
Réputation : 59
Age : 20
Inscrit le : 10/09/2015

Machine préférée Switch Lite

Localisation : Quelque part dans le monde

Humeur : :D


Ma borne d'arcade Mahjong Empty
Msg n°6 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 09:32

Très classe, bravo !
Revenir en haut Aller en bas
https://github.com/ClementNerma
k0en
Membre d'honneur VIP
k0en

Messages : 10180
Réputation : 285
Age : 39
Inscrit le : 25/01/2011

Machine préférée TO7-70

Localisation : Devant son écran

Humeur : Indécis


Ma borne d'arcade Mahjong Empty
Msg n°7 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 14:25

Alors là, j'aurai jamais imaginé une borne Mahjong :euh:
Bravo !
POur moi le Mahjong c'est une sorte de jeu de domino à assembler par paire et je suis en train de me dire qu'il y a des subtilités que je n'ai pas saisi Laughing
Revenir en haut Aller en bas
ClementNerma
Master Chief
ClementNerma

Messages : 787
Réputation : 59
Age : 20
Inscrit le : 10/09/2015

Machine préférée Switch Lite

Localisation : Quelque part dans le monde

Humeur : :D


Ma borne d'arcade Mahjong Empty
Msg n°8 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 15:20

k0en a écrit:
Alors là, j'aurai jamais imaginé une borne Mahjong :euh:
Bravo !
POur moi le Mahjong c'est une sorte de jeu de domino à assembler par paire et je suis en train de me dire qu'il y a des subtilités que je n'ai pas saisi Laughing

C'est un jeu assez complexe effectivement, le principe est simple mais il y a pas mal de subtilités happy
Revenir en haut Aller en bas
https://github.com/ClementNerma
Caanunoo
Team Open Consoles
Team Open Consoles
Caanunoo

Messages : 4162
Réputation : 538
Age : 48
Inscrit le : 10/03/2020

Machine préférée Open Pandora 1GHz & 600 MHz, GPD XD+, WIN 1, 2 & MAX

Localisation : Open-Consoles

Humeur : Splité (cf film "Split")


Ma borne d'arcade Mahjong Empty
Msg n°9 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 15:53

ClementNerma a écrit:
C'est un jeu assez complexe effectivement, le principe est simple

Complexe...mais simple... Ceci est un paradoxe !!! :lol2:
J'en conclu que le mahjonj est complexe dans sa simplicité ou bien qu'il est facile dans sa complexité !!! :peufpeuf:

________________________________
[Vous devez être inscrit et connecté pour voir cette image]
Revenir en haut Aller en bas
ClementNerma
Master Chief
ClementNerma

Messages : 787
Réputation : 59
Age : 20
Inscrit le : 10/09/2015

Machine préférée Switch Lite

Localisation : Quelque part dans le monde

Humeur : :D


Ma borne d'arcade Mahjong Empty
Msg n°10 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 16:15

Caanunoo a écrit:
ClementNerma a écrit:
C'est un jeu assez complexe effectivement, le principe est simple

Complexe...mais simple... Ceci est un paradoxe !!! :lol2:
J'en conclu que le mahjonj est complexe dans sa simplicité ou bien qu'il est facile dans sa complexité !!! :peufpeuf:

Non mais tu m'as compris quoi xD 

Ce que je veux dire c'est que le principe est simple mais que la multitude de règles et les subtilités font que c'est, au final assez complexe.

Un peu comme le Poker par exemple, le principe est très simple, mais tu as plein de subtilités Wink
Revenir en haut Aller en bas
https://github.com/ClementNerma
Tryskel
Noob'
Tryskel

Messages : 29
Réputation : 1
Age : 36
Inscrit le : 28/01/2021

Localisation : Obernai


Ma borne d'arcade Mahjong Empty
Msg n°11 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 16:53

k0en a écrit:
Alors là, j'aurai jamais imaginé une borne Mahjong :euh:
Bravo !
POur moi le Mahjong c'est une sorte de jeu de domino à assembler par paire et je suis en train de me dire qu'il y a des subtilités que je n'ai pas saisi Laughing

Ca, c'est comme le Solitaire aux cartes. Le mahjong se joue à quatre et est assez proche du rami dans certains de ses aspects, voilà plutôt à quoi ça ressemble [Vous devez être inscrit et connecté pour voir cette image]


Du coup, on a une main de 13 tuiles maximum, on pioche une 14e, et on jette la moins intéressante pour construire au fur et à mesure sa main, d'où les 14 touches de A à N pour choisir la tuile qu'on veut jeter


Dernière édition par Tryskel le Mer 14 Avr 2021, 17:03, édité 1 fois
Revenir en haut Aller en bas
Gougoule
Master Chief
Gougoule

Messages : 560
Réputation : 42
Inscrit le : 29/12/2012


Ma borne d'arcade Mahjong Empty
Msg n°12 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 17:00

merci pour le partage et bravo pour la transparence des explications ! Beau boulot !
Revenir en haut Aller en bas
entropie
Accro'
entropie

Messages : 467
Réputation : 15
Age : 41
Inscrit le : 16/12/2014

Localisation : Ici et là


Ma borne d'arcade Mahjong Empty
Msg n°13 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitimeMer 14 Avr 2021, 18:44

Si j'avais du temps et les connaissances techniques nécessaires, c'est un jeu de poker que je fabriquerais. j'adorerais avoir une petite borne pour jouer au poker...
Revenir en haut Aller en bas
Contenu sponsorisé




Ma borne d'arcade Mahjong Empty
Msg n°14 MessageSujet: Re: Ma borne d'arcade Mahjong Ma borne d'arcade Mahjong Icon_minitime

Revenir en haut Aller en bas
 
Ma borne d'arcade Mahjong
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» [i]Mahjong time[/i], besoin d'aide pour débutant !!
» Mahjong sur Lille
» Animation Mahjong à Strasbourg le 18 et 19 septembre
» Mahjong sur PC
» Mahjong Time

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Communauté Francophone Consoles Open Source et Android - Caanoo GPH / Open Pandora / GCW-Zero :: LE RETRO' CAFE :: Espace Blabla :: Jeux vidéo :: Arcade et bornes :: Vos bornes et WIP-