HID PIC4550 pour Virtual DJ
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

HID PIC4550 pour Virtual DJ



  1. #1
    inviteb6a034ca

    HID PIC4550 pour Virtual DJ


    ------

    Bonjour à tous, je me présent, je suis étudiant en licence 3eme année, mention sciences pour l'ingénieur.

    Je suis entrain de développer, pour le fun, une carte permettant de controler Virtual DJ, un logiciel de mixage audio. J'utilise pour cela un pic 18f4550 qui dispose de la fonction de liaison USB. Je programme en C, tout un tas de conversion A/N, que je souhaite envoyer via l'usb sur mon pc windows.

    J'ai lu sur le site de Virtual DJ qu'il fallait utiliser la "norme" HID. Il ne serait donc pas nécessaire de réaliser de programme coté PC, Virtual DJ se charge de tout grâce à un simple fichier qui décrit le périphérique.

    J'ai longuement utiliser les PIC pour mes études, donc je maitrise largement les bases, cependant je n'ai jamais utiliser l'USB. Suite a de nombreuses recherches, je n'ai pas trouver un seul exemple simple qui permettais d'envoyer une donnée simple, (un octet ...) sur un port USB. (style roboticus mais de manière simple). Quelqu'un connaitrais t'il un tel programme ? Ou alors une explication sur algorithme à suivre pour ouvrir une liaison USB ?

    Autre question pour m'enlever un doute, une fois le pic programmé de manière correcte et relié au pc par l'usb, le PC détectera t'il la carte tout seul, sans driver particulier ? ( ce que j'ai cru comprendre pour l'HID )

    Merci de me répondre
    Cordialement

    -----

  2. #2
    JOTH

    Re : HID PIC4550 pour Virtual DJ

    Bonjour,
    Des exemples tu en trouvera en telechargeant FSMCHUSB chez microchip
    Pour roboticus tu ne trouvera pas plus simple

    SENDDATABUFFER et RECEIVEBUFFER sont les intructions clef en C18
    pour l emission et la reception d un octet sur l USB

    Pour le HID contrairement au CDC n'a pas besoin de driver l'OS le detecte automatiquement

    Bon courage,

  3. #3
    inviteb6a034ca

    Re : HID PIC4550 pour Virtual DJ

    Merci pour les infos,
    donc si j'ai bien compris, ouvrir une liaison USB nessecite bien plus de parametres et de fonction qu'une liason USART ? d'apres l'exemple de roboticus, il est nessaire d'avoir autant de fichiers , comprenant autant de fonction pour une simple liaison ?

  4. #4
    JOTH

    Re : HID PIC4550 pour Virtual DJ

    Citation Envoyé par lasylv Voir le message
    J'ai lu sur le site de Virtual DJ qu'il fallait utiliser la "norme" HID. Il ne serait donc pas nécessaire de réaliser de programme coté PC, Virtual DJ se charge de tout grâce à un simple fichier qui décrit le périphérique.
    Si contrairement à l'emulation serie CDC qui peut etre utilisée avec
    les outil de gestion du port serie hyperterminal etc....
    le HID necessite d'ecire un programme avec une DLL pour la
    communication
    Autre chose pour communiquer ensemble il faut que le programme
    connait le VID/PID du PIC ou vice versa donc si tu as un programme tout fait il faut connaitre ces identificateurs pour pouvoir etablir la liaison

  5. A voir en vidéo sur Futura
  6. #5
    inviteb6a034ca

    Re : HID PIC4550 pour Virtual DJ

    Merci beaucoup pour ton envoie JOTH, ainsi que ton aide.

    Pour ce qui est des identificateurs, Virtual DJ fourni un utilitaire, qui permet d'analyser un periphérique branché, ainisi q'un affichage des trames emises en direct. Pa la suite il faut creer un XML decrivant la trame du style :

    - pour un réglage de volume par exemple, on declare qu'un octet numéro N de la trame, ayant comme minimum une valeur (par ex 0x00) et comme max 0xff, ainsi le Virtual DJ se débouille par la suite, converti la valeur en pourcentage, et effectue les réglages, pas besoin de dll me semble-t-il ..?

    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <device name="MYCONTROLLER" author="Me" type="HID" decks="2" vid="0x046d" pid="0xc218" reportsize="8">
    <page type="in">
    <slider byte="0" size="word" min="0x0000" max="0xFFFF" name="VOLUME A" />
    </page>
    </device>
    Voila, cela me parait assez explicite, un slider, est un reglage de type potentiomètre, 1er octet de la trame, d'une longeur d'un mot (2 octet), minimum 0, maximum FFFF, et cela correspond au réglage du volume de la platine A.

  7. #6
    inviteb6a034ca

    Re : HID PIC4550 pour Virtual DJ

    J'ai un peu avancer dans mon projet, j'en suis a la simulation sous Proteus ISIS. Or lors de la simulation du programme tout fonctionne bien, les conversions A/N ... Mais lors de l'envoi sur l'USB, mHIDTxIsBusy() renvoie toujours 1 ... J'ai oublier de préciser que j'utilise le programme de Roboticus ! Cela viens t il de proteus ou autre chose ?

    Code:
    #define mHIDTxIsBusy()              HID_BD_IN.Stat.UOWN
    
    void ProcessIO(void)
    {   
    	Buffer[0]=255;
    	getacd(0);    // Légerement modifiée par rapport à roboticus, mais fonctionnelle
    	Buffer[1] = ADRESH ;    // Ajustement a gauche donc seuls les bits de poids fort m'intéresse
    	if(!mHIDTxIsBusy()) {                // blocking
       		HIDTxReport(Buffer, PacketSize );   // transmit packet
    	}
    }//end ProcessIO

  8. #7
    RISC

    Re : HID PIC4550 pour Virtual DJ

    Salut,

    Perso je serai TRES TRES miéfiant à simuler des périph comme l'USB...
    Tu risques de perdre un temps fou à chercher un faux problème ou inversément d'avoir quelque chose qui marche sur simulateur et pas dans la réalité...
    Passe sur du vrai hard pour continuer tes tests.

    a+

  9. #8
    inviteb6a034ca

    Re : HID PIC4550 pour Virtual DJ

    Oui c'est ce à quoi je pensais, je tiendrais au courant de mon avancement sur ce topic, merci

  10. #9
    JOTH

    Re : HID PIC4550 pour Virtual DJ

    Bonjour,
    http://www.lvr.com/hidpage.htm

    Regardes là, il y a des utilitaires pour USB

    Bon courage,

Discussions similaires

  1. Une commande phare/code pour un feu HID Xenon
    Par Orphée dans le forum Électronique
    Réponses: 1
    Dernier message: 29/08/2009, 15h40
  2. Compatibilité d'une alimentation pour ampoule HID Xenon
    Par invite05a5c0c0 dans le forum Électronique
    Réponses: 4
    Dernier message: 17/07/2008, 08h31
Découvrez nos comparatifs produits sur l'informatique et les technologies.