MikroC et CDC USB - Page 2
Répondre à la discussion
Page 2 sur 3 PremièrePremière 2 DernièreDernière
Affichage des résultats 31 à 60 sur 84

MikroC et CDC USB



  1. #31
    bypbop

    Re : MikroC et CDC USB


    ------

    de plus je dirais que ca ne viens pas de mon programmateur car j'ai mis ton hex directement sans aucune option ...

    bonne soirée,
    cordialement,
    bypbop

    -----

  2. #32
    vede's in a trip
    Invité

    Cool Re : MikroC et CDC USB

    Hi Bypbop ,

    c'est cool ;O]

    et tu arrives bien à compiler le projet?

    et oui, les fusibles ne créent pas de problème finalement (g testé)...

    tiens nous au jus et...
    bonn'journée ;O]

    vede
    ;O]

    ps : pour la sonde... j'avais utilisé la librairie "1Wire" de MikroE...
    et c'était avec un MAX233...pour une com. RS232...
    si mes souvenirs sont bons...
    n'hésites pas si question...

  3. #33
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede,
    Ptite question a quoi sert la resistance de 4.7k entre la borne vdd et la sortie de ta sonde de temperature sur ton montage avec le MAX233.

    Cordialement,
    bypbop

  4. #34
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    Bonjour vede,
    Ptite question a quoi sert la resistance de 4.7k entre la borne vdd et la sortie de ta sonde de temperature sur ton montage avec le MAX233.

    Cordialement,
    bypbop
    Bonsoir Bypbop,

    elle sert de "pull-up" de la ligne data...

    et c'est le schéma "type/de base" proposé
    dans la datasheet du DS18B20...

    vede
    ;O]

  5. #35
    bypbop

    Re : MikroC et CDC USB

    ok j'ajoute ca à mon montage et je te tiens au courant
    sinon j'ai rajouté un 3 connecteurs cnx avec un jumper qui permette d'alimenter le montage soit via l'alimentation secteur soit par l'alimentation usb ... pratique

    Cordialement,
    bypbop

  6. #36
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    ok j'ajoute ca à mon montage et je te tiens au courant
    sinon j'ai rajouté un 3 connecteurs cnx avec un jumper qui permette d'alimenter le montage soit via l'alimentation secteur soit par l'alimentation usb ... pratique

    Cordialement,
    bypbop
    ok, tiens nous au jus ;O]
    je vais le faire (remplacer le MAX233 par de l'USB pour la DS18B20)...
    mais là, je suis trop poccupé;O]
    pour me "jeter/lancer" dans l'USB ;O]

    et oui, c'est "bien pratique" le +5VDC de l'USB ;O]

    bonn'soirée,
    vede
    ;O]

  7. #37
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede

    quel version tu utilises de mikroC ... moi 3.2 et j'avais installé ca aussi MCHPFSUSB v2.2

    car j'ai toujours une erreur de main qui fait que ne veut pas compiler avec mon code ...


    0 1 mikroCPIC1618.exe -MSF -DBG -pP18F4550 -DL -O11101114 -fo48 -N"C:\Documents and Settings\Administrateur.SCULFO RT.000\Bureau\testusb\usb.mcpp i" -SP"C:\Program Files\Mikroelektronika\mikroC PRO for PIC\defs\" -SP"C:\Program Files\Mikroelektronika\mikroC PRO for PIC\uses\P18\" -SP"C:\Documents and Settings\Administrateur.SCULFO RT.000\Bureau\testusb\" "USBdsc.c" "__Lib_Math.mcl" "__Lib_MathDouble.mcl" "__Lib_System.mcl" "__Lib_Delays.mcl"
    0 1138 Available RAM: 2027 [bytes], Available ROM: 32768 [bytes]
    0 126 All files Preprocessed in 16 ms
    0 122 Compilation Started vars.h
    206 123 Compiled Successfully USBdsc.c
    0 127 All files Compiled in 125 ms
    0 357 main function is not defined main function is not defined
    0 102 Finished (with errors): 15 janv. 2010, 11:20:15 usb.mcppi
    Cordialement,
    bypbop

  8. #38
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Bonjour Bypbop,

    toujours la même erreur... ça me l'a fait hier soir...
    toujours pareils... tenter en bidouillant le code...
    (supprimer le main, compiler, le remettre, ...)

    et oui j'utilise MikroC Pro 3.2, comme toi...
    et j'ai aussi installé MCHPFSUSB...
    mais je m'en sers pas...
    encore...

    vede
    ;O]

  9. #39
    bypbop

    Re : MikroC et CDC USB

    ok j'ai compris chez moi ca ne veut pas passer qd je fais une copie du void main() en recopiant le code je comprends pas prk .. enfin bref ca compile sans aucune erreur mais tjrs aucune avec mon code ...

    je ne vois pas ou je fais une erreur .
    Est ce que je peux te faire un zip de mon projet ? je dois avoir une erreur mais ou ???

    Cordialement,
    bypbop

  10. #40
    bypbop

    Re : MikroC et CDC USB

    aucune detection dslé

  11. #41
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    aucune detection dslé
    re ;O]

    bon ben chez moi j'ai compilé ton projet tel quel...
    sans aucun probléme...

    je sais pas...
    essaie de le mettre dans un nouveau dossier...
    ou dé-installe et re-installe MikroC...

    franchement c'est trés bizarre ;O[

    vede
    ;O]

  12. #42
    bypbop

    Re : MikroC et CDC USB

    non vede mon projet se compile bien maintenant j'ai compris mon erreur avec le void main mais qd je charge mon hex je n'ai aucune detection au niveau de l'usb je voulais dire tandis qu'avec ton fichier .hex ca fonctionne sans probleme.

    Cordialement,
    bypbop

  13. #43
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    non vede mon projet se compile bien maintenant j'ai compris mon erreur avec le void main mais qd je charge mon hex je n'ai aucune detection au niveau de l'usb je voulais dire tandis qu'avec ton fichier .hex ca fonctionne sans probleme.

    Cordialement,
    bypbop
    re ;O]

    dans les fusibles, dans ton projet, je vois

    USB Voltage Regulator = Disabled

    moi je l'ai mis sur "Enabled" dans mon ".hex"...
    c'est peut-être ça?...

    vede
    ;O]

  14. #44
    bypbop

    Re : MikroC et CDC USB

    effectivement c bien ca encore merci vede.
    tout fonctionne correctement chez moi maintenant

    il y a une notion que j'ai compris à moitié avec le TRIS.
    j'ai compris que cette fonction sert à mettre les differents ports du pic en entrées et en sorties mais je ne comprends pas ce comment on obtient la valeur à mettre dedans.

    Par exemple si je veux mettre la port D6 en sortie je dois faire :

    TRISD = ....... comment avoir la valeur ?

    Cordialement,
    bypbop

  15. #45
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    effectivement c bien ca encore merci vede.
    tout fonctionne correctement chez moi maintenant

    il y a une notion que j'ai compris à moitié avec le TRIS.
    j'ai compris que cette fonction sert à mettre les differents ports du pic en entrées et en sorties mais je ne comprends pas ce comment on obtient la valeur à mettre dedans.

    Par exemple si je veux mettre la port D6 en sortie je dois faire :

    TRISD = ....... comment avoir la valeur ?

    Cordialement,
    bypbop
    re ;O]
    super ;O]

    moi pour initialiser les directions des ports j'ai tendance
    à utiliser la notation binaire, ou chaque bit correspond
    à un des numéro du port...

    exemple en MB, je sais pas comment on signifie qu'un nombre est codé en binaire en MC, en MB, on met % devant...ça donne ça :

    TRISD = %01000000
    //met D6 en entrée, tous les autres (D0 à D5, et D7) en sorties...

    sinon tu peux aussi convertir le binaire en décimal (grâce à la calculette
    de windows en mode scientifique par exemple),

    ça donne :

    TRISD = 64
    //met D6 en entrée, tous les autres (D0 à D5, et D7) en sorties...


    vede
    ;O]

  16. #46
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede,
    donc si je comprends bien par ex : si je veux d0 et d6 en entrées je dois faire :

    trisd = %01000001;
    si je veux affecter la valeur d'un port en entrée à une variable je dois faire :

    temp = portd.b6;

    cordialement;
    bypbop

  17. #47
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    Bonjour vede,
    donc si je comprends bien par ex : si je veux d0 et d6 en entrées je dois faire

    trisd = %01000001;

    si je veux affecter la valeur d'un port en entrée à une variable je dois faire :

    temp = portd.b6;

    cordialement;
    bypbop
    Bonsoir Bypbop,

    oui, c'est bien ça ;O]

    vede
    ;O]

  18. #48
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede,

    j'avance un petit peu aujourd'hui sur mon projet alors j'ai ajouté certaine chose au code de base premièrement j'allume la led sur le port b4 et j'envoie une autre variable par usb pour la temperature j'ai une valeur mais pas la bonne ... tu verras j'ai commenté pas mal de chose qui n'influence pas le montage ...

    ps : qd je decommente temperature=10; ca m envoie bien 10 dans hid terminal

    unsigned short m, k;
    char temperature;
    unsigned short userRD_buffer[1];
    unsigned short userWR_buffer[1];

    void interrupt() {
    asm CALL _Hid_InterruptProc
    asm nop
    }

    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;
    //TRISC = 0xFF;
    TRISD = 00100000;
    //TRISE = 0;

    //LATA = 0;
    //LATB = 0;
    //LATC = 0;
    //LATD = 0;
    //LATE = 0;
    }


    void main() {
    portd.b4=1;
    Init_Main();
    Hid_Enable(&userRD_buffer, &userWR_buffer);

    do {

    for (k = 0; k < 255; k++) {
    temperature = PORTD.B5;
    //temperature = 10;
    // Prepare send buffer
    userWR_buffer[0] = k;
    userWR_buffer[1] = temperature;
    // Send the number via USB
    while(!Hid_Write(&userWR_buffe r[1], 1));

    delay_ms(1000); // une ch'tite temporisation ;O]

    }
    }
    while (1);

    Hid_Disable();
    }
    En faisant ca j'obtiens 35 en boucle dans le hid terminal j espere avoir correctement calbé la sonde ...
    je mets en pièce jointe le cablage pour voir si c 'est correct . La sonde est en vue de face (ecriture en face).

    Cordialement,
    bypbop
    Images attachées Images attachées  

  19. #49
    invite7a49d0d5

    Cool

    Bonsoir Bypbop,

    en effet, ça fonctionnera jamais tel quel ;O]

    Le câblage est bon...

    C'est niveau logiciel... la temperature n'est
    pas directement lisible sur le port... elle utilise
    un protocole de communication (comme RS232,
    USB... mais qui s'appelle "One Wire")...

    dans mon projet, j'utilise la librairie fournie par
    MikroE pour gérer ce protocole... comme je fait
    d'ailleurs pour RS232, USB... pas IIC que j'ai émulé...

    il faut donc que tu te penches sur la doc
    (librairie One Wire de MikroC) et mon
    exemple de code avec la DS18B20...

    pour récupérer la température ;O]

    enfin je suis là...
    donc t'inquiétes...
    on va plier ça rapidement ;O]

    vede
    ;O]

    ps : la datasheet de la sonde est aussi trés interessante....
    tu vas voir comment certains se prennent la tête pour
    stocker une temperature ;O] ....

    re ;O]

    en effet, il faut que tu commences pas
    l'aide de MikroC sur la librairie One Wire
    (Help > Hard Libraries > One Wire)...
    ya un exemple (DS18x2x) et le schéma de base...

    delà tu regardes mon code :
    http://vede.free.fr/electronique/ds1...s232/ds232.rar
    (en MB, mais c'est kif kif...)

    et la datasheet :
    http://www.maxim-ic.com/quick_view2.cfm?qv_pk=2812

    et tu devrais avancer...
    n'hésites pas si question,
    vede
    ;O]

    ps : il faut utiliser les "fonctions" One_Wire_Reset(), One_Wire_Write()...etc...

    re ps : ce monologue est un complément d'informations...
    Dernière modification par gienas ; 22/01/2010 à 13h20. Motif: Fusion de deux réponses consécutives

  20. #50
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede,
    ahh ok je pensais qu'on avait directement la temperature
    ok je regarde ca et te tiens au courant ...

    Cordialement,
    bypbop

  21. #51
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    Bonjour vede,
    ahh ok je pensais qu'on avait directement la temperature
    ok je regarde ca et te tiens au courant ...

    Cordialement,
    bypbop
    Bonsoir Bypbop,

    bon je t'ai extrait la partie de code MB fonctionnelle
    pour communiquer avec une sonde DS18B20...

    et t'es allé voir mes 2 posts?

    http://forums.futura-sciences.com/el...ee-2010-a.html

    http://forums.futura-sciences.com/el...picoeoeoe.html

    Code:
    ' initialisation sonde
         ow_reset(PORTA, 4)                ' onewire reset
         ow_write(PORTA, 4, $CC)        ' command to DS1820
         ow_write(PORTA, 4, $4E)        ' demande envoi 3 bits de config. ($4E)
         ow_write(PORTA, 4, $65)        ' envoi TH
         ow_write(PORTA, 4, $81)        ' envoi TL
         ow_write(PORTA, 4, $0)          ' demande résolution t. sur 9 bits
         ow_reset(PORTA, 4)                ' onewire reset
         ow_write(PORTA, 4, $CC)        ' command to DS1820
         ow_write(PORTA, 4, $48)         ' copy scratchpad ($48)
    
    ' programme en boucle de lecture
    ' et d'affichage de la température
    while true
         ow_reset(PORTA, 4)                ' onewire reset
         ow_write(PORTA, 4, $CC)        ' command to DS1820
         ow_write(PORTA, 4, $44)        ' demande convertissage température ($44)
         delay_us(100)
         ow_reset(PORTA, 4)                ' onewire reset
         ow_write(PORTA, 4, $CC)        ' command to DS1820
         ow_write(PORTA, 4, $BE)        ' demande lecture température ($BE)
         oct1 = ow_read(PORTA, 4)       ' lit 1 er octet du scratchpad
         oct2 = ow_read(PORTA, 4)       ' lit 2 éme octet du scratchpad
    
     'décodage et affichage... TODO...
    wend
    aprés faut "décoder" les 2 octets oct1 et oct2,
    pour en "extraire" la température...

    je t'envois le code dans un prochain post...

    et n'hésites pas si question,
    vede
    ;O]

  22. #52
    bypbop

    Re : MikroC et CDC USB

    Re Vede, donc pour l'initialisation de la sonde qui pour moi est sur le port D 5 je dois faire ca ...

    ow_reset(PORTD.B5, 4) ' onewire reset
    ow_write(PORTD.B5, $CC) ' command to DS1820
    ow_write(PORTD.B5, $4E) ' demande envoi 3 bits de config. ($4E)
    ow_write(PORTD.B5, $65) ' envoi TH
    ow_write(PORTD.B5, $81) ' envoi TL
    ow_write(PORTD.B5, $0) ' demande résolution t. sur 9 bits
    ow_reset(PORTD.B5) ' onewire reset
    ow_write(PORTD.B5, $CC) ' command to DS1820
    ow_write(PORTD.B5, $48)
    Cordialement,
    bypbop

  23. #53
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    re ;O]

    non, plutôt comme ça (extrait de l'exemple de l'aide de MC)

    Code:
        Ow_Reset(&PORTD, 5);           // Onewire reset signal
        Ow_Write(&PORTD, 5, 0xCC);    // Issue command SKIP_ROM
        Ow_Write(&PORTD, 5, 0x44);   // Issue command CONVERT_
        ....
    cad :
    Ow_fonction( &PORT, PIN, COMMANDE);

    vede
    ;O]

  24. #54
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede,

    voila j'ai integré le code micro de l exemple avec la sonde c'est bon j'ai une valeur qui varie bien dès que je touche la sonde mais apparement il faut faire un calcul pour avoir la temperature et ca je ne comprends pas moi j'ai cette valeur

    122, 133, 144 ...
    a quoi correspond cette valeur ?

    Ow_Reset(&PORTD, 5);
    Ow_Write(&PORTD, 5, 0xCC);
    Ow_Write(&PORTD, 5, 0x44);
    Delay_us(120);

    Ow_Reset(&PORTD, 5);
    Ow_Write(&PORTD, 5, 0xCC);
    Ow_Write(&PORTD, 5, 0xBE);

    temperature = Ow_Read(&PORTD, 5);
    temperature = (Ow_Read(&PORTD, 5) << 8) + temperature;
    Cordialement,
    bypbop
    Dernière modification par bypbop ; 20/01/2010 à 10h23.

  25. #55
    bypbop

    Re : MikroC et CDC USB

    Re vede,

    J'avais acheter cette photo resistance dans le but de l'ajouter sur mon montage maintenant que la sonde fonctionne a peu près je vais l'ajouter

    photo resistance : http://fr.farnell.com/jsp/search/pro...sp?SKU=1652638

    je n'ai pas sous la main de resistance variable de toute facon je veux juste recuperer la valeur de la photoresistance sur mon pic.

    comment puis je faire ?

    Cordialement,
    bypbop

  26. #56
    invite7a49d0d5

    Cool

    Bonjour Bypbop,

    pour la sonde je t'envoie un code plus tard (avant ce soir)...

    pour récupérer la valeur de la LDR (photo-résistance),
    il faut la connecter à une entrée analogique du PIC, au
    travers d'un pont de résistance, et tu auras une tension
    lue +/- proportionnelle à la luminosité...

    exemple :

    .........entrée analogique
    ...................||
    ...................||
    +5v -- LDR -- || -- R10K -- Ov

    et là tu auras une tension sur l'entrée proportionnelle à
    la résistance de la LDR, cad à la luminosité ambiante...

    vede
    ;O]

    ps : le code pour la sonde, qui fonctionne de 0 à 125°C

    Code:
        
         (...)
          oct1 = Ow_Read(&PORTD, 5);
          oct2 = Ow_Read(&PORTD, 5);
          oct1 = oct1 >> 4
          oct2 = oct2 << 4
          temperature = oct1 + oct2
    v ;O]

    re ps :

    et pour la LDR, un exemple d'utilisation d'une entrée analogique avec un 16F88 :
    http://vede.free.fr/electronique/16f88/can/

    et de la doc sur l'utilisation et la configuration de l'ADC sur un 16F88 :
    http://pagesperso-orange.fr/fabrice..../ADC_16F88.htm

    et tu trouveras dans l'aide de MikroC, dans les librairies,
    un exemple d'utilisation de ADC_Read()...

    v;O]
    Dernière modification par gienas ; 22/01/2010 à 13h22. Motif: Fusion de trois réponses consécutives

  27. #57
    bypbop

    Re : MikroC et CDC USB

    Re vede encore merci pour tes precieux conseils
    pour l'exemple je comprends mieux

    donc de + 5v à la photoresistance
    de la photoresistance à une resistance de 10ko et à la masse

    entre la photoresistance je vais à une entrée de mon pic 18f4550 marqué

    AN je suppose ... AN0 ou AN1 par exemple

    Cordialement,
    bypbop

  28. #58
    invite7a49d0d5

    Cool Re : MikroC et CDC USB

    Citation Envoyé par bypbop Voir le message
    Re vede encore merci pour tes precieux conseils
    pour l'exemple je comprends mieux

    donc de + 5v à la photoresistance
    de la photoresistance à une resistance de 10ko et à la masse

    entre la photoresistance je vais à une entrée de mon pic 18f4550 marqué

    AN je suppose ... AN0 ou AN1 par exemple

    Cordialement,
    bypbop
    re ;O]

    oui c'est ça ...
    entre la résistance et la LDR tu "vas" à l'entrée ADC...

    en fait je vais te donner petit un exemple :

    -mesurer avec un multimètre la résistance de la LDR
    dans la lumière ambiante d'utilisation prévue...

    -prendre une R fixe avec une valeur la plus proche de la R-LDR...

    -delà en câblant ça sur le principe d'un pont diviseur
    de tension à 2 résistance, tu trouveras :

    -environ 2,5Volts sur l'entrée AN en lumière ambiante
    (vu que c'est un ADC 10 bits, une valeur d'environ 512)

    -plus la luminosité augmentera, plus la tension augmentera...
    (entre 2,5 et 5V... soit entre 512 et 1024, niveau résultat ADC)

    -plus la luminosité diminuera, plus la tension diminuera...
    (entre 2,5 et 0V... soit entre 512 et 0, niveau résultat ADC)

    (ou inversement selon "la place" de la LDR...rapport à la Masse...)...

    vede
    ;O]

    ps : pour les calculs, adaptations, étalonnage,
    il faut voir le bloc (R fixe + R-LDR) comme une
    R fixe placée en série avec un potard...
    cad un diviseur de tension... plus une résistance fixe "talon"...

    re-ps : et avant il faut initialiser l'ADC...
    et sélectionner le port ADC à utiliser...

    re-re-ps : la "courbe" d'une LDR est rarement linéaire...

  29. #59
    bypbop

    Re : MikroC et CDC USB

    Bonjour vede,

    Pour la temperature ca fonctionne nikel par contre pour l'intensité lumineuse c'est autre chose . Pour le cablage j'ai bien une variation sur la sortie qui va au pic en fonction de la luminosité donc le cablage est bon.

    pour le code j'ai fait ca :


    unsigned short m, k, temperature, oct1, oct2, lumiere;
    unsigned short userRD_buffer[1];
    unsigned short userWR_buffer[1];

    void interrupt() {
    asm CALL _Hid_InterruptProc
    asm nop
    }

    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 = 000001;
    TRISB = 0;
    TRISC = 0xFF;
    TRISD = 00100000;
    TRISE = 0;

    //LATA = 0;
    //LATB = 0;
    //LATC = 0;
    //LATD = 0;
    //LATE = 0;
    }


    void main() {
    Init_Main();
    portd.b4=1;


    Hid_Enable(&userRD_buffer, &userWR_buffer);

    do {



    for (k = 0; k < 255; k++) {

    Ow_Reset(&PORTD, 5);
    Ow_Write(&PORTD, 5, 0xCC);
    Ow_Write(&PORTD, 5, 0x44);
    Delay_us(120);

    Ow_Reset(&PORTD, 5);
    Ow_Write(&PORTD, 5, 0xCC);
    Ow_Write(&PORTD, 5, 0xBE);

    oct1 = Ow_Read(&PORTD, 5);
    oct2 = Ow_Read(&PORTD, 5);
    oct1 = oct1 >> 4 ;
    oct2 = oct2 << 4 ;
    temperature = oct1 + oct2 ;


    lumiere = PORTA.B0;

    // Prepare send buffer
    userWR_buffer[0] = k;
    userWR_buffer[1] = temperature;
    userWR_buffer[2] = lumiere;


    // Send the number via USB
    while(!Hid_Write(&userWR_buffe r[1], 1));

    delay_ms(1000); // une ch'tite temporisation ;O]

    }
    }
    while (1);

    Hid_Disable();
    }
    j'utilise la borne 2 de mon pic RA0

    sinon pour la temperature ca marche d'enfer

    while(!Hid_Write(&userWR_buffe r[1], 1));

    delay_ms(1000); // une ch'tite temporisation ;O]

    }
    petite question A quoi correspond ce 1 ??

    Comment puis je faire pour envoyer plusieurs valeur en mm tps ??

    Hid_Write(&userWR_buffer[1], 1);
    Hid_Write(&userWR_buffer[2], 1);
    Hid_Write(&userWR_buffer[3], 1);



    Cordialement

  30. #60
    invite7a49d0d5

    Cool

    Bonsoir Bypbop,

    cool ;O] pour la température ;O]

    bon sinon, ça ça fonctionnera pas :

    lumiere = PORTA.B0

    pas directement, c'est "un peu" comme la sonde...

    il faut commencer par initialiser le convertisseur,
    puis sélectionner le canal, puis lancer une conversion,
    puis attendre la fin, puis attendre un peu (100µs)
    avant d'en re-lancer une (de conversion...)...

    sinon, ce cours
    http://pagesperso-orange.fr/fabrice..../ADC_16F88.htm
    malgrés que ce soit pour un 16F88,
    donne une trés bonne explication du fonctionnement
    général de l'ADC des PICs, quel que soit le type de PIC (16F, 18F)...

    c'est "toujours" via les registres :
    -ADCON et/ou
    -ADCON0 et/ou
    -ADCON1 et/ou
    -ANSEL et/ou

    puis la valeur (10 bits) dans
    -ADRESL
    -ADRESH

    et aussi des infos dans l'aide de MikroC (Help > Librairies > ADC)
    (si tu utilises cette librairie même plus besoin de t'emmer..r avec
    les registres concérnés ;O])

    ça fait longtemps que j'ai pas utilisé l'ADC du 4550...
    mais je vais regarder, te tiens au jus d'ici demain soir...

    sinon après, je sais pas exactement, pour le buffer USB...
    ni pour envoyer des variables "en même temps"...
    faudrait aller voir sur le Forum MikroE...

    vede
    ;O]

    re ;O]

    au niveau du code:

    c'est par là qu'il va falloir dé-commenter/ajouter des lignes
    pour pouvoir utiliser le convertisseur :

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

    et là ça va pas,

    // Ports Configuration
    TRISA = 000001;
    TRISB = 0;
    TRISC = 0xFF;
    TRISD = 00100000;
    TRISE = 0;

    pour A et D, il faut mettre

    TRISA = 0b00000001;
    TRISD = 0b00100000;

    cad un "0b" devant, pour signifier au compilo que c'est en notation binaire...

    car sinon A et D = 00000001...

    vede
    ;O]
    Dernière modification par gienas ; 22/01/2010 à 13h25. Motif: Fusion de deux réponses voisines inutilement rapprochées

Page 2 sur 3 PremièrePremière 2 DernièreDernière

Discussions similaires

  1. Problème de communication USB (cdc) sur PIC
    Par carcan dans le forum Électronique
    Réponses: 24
    Dernier message: 25/03/2010, 11h00
  2. Pic18f2550 + USB CDC + AN0
    Par invite6706d147 dans le forum Électronique
    Réponses: 4
    Dernier message: 10/06/2009, 08h46
  3. mikroC
    Par invite8aac61ad dans le forum Électronique
    Réponses: 6
    Dernier message: 09/03/2009, 22h13
  4. [Brun] avarie platine 5 CD Philips CDC 751
    Par invitee35e4d49 dans le forum Dépannage
    Réponses: 6
    Dernier message: 12/10/2008, 10h46
  5. [Divers] Chageur cd blaupunkt CDC-A08
    Par jeanclaude83 dans le forum Dépannage
    Réponses: 0
    Dernier message: 29/04/2008, 14h08
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...