Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

PIC 18F2550 et USB HID



  1. #1
    koceila882

    PIC 18F2550 et USB HID


    ------

    bonjour

    je veux realiser une carte d’acquisition basé sur le PIC 18F2550 piloter pare un quartz de 8 MHz

    je utilise l'exemple de help de MikroC HID_library
    j'ai créé le fichier USBdsc.c ( j'ai pris l'exemple par Default pour le VID et PID ) et je l'ai ajouter au fichier source dans Project Manager
    j'ai copier les deux bibliothèque trouver dans l'exemple fourni avec MikroC (( "Definit.h" "VARs.h" )) et les coller dans le fichier de projet

    maintenant dans les configuration j'ai mis :

    96 MHz PLL Prescaler => Divide by 2 ( 8 MHz input)
    CPU System Clock Postescaler => [OSC1/OSC2 Src : /1][ 96 MHz PLL Src: /2]
    Full-Speed USB Clock Source Selection => Clock src from 96 MHz PLL/2
    Oscillator => HS: HS+PLL, USB-HS

    le reste tous Disabled

    en HardWare :

    cap dur Vusb de 47nf
    quartz de 8 MHz + deux cap de 22 pf
    une bobine de choc VK200 en serie avec Vcc (( avan d'alimenter le PIC ))

    mon probleme ce que il ne ce passe rien mon PC de detecte rien..
    avez vous une idée je suis vraiment bloqué..
    merci d'avance
    cordialement

    -----

  2. Publicité
  3. #2
    RicounetZap

    Re : PIC 18F2550 et USB HID

    Bonjour,

    La capa de 47nF sur Vusb me parait un peu faible, en général, je mets un 220 nF.
    Ensuite, est ce que ton programme fonctionne ? As tu moyen de faire clignoter une led en même temps (ou tout autre moyen permettant de confirmer le bon fonctionnement) ?
    Cordialement
    N'importe quoi, for ever :-)

  4. #3
    koceila882

    Re : PIC 18F2550 et USB HID

    slt
    merci pour ta réponse..... j'ai oublier j'ai essayé de faire allumer une LED en même temps que le programme envois les donner et ça n'a pas marcher..
    avez vous une explication ?
    merci , cordialement

  5. #4
    RicounetZap

    Re : PIC 18F2550 et USB HID

    Bonjour,

    Sans voir le programme, c'est difficile à dire.
    1) Il faut vérifier que ton montage fonctionne. Sans implémenter la communication USB, juste faire clignoter une led
    2) Mettre en place le code du HID ou si possible, selon le montage, essayer en programmant directement un .hex sur ton pic.

    Après, j'utilise le stack de Microchip, je ne connais pas celui de MikroC. Peux tu essayer directement avec un de leurs exemples ?

    Cordialement
    N'importe quoi, for ever :-)

  6. A voir en vidéo sur Futura
  7. Comparatifs

    Gagnez du temps et de l'argent grâce à nos comparatifs de produits. Parmi nos sujets :
  8. #5
    koceila882

    Re : PIC 18F2550 et USB HID

    salut
    j'ai changer un peu le programme et j'ai réussi à clignoter une LED pendant le programme HID et une autre LED qui preuve le bon fonctionnement de l'interruption c'est a dire elle s'allument pendant l'interruption
    est ce qu il y pas une chose particulière dans le fichier USBdec.c ?

    voici le programme :


    unsigned short m, k;
    unsigned short userRD_buffer[64];
    unsigned short userWR_buffer[64];
    unsigned short text [64];

    void interrupt()
    {
    HID_InterruptProc();
    PORTA.F0=1; // Keep alive
    TMR0L = 100; // Reload TMR0L
    INTCON.TMR0IF = 0; // Re-enable TMR0 interrupts
    }

    void Init_Main() {
    // Disable all interrupts
    // Disable GIE, PEIE, TMR0IE, INT0IE,RBIE
    INTCON = 0;
    INTCON2 = 0xF5;
    INTCON3 = 0xC0;
    // Disable Priority Levels on interrupts
    RCON.IPEN = 0;
    PIE1 = 0;
    PIE2 = 0;
    PIR1 = 0;
    PIR2 = 0;

    // Configure all ports with analog function as digital
    ADCON1 |= 0x0F;

    // Ports Configuration
    TRISA = 0;
    TRISB = 0;


    LATA = 0;
    LATB = 0;
    PORTA=0;
    PORTB=0;
    // Set interrupt registers to power-on defaults
    // Disable all interrupts
    //
    INTCON=0;
    INTCON2=0xF5;
    INTCON3=0xC0;
    RCON.IPEN=0;
    PIE1=0;
    PIE2=0;
    PIR1=0;
    PIR2=0;
    //
    // Configure TIMER 0 for 20ms interrupts. Set prescaler to 256
    // and load TMR0L to 156 so that the time interval for timer
    // interrupts at 8MHz is 256*156*0.5 = 20ms
    //
    // The timer is in 8-bit mode by default
    //
    T0CON = 0x47; // Prescaler = 256
    TMR0L = 100; // Timer count is 256-156 = 100
    INTCON.TMR0IE = 1; // Enable T0IE
    T0CON.TMR0ON = 1; // Turn Timer 0 ON
    INTCON = 0xE0; // Enable interrupts

    }


    /** Main Program Routine **/
    void main() {
    char i;
    Init_Main();

    HID_Enable(&userWR_buffer, &userWR_buffer);
    Delay_ms(1000);
    Delay_ms(1000);
    while(1) {
    Delay_ms(1000);
    i=0;
    PORTB=0XFF;
    delay_ms(500);
    PORTB=0;
    while(text[i]) {
    userWR_buffer[0]= text[i++];
    while (!HID_Write(&userWR_buffer, 1));
    }
    }

    Delay_ms(1000);
    HID_Disable();
    }


    merci cordialement,

  9. #6
    koceila882

    Re : PIC 18F2550 et USB HID

    bonjour
    si quelqu'un de vous a programmé un exemple de USB HID avec le pic18F2550 et qui a utilisé le programmateur WinPic800 peut m'envoyer un screenshot de la configuration de winpic800
    merci d'avance

  10. Publicité

Discussions similaires

  1. Interface PC - PIC 18F2550 en USB
    Par mimi35garry dans le forum Électronique
    Réponses: 10
    Dernier message: 11/04/2015, 04h38
  2. PIC 18F2550 pour l' USB
    Par Shaiton dans le forum Électronique
    Réponses: 7
    Dernier message: 26/05/2011, 22h34
  3. PIC USB et HID (avec EasyHID) en C!
    Par Shaiton dans le forum Électronique
    Réponses: 39
    Dernier message: 01/11/2009, 10h39
  4. pic 18f2550 & usb
    Par RBLODE dans le forum Électronique
    Réponses: 0
    Dernier message: 05/08/2008, 15h29
  5. Périphérique HID USB avec un PIC
    Par inoxxam dans le forum Électronique
    Réponses: 3
    Dernier message: 10/07/2008, 23h09
Découvrez nos comparatifs produits sur l'informatique et les technologies.