PORT MIDI (INTERFACE)
Page 1 sur 1
PORT MIDI (INTERFACE)
Sujet du message: Interface sur port MIDI
Publié: Lun Aoû 12, 2013 6:21 am DE SHADOW272
J'ai pu voir à l'ADN 2013 une interface sur port MIDI créée par Manu M.
Elle permettait de piloter un spot LED tricolore et permettait d'agir sur l'intensité de luminosité de ces LED et ce par couleur.
Selon les dires de notre ami Manu, "simple, il suffit de, c'est presque rien à faire, y a 3 ou 4 composants électroniques, . . .).
Manu étant quelqu'un de très humble, j'aimerais bien qu'il en explique un peu plus sur ce forum.
Comment tu communique avec l'interface, les vitesses pouvant être atteinte par ce port peu utilisé, etc . . .
Tout ça pour en venir à ce que j'ai une idée de développer un jeu de bataille navale (touché/coulé) pouvant être joué à maximum 8 joueurs simultanés.
Tes lumières concernant le port MIDI m'avanceraient et me déchargerait d'une batterie des tests.
_________________
GFA de retour
DE MANU
Je ferai un petit rapport sur ce montage dans la section BRICO & GFA
j'ai créé en GFA une console DMX virtuelle (6 canaux), qui pilote en Midi une interface ARDUINO "Midi to DMX" trouvé sur le site "sonicrobots.com"
basée ainsi: clavier Midi>platine ARDUINO>spot DMX
l'Arduino est codé en C (j'ai ajusté que les canaux pour mon spot LED)
la commande GFA est OUT 3,144,y,z
3: sortie port Midi
144: reconnaissance pour l'Arduino
y: numéro du canal DMX 1>6
z: puissance de sortie 0>255
le Midi est un protocole Serie à 31250 Bauds,
sur un ST le max en RS232 c'est 19200 Bauds (buggué parait-il?)
pour tester la norme Midi j'ai acheté un ROLAND MT32
on le commande avec un OUT 3,x,y,z
x: commande Midi
y: note
z: hauteur
Pour ton projet SHADOW, tu n'as pas besoin de suivre la norme puisque on ne va pas jouer d'un instrument,
tu vas créer tes propres marqueurs , l'ami La Fleche connait bien les protocoles RSxxx
Dans mon cas l'arduino réagis aux codes 128,144,160,208 (note off ,note on ,etc...) mais cela me posait problème
quand j'envoyais par exemple OUT 3,144,1,128 (ou 144,160,208)
avec 127: lumière à 50%, 128: lumière à 0%, 129: lumière à 51%
J'ai modifié coté GFA, mais je vais supprimer du code C ce qui ne me sert pas pour le prochain PRG.
DE SHADOW272
Salut Manu,
Je comptais utiliser des OUT et IN pour le dialogue entre ST mais je crois qu'il y a aussi un OPEN "U",#1,MID ou une autre manière de le paramétrer (OPEN "A" et OPEN"I").
Je testerai et vous tiendrai au courant.
DE DAROOU
Sujet du message: Re: Interface sur port MIDI
Publié: Mar Aoû 13, 2013 6:27 am
Il me semble que IN est bloquant lorsqu'il n'y a rien sur le port ?
Je me rappel plus et je le retrouve pas dans le manuel.
Mais je pense qu'il est préférable d'utiliser le port comme un fichier avec OPEN.
C'est non bloquant et il y a un buffer derrière, même s'il faut le lire très régulièrement pour pas perdre de données.
C'est ce que j'utilisais pour lire/écrire le flux du micro sur mon smart memory 56k
La lecture / écriture sur le port midi se fait comme dans un fichier, facile
_________________
Renaissance - Milan040 - MagiC
DE LAFLECHE
Inscrit le: Jeu Mai 02, 2013 7:24 pm
Messages: 12
Ca a l'air rudement chouette tout ça
Et moi je dis c'est un dossier de choix pour alimenter la rubrique Bricolage encore un peu vide pour le moment ...
Voilà le bout de code donné par Cooper pour tester la machine :
Code:
> FUNCTION cookie_find(id$)
LOCAL c_ptr%,cname%,c_val%
c_ptr%=LPEEK(&H5A0) ! start of list (cookie-jar)
IF OR(c_ptr%=0,ODD(c_ptr%))
RETURN 0 ! error: cookiejar does not exist
ELSE
REPEAT
cname%=LPEEK(c_ptr%)
c_val%=LPEEK(c_ptr%+4)
EXIT IF cname%=0 ! end of list
ADD c_ptr%,8
UNTIL MKL$(cname%)=id$ ! cookie found
IF cname%
RETURN c_val% ! return its value
ENDIF
RETURN -1 ! jar exists; cookie not found
ENDIF
ENDFUNC
> PROCEDURE test_ste
a|=PEEK(&HFF820D)
SPOKE &HFF820D,15
b|=PEEK(&HFF820D)
SPOKE &HFF820D,a|
IF a|<>b|
ste!=TRUE
falcon!=FALSE
stf!=FALSE
IF @cookie_find("_SND")=31
falcon!=TRUE
ste!=FALSE
stf!=FALSE
PRINT "falcon detected !"
ELSE
PRINT "STE detected !"
ENDIF
ELSE
PRINT "STF detected !"
stf!=TRUE
falcon!=FALSE
ste!=FALSE
ENDIF
RETURN
Publié: Lun Aoû 12, 2013 6:21 am DE SHADOW272
J'ai pu voir à l'ADN 2013 une interface sur port MIDI créée par Manu M.
Elle permettait de piloter un spot LED tricolore et permettait d'agir sur l'intensité de luminosité de ces LED et ce par couleur.
Selon les dires de notre ami Manu, "simple, il suffit de, c'est presque rien à faire, y a 3 ou 4 composants électroniques, . . .).
Manu étant quelqu'un de très humble, j'aimerais bien qu'il en explique un peu plus sur ce forum.
Comment tu communique avec l'interface, les vitesses pouvant être atteinte par ce port peu utilisé, etc . . .
Tout ça pour en venir à ce que j'ai une idée de développer un jeu de bataille navale (touché/coulé) pouvant être joué à maximum 8 joueurs simultanés.
Tes lumières concernant le port MIDI m'avanceraient et me déchargerait d'une batterie des tests.
_________________
GFA de retour
DE MANU
Je ferai un petit rapport sur ce montage dans la section BRICO & GFA
j'ai créé en GFA une console DMX virtuelle (6 canaux), qui pilote en Midi une interface ARDUINO "Midi to DMX" trouvé sur le site "sonicrobots.com"
basée ainsi: clavier Midi>platine ARDUINO>spot DMX
l'Arduino est codé en C (j'ai ajusté que les canaux pour mon spot LED)
la commande GFA est OUT 3,144,y,z
3: sortie port Midi
144: reconnaissance pour l'Arduino
y: numéro du canal DMX 1>6
z: puissance de sortie 0>255
le Midi est un protocole Serie à 31250 Bauds,
sur un ST le max en RS232 c'est 19200 Bauds (buggué parait-il?)
pour tester la norme Midi j'ai acheté un ROLAND MT32
on le commande avec un OUT 3,x,y,z
x: commande Midi
y: note
z: hauteur
Pour ton projet SHADOW, tu n'as pas besoin de suivre la norme puisque on ne va pas jouer d'un instrument,
tu vas créer tes propres marqueurs , l'ami La Fleche connait bien les protocoles RSxxx
Dans mon cas l'arduino réagis aux codes 128,144,160,208 (note off ,note on ,etc...) mais cela me posait problème
quand j'envoyais par exemple OUT 3,144,1,128 (ou 144,160,208)
avec 127: lumière à 50%, 128: lumière à 0%, 129: lumière à 51%
J'ai modifié coté GFA, mais je vais supprimer du code C ce qui ne me sert pas pour le prochain PRG.
DE SHADOW272
Salut Manu,
Je comptais utiliser des OUT et IN pour le dialogue entre ST mais je crois qu'il y a aussi un OPEN "U",#1,MID ou une autre manière de le paramétrer (OPEN "A" et OPEN"I").
Je testerai et vous tiendrai au courant.
DE DAROOU
Sujet du message: Re: Interface sur port MIDI
Publié: Mar Aoû 13, 2013 6:27 am
Il me semble que IN est bloquant lorsqu'il n'y a rien sur le port ?
Je me rappel plus et je le retrouve pas dans le manuel.
Mais je pense qu'il est préférable d'utiliser le port comme un fichier avec OPEN.
C'est non bloquant et il y a un buffer derrière, même s'il faut le lire très régulièrement pour pas perdre de données.
C'est ce que j'utilisais pour lire/écrire le flux du micro sur mon smart memory 56k
La lecture / écriture sur le port midi se fait comme dans un fichier, facile
_________________
Renaissance - Milan040 - MagiC
DE LAFLECHE
Inscrit le: Jeu Mai 02, 2013 7:24 pm
Messages: 12
Ca a l'air rudement chouette tout ça
Et moi je dis c'est un dossier de choix pour alimenter la rubrique Bricolage encore un peu vide pour le moment ...
Voilà le bout de code donné par Cooper pour tester la machine :
Code:
> FUNCTION cookie_find(id$)
LOCAL c_ptr%,cname%,c_val%
c_ptr%=LPEEK(&H5A0) ! start of list (cookie-jar)
IF OR(c_ptr%=0,ODD(c_ptr%))
RETURN 0 ! error: cookiejar does not exist
ELSE
REPEAT
cname%=LPEEK(c_ptr%)
c_val%=LPEEK(c_ptr%+4)
EXIT IF cname%=0 ! end of list
ADD c_ptr%,8
UNTIL MKL$(cname%)=id$ ! cookie found
IF cname%
RETURN c_val% ! return its value
ENDIF
RETURN -1 ! jar exists; cookie not found
ENDIF
ENDFUNC
> PROCEDURE test_ste
a|=PEEK(&HFF820D)
SPOKE &HFF820D,15
b|=PEEK(&HFF820D)
SPOKE &HFF820D,a|
IF a|<>b|
ste!=TRUE
falcon!=FALSE
stf!=FALSE
IF @cookie_find("_SND")=31
falcon!=TRUE
ste!=FALSE
stf!=FALSE
PRINT "falcon detected !"
ELSE
PRINT "STE detected !"
ENDIF
ELSE
PRINT "STF detected !"
stf!=TRUE
falcon!=FALSE
ste!=FALSE
ENDIF
RETURN
Jb- Messages : 143
Date d'inscription : 25/03/2018
Age : 47
Localisation : Tantonville
Sujets similaires
» Réseau MIDI
» Télécommande IR sur port //
» Gfabisc 3.06 avec compilateur
» VOLET ROULANT SUR PORT//
» Masse rotor branché sur port rs 232
» Télécommande IR sur port //
» Gfabisc 3.06 avec compilateur
» VOLET ROULANT SUR PORT//
» Masse rotor branché sur port rs 232
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|