Problème i2c PIC18F4550
Répondre à la discussion
Affichage des résultats 1 à 1 sur 1

Problème i2c PIC18F4550



  1. #1
    invitec7e0ab97

    Exclamation Problème i2c PIC18F4550


    ------

    Salut à tous !

    Pour mon projet BTS, je dois, via un PIC18F4550, contrôler une EEPROM 24C16B via une liaison I2C ...

    Mais je n'ai jamais utiliser cette liaison et je patauge un peu. Pour l'instant, j'aimerais déjà pouvoir écrire une donnée sur la mémoire ( 24C16B), et ensuite la lire, et pourquoi pas l'afficher sur l'afficheur graphique !

    Pour l'instant voilà ce que donne mon programme :


    Code:
    ///////////////////////////////////////////////////////////////////////////
    //                    Programme gestion Afficheur + Mémoire              //
    ///////////////////////////////////////////////////////////////////////////
    
    #include "18F4550.h"
    
    #use delay (clock=20000000)
    #use i2c(master, sda=PIN_B0, scl=PIN_B1) 
    
    #fuses NOWDT,XT, NOPUT, NOPROTECT, NODEBUG, BROWNOUT, NOLVP, NOCPD, NOWRT 
    
    #define FAST_GLCD
     
    #include "HDM64GS12.c"
    #include "GRAPHICS.c"
    #include "Images.h"
    
    int donnee;
    
    void main()
    {
    
    set_tris_A(0b11111000);
    set_tris_B(0b00000000);
    set_tris_C(0b01111111);
    set_tris_D(0b00000000);
    set_tris_E(0b1111);
    
    //////////////////////////////////////////////////////////////////////////
    //                          Gestion afficheur                           //
    //////////////////////////////////////////////////////////////////////////
       
       glcd_init(1);
       delay_ms(1000);
       glcd_fillscreen(0);
       glcd_panda();
       glcd_update();
       delay_ms(3000);
       glcd_fillscreen(0);
       glcd_update();
       
    /////////////////////////////////////////////////////////////////////////
    //                            Gestion i2c                              //
    /////////////////////////////////////////////////////////////////////////
    while (1)
       {
       i2c_start();
       i2c_write(0b10100000); // Mode écriture
       i2c_write(0b10000000);
       i2c_write(0b00001111);
       i2c_write(0x5A);
       i2c_stop();
       
       i2c_start();
       i2c_write(0b10100000); 
       i2c_write(0b10000000);
       i2c_write(0b00001111);
       i2c_start();
       i2c_write(0b10100001); // Mode lecture
       donnee = i2c_read(1);   // 0 = pas d'acknowledge 1 = acknowledge
       i2c_stop();
       }
    }

    Si quelqu'un pourrait m'aider, ça serait vachement sympa

    Merci par avance, et bonne soirée !

    -----
    Dernière modification par yoda1234 ; 08/02/2010 à 19h50.

Discussions similaires

  1. Débutant : Problème avec un PIC18F4550
    Par invited67456b2 dans le forum Électronique
    Réponses: 5
    Dernier message: 26/10/2008, 17h56
  2. Probleme PIC18F4550 et USB
    Par invite89303051 dans le forum Électronique
    Réponses: 0
    Dernier message: 14/07/2008, 23h59
  3. Problème de communication I2C
    Par invite414f05fd dans le forum Électronique
    Réponses: 7
    Dernier message: 02/05/2008, 20h54
  4. Probleme I2C
    Par invite47dfc8ff dans le forum Électronique
    Réponses: 4
    Dernier message: 14/05/2006, 02h24
  5. Probleme pic18f4550
    Par invite43d0193b dans le forum Électronique
    Réponses: 1
    Dernier message: 13/04/2006, 09h18
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...