[help]mise en oeuvre de l'i²c avec un atmel
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

[help]mise en oeuvre de l'i²c avec un atmel



  1. #1
    invite48707525

    Red face [help]mise en oeuvre de l'i²c avec un atmel


    ------

    Bonjour a tous !

    Voila, j'ai fait l'aquisition d'une rtc, ainsi que d'un atmega.

    Je cherche donc a realiser la liaison pour recuperer toute les donner de l'horloge.

    J'ai donc été voire la documentation de l'atmel ( http://www.atmel.com/dyn/resources/p...ts/doc8271.pdf pages 216), ainsi que la documentation de la rtc ( http://www.nxp.com/documents/data_sheet/PCF8563.pdf )

    Suite à cela, j'ai commencé a composer mon programme, et voila un petit bout de temps que je bloque, et que je ne vois pas trop ou est l'erreur.

    Voici mon bout de code permettant cette fonction :

    TWCR = 0xA4; //Mes en fonction le bus de com TWEN, la condition de start TWSTA, et met à 0 le bit d'interuption TWINT (mis a un lorsqu'un job est fini)

    while(!(TWCR & 0x80)); // Attend que la condition de start soit ben faite

    TWDR = 0xA2; //Mise en memoire de l'adresse de l'esclave
    TWCR |= 0x84; //remet a 0 le bit d'interuption et active le module com

    while(!(TWCR & 0x80)); // Attend que TWDR soit transmis, et un ACK ou NACK

    TWDR = 0x02; // Met dans TWDR l'adresse des secondes
    TWCR |= 0x84; //remet a 0 le bit d'interuption et active le module com

    while(!(TWCR & 0x80)); // Attend que TWINT soit a 1, et que ack ou nack soit present sur l'esclave

    TWDR = 0xA3; //Met dans TWDR l'adresse de l'esclave, mais en mode lecture cette fois ci

    TWCR |= 0xA4;//comme d'hab", a la difference que l'on relance un bit de start

    while(!(TWCR & 0x80)); // Attend l'aquitement

    for(a=0;a<7;a++) //Stock les données recu dans un tableau
    {
    recu[a]=TWDR;
    TWCR |= 84;
    }

    TWCR = 0x94; // Met fin a toute communication

    Peut etre vous trouverez ce qui ne marche pas, je vais continuer a chercher.

    Merci

    -----

  2. #2
    invite48707525

    Re : [help]mise en oeuvre de l'i²c avec un atmel

    Meme si tout le monde s'est empressé de repondre (joke x) ), j'ai trouvé la solution.

    Merci quand meme !

Discussions similaires

  1. mise en oeuvre du TB6560AHQ
    Par invite1a47bfa2 dans le forum Électronique
    Réponses: 5
    Dernier message: 20/04/2010, 17h27
  2. Mise ne oeuvre de son electricité domestique avec gaines blindées
    Par inviteeb8ec9d0 dans le forum Bricolage et décoration
    Réponses: 15
    Dernier message: 13/03/2009, 18h09
  3. mise en oeuvre du LT1083 ??
    Par invite78adc14b dans le forum Électronique
    Réponses: 4
    Dernier message: 22/09/2008, 23h04
  4. Conseil de mise en oeuvre.
    Par abracadabra75 dans le forum Électronique
    Réponses: 6
    Dernier message: 30/07/2008, 09h28
  5. Mise en oeuvre d'un bus CANOpen avec PC
    Par invitedb64c0ae dans le forum Électronique
    Réponses: 3
    Dernier message: 22/03/2005, 15h23
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...