urgent EEPROM extern 24c32 ccs
Répondre à la discussion
Affichage des résultats 1 à 11 sur 11

urgent EEPROM extern 24c32 ccs



  1. #1
    invite77405f17

    urgent EEPROM extern 24c32 ccs


    ------

    salut
    je voulais enregistré une valeur ds une eeprom externe 24c32

    pour enregistré les valeur sur 8 bit y a pas de problème mais sur 16bit j'ai trouvé de difficulté malrgé j'ai essayé de decalé la valeur etc...

    si quelqu'un peut m'aidé d'enregistré une valeur de 16bit !! je serai reconnaissant .

    merci

    voici le code ke j'ai essayé

    #fuses HS,NOWDT,NOPROTECT,NOLVP
    #include <2432.c>
    #define LCD_TYPE 2
    #include <lcd.c>
    void main()
    {
    long int address;

    int16 data;



    lcd_init();


    setup_adc_ports(NO_ANALOGS);
    setup_adc(ADC_OFF);
    setup_psp(PSP_DISABLED);
    setup_wdt(WDT_OFF);
    setup_timer_0(RTCC_INTERNAL);
    setup_timer_1(T1_DISABLED);
    setup_timer_2(T2_DISABLED,0,1) ;
    setup_timer_3(T3_DISABLED|T3_D IV_BY_1);
    init_ext_eeprom();

    while(1)
    {

    address =2;
    data =900;

    write_ext_eeprom( address, data);


    address=address+1;
    data=data>>8;

    write_ext_eeprom( address, data);


    }

    }

    -----

  2. #2
    inviteda3670f6

    Re : urgent EEPROM extern 24c32 ccs

    Tu as remarqué quoi comme problème exactement?
    A plus

  3. #3
    carcan

    Re : urgent EEPROM extern 24c32 ccs

    Hello !

    Essaye comme ça :
    write_ext_eeprom(address, data&0xFF);//LSB
    write_ext_eeprom(address+1, data>>8);//MSB

    Dis nous aussi ce qui pose problème.

    A+
    Laurent

  4. #4
    invite77405f17

    Re : urgent EEPROM extern 24c32 ccs

    merci de m avoir répondu^^

    le probleme c'est que apres la verification du eeprom je trouve que le programme n'a effectué que la deuxième write !!

    merci

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

    Re : urgent EEPROM extern 24c32 ccs

    salut
    j'ai trouvé une solution pour mon probleme mais elle n'est pas efficace

    while(1)
    {


    while(h<15){ h++;
    write_ext_eeprom( address, data>>8);
    }
    h=0;
    while(h<15){
    write_ext_eeprom( address+1, data);
    h++;
    }
    }


    est ce ke quelqu'un peut me dire comment je peu remplacer le while par la condition de fin d'ecreture sur eeprom.
    c'est a dire

    while ( l'ecreture n a pas terminé )


    merci

  7. #6
    redtronic

    Re : urgent EEPROM extern 24c32 ccs

    Citation Envoyé par carcan Voir le message
    Hello !

    Essaye comme ça :
    write_ext_eeprom(address, data&0xFF);//LSB
    write_ext_eeprom(address+1, data>>8);//MSB

    Dis nous aussi ce qui pose problème.

    A+
    Laurent
    salut,
    je trouve que le code de carcan est correct, c'est quoi le problème au juste? ques que tu veux réaliser exactement?

    ZR
    Redtronic

  8. #7
    invite77405f17

    Re : urgent EEPROM extern 24c32 ccs

    salut
    je veux enregistré plusieure donnés dans une eeprom externe.

    j'ai essayé le code de carcan é ça marche pas !!!

    je trouve k'une seule donné dans la eeprom malgré j'ai enregistré plusieur

    merci infiniment

  9. #8
    Murayama

    Re : urgent EEPROM extern 24c32 ccs

    Bonjour!

    Je ne comprends pas votre code. Pourquoi écrire 15 fois de suite
    à la même place? Vous pensez que ce sera plus lisible si vous
    écrivez 15 fois de suite, un peu comme quand on écrit plusieurs
    fois à la même place avec un marqueur pour faire de gros
    caractères?
    Le code qui vous a été donné est juste dans le principe.
    Maintenant, la fonction write_ext_eeprom, elle vient d'une
    bibliothèque standard ou vous l'avez roulée à la main?
    Le problème est peut-être là.
    Et pour votre question à propos de while(pas terminé), c'est
    facile: ne mettez pas de boucle while, elle ne sert à rien puisque
    vous ne voulez (apparemment) écrire que deux caractères.
    Bref, ne mettez que les deux lignes qui vous sont suggérées.

    Pascal

    Citation Envoyé par sabderahmane Voir le message
    salut
    j'ai trouvé une solution pour mon probleme mais elle n'est pas efficace

    while(1)
    {


    while(h<15){ h++;
    write_ext_eeprom( address, data>>8);
    }
    h=0;
    while(h<15){
    write_ext_eeprom( address+1, data);
    h++;
    }
    }


    est ce ke quelqu'un peut me dire comment je peu remplacer le while par la condition de fin d'ecreture sur eeprom.
    c'est a dire

    while ( l'ecreture n a pas terminé )


    merci

  10. #9
    invite77405f17

    Re : urgent EEPROM extern 24c32 ccs

    j'ai mis while <15 pour ke le programe resté dans cette boucle tant que il n'a pas terminé l'ecreture .

    pske j'ai essayé ce code sans while (1) ni (while <15) et ça marche pas et quand j'ai simulé avec le debeug du proteus j'ai trouvé ke le programme execute qu'une seule foi la premeire ligne puis la seuxieme é il arrete sans ecrire dans le eeprom

  11. #10
    carcan

    Re : urgent EEPROM extern 24c32 ccs

    Hello !

    si tu ouvres le fichier bibliothèque 2432.C, tu y trouves ça :

    void write_ext_eeprom(long int address, BYTE data) {
    while(!ext_eeprom_ready());
    i2c_start();
    i2c_write(0xa0);
    i2c_write(hi(address));
    i2c_write(address);
    i2c_write(data);
    i2c_stop();
    }

    La routine d'écriture contient déja l'attente de "EEPROM Ready", ton problème est ailleurs. tu peux tester ton code sur l'EEPROM interne si tu veux être sûr de lui avec la fonction "write_eeprom".
    Est-ce que ton câblage est correct (résistances de pull up sur scl et sda) ?
    Quelle est la version de ton compilo ?

    A+
    Laurent

  12. #11
    invite77405f17

    Re : urgent EEPROM extern 24c32 ccs

    salut

    oui j'aiessayé avec eeprom interne é ça marche

    la version du compilo :CCS PCWH 4.032 compilator for PIC

    j'utilise proteus 7.1 comme simulateur

    consernant le branchement du eeprom 24C32A il est juste .

    merci

Discussions similaires

  1. URGENT : Impossible dialogue UART avec 2 bits Stop sous CCS C (PIC)
    Par inviteafbffaf9 dans le forum Électronique
    Réponses: 1
    Dernier message: 02/03/2011, 19h53
  2. [Blanc] tv philips 29pt9005/19 (memoire 24c32)
    Par romain20 dans le forum Dépannage
    Réponses: 3
    Dernier message: 03/02/2010, 17h45
  3. Boot hd extern
    Par invite4955d8ab dans le forum Matériel - Hardware
    Réponses: 23
    Dernier message: 11/06/2009, 13h35
  4. 24c32
    Par invite28559ad9 dans le forum Électronique
    Réponses: 2
    Dernier message: 27/02/2009, 13h27
  5. CCS compiler
    Par invitefc1671e3 dans le forum Électronique
    Réponses: 0
    Dernier message: 16/09/2007, 20h27
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...