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

problème de programmation mikroc 18f2431



  1. #1
    fullmoon

    Post problème de programmation mikroc 18f2431


    ------

    bonjour,

    actuellement en terminale sti génie electronique, j'ai un thème du bac à realiser. Le problème c'est que mon programme se compile mais il y a des erreurs qui sont les suivantes:
    L 134: argument is out of range
    L 134: error fatal
    L134: ";" expected but ) found

    voici mon programme

    la ligne 134 est celle qui est en rouge.

    Je vous prie de bien vouloir m'aider à trouver une solution à ce problème.
    cordialement



    // DECLARATION DES BIBLIOTHEQUES



    #include "LCD_I2C_valence.h" // bibliothèque perso : gestion de l'afficheur LCD I2C Batron
    #include "Fonctions_diverses_seq4.h " // biblio perso : divers

    ////////////////////// DECLARATION DES EQUIVALENCES ///////////////////////////////////

    #define LED_R PORTBbits.RB5 // LED Rouge sur RB5
    #define LED_V PORTBbits.RB2 // LED Verte sur RB2
    #define BP_MENU PORTCbits.RC4 // BP_MENU sur RC4/INT1
    #define BP_MOINS PORTCbits.RC1 // BP_MOINS sur RC1
    #define BP_PLUS PORTCbits.RC2 // BP_PLUS sur RC2
    #define BP_ENTER PORTCbits.RC3 // BP_ENTER sur RC3/INT0
    #define COLOR 1 // POT "COLOR" sur canal analogique 1 (AN1)
    #define DIM 2 // POT "DIM" sur canal analogique 2 (AN2)
    #define RX_DMX PORTCbits.RC7 // RX_DMX : entrée de réception DMX sur RC7
    #define Adr_MOTEURS 0x42 // Adresse I2C carte Moteurs sur 8 bits (avec R/W =0)
    #define Adr_LCD 0x76 // Adresse I2C de l'afficheur LCD BARTON (avec R/W =0)
    #define MANU 0 // Le mode MANUEL est associé à 0
    #define AUTO 1 // Le mode AUTOMATIQUE est associé à 1
    #define DMX5CH 2 // Le mode DMX 5 CANAUX est associé à 2
    #define LENTE 25 // Nb de tempo de 100 ms à faire en MODE AUTO et vitesse lente
    #define VITESSE_DMX 16 // Nb de tempo de 100 ms à effectuer en MODE DMX
    #define RAPIDE 13 // Nb de tempo de 100 ms à faire en MODE AUTO et vitesse rapide
    #define ENFONCE 0 // Un Bouton Poussoir enfoncé place l'entrée du pic à 0
    #define RELACHE 1 // Un Bouton Poussoir relaché place l'entrée du pic à 1

    //////////////////////// DECLARATION DES VARIABLES ////////////////////////////////////

    /////////// variables utilisées à partir de la séquence 4 //////////////
    unsigned char Dose_R, Dose_V, Dose_B ; // Doses entre 0 et 255 de Rouge, de Vert et de Bleu
    unsigned char COULEUR_MACROS; // Canal correspondant au choix de la couleur
    unsigned int Alpha_R, Alpha_V, Alpha_B ; // rapports cycliques des sorties Rouge, Vert et Bleu
    unsigned int Toff; // durée d'extinction en mode stroboscope
    unsigned int Intensite =0; // Intensité de l'éclairage
    unsigned int DIMMER_STROBE; // Canal correspondant au choix du mode d'éclairage

    /////////// variables utilisées à partir de la séquence 5 ////////////////////////////
    unsigned char Mode_lyre=AUTO ; // forçage de la variable Mode_Lyre à la valeur Auto
    unsigned char Vitesse_auto; // Valeur de la vitesse en mode auto (LENTE ou RAPIDE)
    unsigned char PAN, TILT; // Valeur du PAN et du TILT à transmettre à la carte GESTION MOTEUR
    unsigned char DMX_adresse; // Adresse DMX de base de la lyre
    unsigned char v;
    unsigned char chaine_DMX[4]; // chaine des caractères ascii composant l'adresse DMX (pour affichage)
    unsigned char Config =0; // nouvelle configuration de la lyre
    unsigned char Config_ex =255; // ancienne configuration de la lyre
    unsigned char BP_PLUS_ex =1; // mémorisation de l'état du bouton poussoir BP_PLUS
    unsigned char BP_MOINS_ex =1; // mémorisation de l'état du bouton poussoir BP_MOINS
    unsigned char BP_MENU_actif =0; // variable indiquant l'appui sur BP_MENU
    unsigned char BP_ENTER_actif =0; // variable indiquant l'appui sur BP_ENTER

    //////////// variables utilisées à partir de la séquence 7 (DMX) /////////////////////////////
    unsigned int t =0;
    unsigned int th =0;
    unsigned char trame =0;
    unsigned char i =0;
    unsigned char j=0;
    unsigned char OCTET_RECU;
    unsigned char canaux_DMX[4]; // chaine des caractères ascii composant l'adresse DMX (pour affichage)

    //////////// variable utilisée pour la séquence 8
    unsigned char ctr =0;


    //////////////////////// DECLARATION DES FONCTIONS ////////////////////////////////////////
    FONCTIONS DE GESTION DE L'ECLAIRAGE ///////////////////////////////////////
    //////////////////// UTILISEES A PARTIR DE LA SEQUENCE 4

    // Cette fonction détermine les valeurs de Dose_R, Dose_V et Dose_B selon
    // la valeur du canal COULEUR_MACROS ("Macro de couleur")
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // SEQUENCE 4 : A COMPLETER PAR LES ELEVES

    void COULEURMACRO(void)
    {

    }

    // Cette fonction détermine la valeur de chaque rapport cyclique sur 14 bits puis
    // permet d'affecter les 6 registres de rapport cycliques du module PWM du pic
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // SEQUENCE 4 : A COMMENTER PAR LES ELEVES

    void Ecriture_PWM(void)
    {
    Alpha_R = Dose_R * Intensite;
    Alpha_R=Alpha_R>>2;
    Alpha_V = Dose_V * Intensite;
    Alpha_V=Alpha_V>>2;
    Alpha_B = Dose_B * Intensite;
    Alpha_B=Alpha_B>>2;

    PDC0L=Alpha_R;
    PDC0H=Alpha_R >>8;
    PDC1L=Alpha_V;
    PDC1H=Alpha_V >>8;
    PDC2L=Alpha_B;
    PDC2H=Alpha_B >>8;
    }

    // Cette fonction détermine la valeur de l' Intensite et le réglage du stroboscope
    // selon la valeur du canal DIMMER_STROBE
    // DIMMER_STROBE sera déterminé dans main() en fonction du mode de fonctionnement
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // SEQUENCE 4 : A COMPLETER PAR LES ELEVES

    void DIMMERSTROBE(void)
    {

    }

    // Cette fonction envoie le PAN, le TILT et la VITESSE en I2C à la carte "gestion moteurs pas à pas"
    // d'adresse Adr_MOTEURS
    // 3 paramètres d'entrées : p pour le PAN, t pour le TILT et v pour la vitesse
    // pas de paramètre de sortie
    // SEQUENCE 5 : A COMPLETER PAR LES ELEVES

    void I2C_PAN_TILT_VITESSE(unsigned char p,unsigned char t, unsigned char v)
    {
    Soft_I2C_Config(&PORTC,15,16); // Instruction de MikroC
    Soft_I2C_Start();
    Soft_I2C_Write(Adr_LCD);
    Soft_I2C_Write(p);
    Soft_I2C_Write(t);
    Soft_I2C_Write(v);

    }

    // Cette fonction permet l'affichage du mode de fonctionnement : MANU, AUTO ou DMX
    // Cette fonction ne doit être appellée que si la configuration (Config) vient de changer (géré dans main())
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // SEQUENCE 5 : A COMPLETER PAR LES ELEVES

    void affichage_mode(void) //fonction affichage_mode
    {
    if (Mode_lyre == Manu)
    {
    lcd_i2c_init( );
    lcd_i2c_clear( );
    lcd_i2c_puts("MODE MANUEL"); //affichage sur la première ligne
    lcd_i2c_gotoxy(0,1); // aller à la seconde ligne1
    lcd_i2c_puts("REGLAGE PAR POTs"); // affichage sur la seconde ligne
    }
    if (Mode_lyre == Auto)
    {
    lcd_i2c_init( );
    lcd_i2c_clear( );
    lcd_i2c_puts("MODE AUTOMAT"); //affichage sur la première ligne
    lcd_i2c_gotoxy(0,1); // aller à la seconde ligne1
    lcd_i2c_puts("IQUE"); // affichage sur la seconde ligne
    if (Vitesse_auto == LENTE)
    {
    lcd_i2c_init( );
    lcd_i2c_clear( );
    lcd_i2c_puts ("VITESSE LENTE");
    }
    if (Vitesse_auto == RAPIDE)
    {
    lcd_i2c_init( );
    lcd_i2c_clear( );
    lcd_i2c_puts ("VITESSE RAPIDE");
    }
    }
    if (Mode_lyre == DMX5CH)
    {
    lcd_i2c_init( );
    lcd_i2c_clear( );
    lcd_i2c_puts ("VITESSE RAPIDE");// affichage sur la première ligne
    lcd_i2c_gotoxy(0,1);// aller sur la deuxième ligne
    lcd_i2c_puts ("5CH ADR=");// affichage sur la deuxième ligne
    lcd_i2c_gotoxy(12,1);
    ByteToStr(DMX_adresse,&chaine_ DMX);// curseur en 13ème (0 à 12) position de la ligne1 (la 2nde)
    //la stocke dans chaine_DMX[]
    lcd_i2c_puts_ram (chaine_DMX); // // affichage de l'adresse DMX en fin de 2nde ligne
    }
    }

    // Cette fonction détermine la valeur des canaux PAN, TILT, DIMMER_STROBE et COULEUR_MACROS reçus par DMX
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // Fonctionne , y compris en changeant d'adresse : Bug parfois en mode stroboscope
    // SEQUENCE 7 : Cette fonction est fournie aux élèves

    void DMX_LYRE(void)
    {
    while (RX_DMX==1) // test si DMX=1 (entre 2 trames)
    {
    th=th+1;
    Delay100TCYx(5); // attente de 100 µs
    if (th > 500) // résout le bloquage du programme lorsqu'on débranche le
    { // cable DMX : entrée reste à l'état haut
    break;
    }
    }
    if (th>10) // test si plus de 1 ms d'état haut
    {
    if (th<250) // test si moins de 25 ms d'état haut
    {
    while (RX_DMX==0) // test si DMX=0 pendant >88 us (Synchro Trame DMX)
    {
    t=t+1;
    }
    if (t>18) // test si synchro-trame 80us alors trame= 1 (t=18 pour 20MHz)
    {
    if (t<100) // 100 pour 20MHz
    {
    trame=1; // début de trame DMX detecté
    RCSTAbits.CREN=0;
    RCSTAbits.CREN=1; // re-initialisation de l'usart
    }
    }
    t=0; // remise à 0 du compteur de durée d'état bas
    while (trame==1) // tant que l'on travaille sur la même trame
    {
    if (USART_Data_Ready()) // si octet série reçu
    {
    if (USART_READ()==0) // TEST si Synchro et 1er octet à 0.(startcode)
    {
    i=i+1;
    }
    }
    if (i==1) // si Séquence d'initialisation détectée
    {
    j=1; // adresse à 1
    while (j<(DMX_adresse+1)) // lecture jusqu'à la bonne adresse.
    {
    if (USART_Data_Ready()) // si octet série reçu
    {
    i =USART_READ(); // lecture canal
    j=j+1; // incrémentation d'adresse
    }
    }
    LED_R=!LED_R; // LED rouge clignote à chaque réception des 4 octets
    PAN=i; // canal DMX correspondant à l'adresse mis dans donnée.
    while (!USART_Data_Ready()); // si octet série reçu
    TILT =USART_READ(); // lecture canal
    while (!USART_Data_Ready()); // si octet série reçu
    DIMMER_STROBE =USART_READ(); // lecture canal
    while (!USART_Data_Ready()); // si octet série reçu
    COULEUR_MACROS =USART_READ(); // Pour projecteurlecture canal
    trame=0; // fin de réception des 4 canaux DMX
    RCSTAbits.CREN=0; // USART désactivé car inutile jusqu'à la prochaine trame
    // delay_ms(2); // Pour éviter d'analyser la même trame : attente de 2 ms
    } // fin de if (i==1)
    } //fin de while (trame==1)
    i=0;
    }
    }
    th=0; // remise à 0 du compteur d'état haut
    } // fin de la fonction DMX_F

    // Non indispensable : pour debug ou bonus (fournie aux élèves)
    // Cette fonction affiche la valeur en décimal (en nombres signés hélas) des canaux DMX
    // sur la deuxième ligne de l'afficheur LCD
    void affichage_canaux(void)
    {
    lcd_i2c_gotoxy(0,1); //curseur 2ème ligne, 1er caractere
    btoa(PAN, &canaux_DMX); // calcule la chaine des caractères ascii de DMX_adresse et la stocke dans chaine_DMX[]
    lcd_i2c_puts_ram (canaux_DMX); // affichage de l'adresse DMX en fin de 2nde ligne
    lcd_i2c_putchar (' ');
    btoa(TILT, &canaux_DMX); // calcule la chaine des caractères ascii de DMX_adresse et la stocke dans chaine_DMX[]
    lcd_i2c_puts_ram (canaux_DMX); // affichage de l'adresse DMX en fin de 2nde ligne
    lcd_i2c_putchar (' ');
    btoa(DIMMER_STROBE, &canaux_DMX); // calcule la chaine des caractères ascii de DMX_adresse et la stocke dans chaine_DMX[]
    lcd_i2c_puts_ram (canaux_DMX); // affichage de l'adresse DMX en fin de 2nde ligne
    lcd_i2c_putchar (' ');
    btoa(COULEUR_MACROS, &canaux_DMX); // calcule la chaine des caractères ascii de DMX_adresse et la stocke dans chaine_DMX[]
    lcd_i2c_puts_ram (canaux_DMX); // affichage de l'adresse DMX en fin de 2nde ligne
    lcd_i2c_putchar (' ');
    }

    // Cette fonction gère les réglages liés à l'appui sur BP_ENTER :
    // en mode AUTO : choix de la vitesse LENTE ou RAPIDE par BP_MOINS et BP_PLUS
    // en mode DMX : réglage de l'adresse de base par BP_MOINS et BP_PLUS
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // SEQUENCE 8 : A COMPLETER PAR LES ELEVES
    void Reglage_BPs(void)
    {

    }

    //// Cette fonction permet de retrouver à la mise sous tension la lyre dans la configuration précedant
    // la mise hors tension. Les paramètres Mode_lyre, Vitesse_auto et DMX_adresse sont lus en EEPROM
    // pas de paramètre d'entrée, pas de paramètre de sortie
    // SEQUENCE 8 : A COMPLETER PAR LES ELEVES
    void lire_config_EEPROM(void)
    {

    }

    // FONCTIONS DE GESTION DES INTERRUPTIONS

    // CONFIGURATION DU DECLENCHEMENT DES INTERRUPTIONS
    // Cette fonction est fournie aux élèves.
    void init_interrupt(void)
    {
    INTCON= 0b11010000; // pour debug : INTCON.1 passe à 1 même sans activer les interruptions
    INTCON2=0b10000100;
    INTCON3=0b11001000;
    }

    // FONCTION (SOUS-PROGRAMME) D'INTERRUPTION
    // Cette fonction est fournie aux élèves
    void MyInterrupt(void); // fonction contenant le code de l'interruption
    #pragma code highVector=0x008 // on déclare que lors d'une interruption
    void atInterrupthigh(void)
    {
    _asm GOTO MyInterrupt _endasm // on doit éxecuter le code de la fonction MyHighInterrupt
    }
    #pragma code // retour à la zone de code
    #pragma interrupt MyInterrupt
    void MyInterrupt(void)
    {
    // delay_ms(20); // anti-rebond
    INTCONbits.GIE=0; // on inhibe toutes les interruptions
    if (INTCON3bits.INT1IF==1) // si l'interruption est provoquée par l'appui sur BPmenu
    {
    BP_MENU_actif=1; // variable à 1 : mémorisation de la demande de changement de mode
    INTCON3bits.INT1IF =0; // remise à 0 du drapeau d'interruption
    }

    if(INTCONbits.INT0IF==1) // si l'interruption est provoquée par l'appui sur BPenter
    {
    BP_ENTER_actif=1; // mémorisation de la demande de changement de configuration
    INTCONbits.INT0IF=0; // remise à 0 du drapeau d'interruption
    }
    INTCONbits.GIE=1; // on autorise à nouveau les interruptions
    Config=Config+1; // Cette variable, qui change à chaque interruption,
    } // servira à raffraichir l'affichage du mode

    /////////////////////////// FONCTION PRINCIPALE MAIN

    void main( void )
    {
    if (Mode_lyre==AUTO)
    {
    DIMMER_STROBE= 255;
    COULEUR_MACROS= rand();
    TILT = rand();
    PAN = rand();

    }
    I2C_PAN_TILT_VITESSE (PAN, TILT,Vitesse_Auto) ;
    }

    -----

  2. #2
    fullmoon

    Re : problème de programmation mikroc 18f2431

    voici la suite:

    // intialisation des entrées-sorties
    TRISA=0xFF; // PORTA en entrée
    TRISB=0b11000001; // PORTB en sortie sauf broches inutilisées (RB6 et RB7)et RB0 en entrée
    TRISC=0b10111111; // Tout en entrées sauf TX

    // initialisation des interruptions et des périphériques
    init_interrupt(); // configuration du déclenchement des interrutpions
    init_CAN(); // Initialisation du module de Conversion Analogique Numérique
    init_USART(); // Initialisation du module de liaison série
    init_PWM(); // Initialisation du triple module PWM

    // allumage des leds
    LED_V=1; // LED verte allumee pendant la phase d'initialisation
    LED_R=1; // LED rouge allumee pendant la phase d'initialisation

    /// LA MISE EN COMMENTAIRES DE LA PARTIE CI-DESSOUS EST A ENLEVER A PARTIR
    // DE LA SEQUENCE 5
    // Affichage des messages d'accueils

    lcd_i2c_init(); // initialisation du lcd et de l'i2c
    lcd_i2c_clear(); // effacer le contenu du lcd

    lcd_i2c_puts("algoud");// affichage sur l'i2c
    lcd_i2c_gotoxy(0,1); // aller à ligne horizontale o(x) sur la ligne verticale 1 (y)
    lcd_i2c_puts(" LYRE A LED "); // affichage
    delay_ms(2000); // temps de repos 2000ms
    lcd_i2c_gotoxy(0,1); // aller à ligne horizontale o(x) sur la ligne verticale 1 (y)
    lcd_i2c_puts(" INITIALISATION "); // // affichage sur l'i2c
    delay_ms(2000); // temps de repos 2000ms
    lcd_i2c_clear(); // effacer le contenu du lcd
    delay_ms(1000); // temps de repos 1000ms

    /////// FIN DE LA PARTIE EN COMMENTAIRE POUR LA SEQUENCE 4

    // initialisation des variables pour le mode de fonctionnement
    // on fixe le mode de fonctionnement initial suivant :
    Mode_lyre=MANU;
    Vitesse_auto=LENTE;
    DMX_adresse=1;

    // SEQUENCE 8 : Insérer ici l'appel à la fonction de lecture en EEPROM de la configuration


    // extinction des leds
    LED_V=0; // LED verte eteinte
    LED_R=0; // LED rouge eteinte

    while(1) // boucle infinie
    {
    ///////// A REDIGER PAR LES ELEVES EN SEQUENCE 5 ////////////////////////////////////////////////////
    // INCREMENTATION DU MODE EN CAS D'APPUI SUR BP_MENU ////////////////////////////////////////////////
    // BP_MENU_actif A ETE MIS A 1 PAR LE PROGRAMME D'INTERRUPTION SI LE BOUTON BP_MENU A ETE PRESSE
    // AU COURS DU CYCLE PRECEDENT

    }
    }

  3. #3
    fullmoon

    Re : problème de programmation mikroc 18f2431

    voici la suite:

    // intialisation des entrées-sorties
    TRISA=0xFF; // PORTA en entrée
    TRISB=0b11000001; // PORTB en sortie sauf broches inutilisées (RB6 et RB7)et RB0 en entrée
    TRISC=0b10111111; // Tout en entrées sauf TX

    // initialisation des interruptions et des périphériques
    init_interrupt(); // configuration du déclenchement des interrutpions
    init_CAN(); // Initialisation du module de Conversion Analogique Numérique
    init_USART(); // Initialisation du module de liaison série
    init_PWM(); // Initialisation du triple module PWM

    // allumage des leds
    LED_V=1; // LED verte allumee pendant la phase d'initialisation
    LED_R=1; // LED rouge allumee pendant la phase d'initialisation

    /// LA MISE EN COMMENTAIRES DE LA PARTIE CI-DESSOUS EST A ENLEVER A PARTIR
    // DE LA SEQUENCE 5
    // Affichage des messages d'accueils

    lcd_i2c_init(); // initialisation du lcd et de l'i2c
    lcd_i2c_clear(); // effacer le contenu du lcd

    lcd_i2c_puts("algoud");// affichage sur l'i2c
    lcd_i2c_gotoxy(0,1); // aller à ligne horizontale o(x) sur la ligne verticale 1 (y)
    lcd_i2c_puts(" LYRE A LED "); // affichage
    delay_ms(2000); // temps de repos 2000ms
    lcd_i2c_gotoxy(0,1); // aller à ligne horizontale o(x) sur la ligne verticale 1 (y)
    lcd_i2c_puts(" INITIALISATION "); // // affichage sur l'i2c
    delay_ms(2000); // temps de repos 2000ms
    lcd_i2c_clear(); // effacer le contenu du lcd
    delay_ms(1000); // temps de repos 1000ms

    /////// FIN DE LA PARTIE EN COMMENTAIRE POUR LA SEQUENCE 4

    // initialisation des variables pour le mode de fonctionnement
    // on fixe le mode de fonctionnement initial suivant :
    Mode_lyre=MANU;
    Vitesse_auto=LENTE;
    DMX_adresse=1;

    // SEQUENCE 8 : Insérer ici l'appel à la fonction de lecture en EEPROM de la configuration


    // extinction des leds
    LED_V=0; // LED verte eteinte
    LED_R=0; // LED rouge eteinte

    while(1) // boucle infinie
    {
    ///////// A REDIGER PAR LES ELEVES EN SEQUENCE 5 ////////////////////////////////////////////////////
    // INCREMENTATION DU MODE EN CAS D'APPUI SUR BP_MENU ////////////////////////////////////////////////
    // BP_MENU_actif A ETE MIS A 1 PAR LE PROGRAMME D'INTERRUPTION SI LE BOUTON BP_MENU A ETE PRESSE
    // AU COURS DU CYCLE PRECEDENT

  4. #4
    X50degress

    Arrow Re : problème de programmation mikroc 18f2431

    Salut.
    Tu ne places jamais d’acquittement dans tes lignes de programmes?
    je fais le même que toi mais pas avec le même matos' alors voila ma fonction et essaie de voir si tu peux résoudre ton problème avec: (moi ça fonctionne)
    Puis si c'est trop tard, désolé..

    void I2C_PAN_TILT_VITESSE(unsigned char p,unsigned char t, unsigned char v)
    {
    PORTBbits.RB5=0;
    SWStartI2C();
    Clock_test();
    SWWriteI2C(Adr_MOTEURS);
    SWAckI2C();
    SWWriteI2C(p);
    SWAckI2C();
    SWWriteI2C(t);
    SWAckI2C();
    SWWriteI2C(v);
    SWAckI2C();
    SWStopI2C();
    PORTBbits.RB5=1;

    }

  5. A voir en vidéo sur Futura

Discussions similaires

  1. Programmation MIKROC
    Par IHCAAMEL dans le forum Électronique
    Réponses: 17
    Dernier message: 06/05/2011, 11h54
  2. programmation du pic 16F84A avec mikroc
    Par azizinovitch dans le forum Électronique
    Réponses: 3
    Dernier message: 14/03/2010, 17h05
  3. Programmation PIC 16F84A avec MIKROC:AIDE SVP
    Par hissokaaaa dans le forum Électronique
    Réponses: 8
    Dernier message: 09/10/2009, 19h08
  4. programmation des PICs avec mikroc
    Par sam192 dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 27/05/2009, 08h53
  5. Programmation MikroC pour fabrication d'un banc d'essai
    Par yannickr26 dans le forum Électronique
    Réponses: 0
    Dernier message: 14/04/2008, 16h12
Découvrez nos comparatifs produits sur l'informatique et les technologies.