Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Page 2 sur 4 PremièrePremière 2 DernièreDernière
Affichage des résultats 16 à 30 sur 46

Usart ou I2C?

  1. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    c'est vrai que la ca laisse réfléchir. Donc en faite la meilleure solution c'est ce que vous proposez, et je dois ensuite faire un petit programme sur le pc afin de convertir les bits en caractéres.
    Mais la se pose le probléme (enfin pour moi) d(utiliser la mémoire du µc pour ne pas ecraser à chaque fois les données reçuent. J'ai pu créer la liaison serie avec MikroC en utilisant la fonction Init_Usart(), Xrit_Usart().
    Je vous montre le programme que j'ai ecrit. Un fichier texte est joint, dites moi ce que vous en pensez.
    Fichiers attachés
     


    • Publicité



  2. verdifre

    Date d'inscription
    mai 2006
    Localisation
    thiembronne 62560
    Âge
    51
    Messages
    7 964

    Re : Usart ou I2C?

    bonjour,
    Par contre si tu stockes les données dans le microp il va surement falloir prevoir un horodatage pour retrouver tes petits quand tu va les transferer sur le pc. Ca peut prendre pas mal de place supplementaire.
    fred
     

  3. etienneh

    Date d'inscription
    mai 2006
    Messages
    45

    Re : Usart ou I2C?

    Citation Envoyé par verdifre
    bonjour,
    Par contre si tu stockes les données dans le microp il va surement falloir prevoir un horodatage pour retrouver tes petits quand tu va les transferer sur le pc. Ca peut prendre pas mal de place supplementaire.
    fred
    Effectivement, ca peut être un problème.
    Dans un projet pour lequel je travaille, j'ai opté pour un horodatage relatif (vu qu'avec un quartz 4 MHz, une horloge temps réel est problématique).

    Pour te donner une piste là-dessus, srr, tu peux compter le temps (grossièrement) entre la prise de mesure et la transmission. Du côté PC, tu remets tout ca en place. Avec un "unsigned int" pour gérer le temps relatif, tu t'en tires pour 18 heures avant débordement, avec une précision à la seconde ! Et tout ca pour uniquement 16 bits. Elle est pas belle la vie ?
     

  4. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    Ok et merci,
    Je compte utiliser un quartz de 10MHz (plus simple pour les temps de cycles).
    Donc dés que je fait une mesure j'ai un mot sur 16bits qui determine le temps. De cette manière je peux aussi juste incrémenter et à chaque fois que je recherche les données je donne la valeur de ce mot. Il est vrai que si je fait un horloge "pseudo-réelle" il me sera plus facile de rechercher mes données!!!
    Cependant, avec MikroC, je ne trouve pas les fonctions permettant de pouvoir utiliser la mémoire du µc, avec MPLAB C18 je devrais utiliser les fonctions définies dans memory & string (ex: memechar, memecpy, ...).
    Est-ce bon? Suis-je sur la bonne voie? Y'a t-il une autre manière d'exploloiter la memoire du µc?
     

  5. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    oups petite erreur de ma part lol
     

  6. etienneh

    Date d'inscription
    mai 2006
    Messages
    45

    Re : Usart ou I2C?

    Citation Envoyé par srr
    Cependant, avec MikroC, je ne trouve pas les fonctions permettant de pouvoir utiliser la mémoire du µc, avec MPLAB C18 je devrais utiliser les fonctions définies dans memory & string (ex: memechar, memecpy, ...).
    Est-ce bon? Suis-je sur la bonne voie? Y'a t-il une autre manière d'exploloiter la memoire du µc?
    Je ne connais pas MikroC, mais effectivement, en C, tu réserves de la mémoire avec la fonction malloc(); tu y accèdes en utilisant le pointeur mémoire retourné.

    Si ce que je dis ne t'es pas familier, je te conseille de te tourner vers des tutoriels de langage C, à la rubrique "mémoire dynamique". Tu en trouveras de très bons en cherchant sur Google.

    Amicalement,
    E.
     

  7. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    Ok merci du conseil, je vais voir de suite. Sinon je peux le faire avec MPLAB C18, ce log est plus commun pour la prog', enfin par raport à MikroC
     

  8. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    Re, J'ai un petit probléme avec C18,
    voila j'ai déclaré un tableau et quand je veux lui affecter une chaine de caractére il me sors une erreur en compilant: voici le tableau avec l'erreur

    static char rapportest [16][10];
    static int i,j,k,m=0; // variables permettant de naviguer dans le tableau (l sert pour la boucle).
    static unsigned int tlp,search,find1,find2,*p;

    TRISA=TRISB=TRISD=1; // initialisation des ports en entrées.
    // initialisation du tableau.
    rapportest [0][0]="Nom";
    rapportest [0][1]="Etat";
    rapportest [0][2]="Etat";
    rapportest [0][3]="Etat";

    V:\Analyseur test auta\acquisition données pic\AU.TA.c:21:Error [1131] type mismatch in assignment
    V:\Analyseur test auta\acquisition données pic\AU.TA.c:22:Error [1131] type mismatch in assignment
    V:\Analyseur test auta\acquisition données pic\AU.TA.c:23:Error [1131] type mismatch in assignment
    V:\Analyseur test auta\acquisition données pic\AU.TA.c:24:Error [1131] type mismatch in assignment

    Que dois-je faire?
     

  9. monnoliv

    Date d'inscription
    décembre 2003
    Localisation
    Belgique
    Messages
    2 311

    Re : Usart ou I2C?

    Quand tu fais
    Code:
    rapportest [0][0] = "sdfsdqf"
    tu es en train de vouloir assigner une chaîne de caractères (plusieurs caractères donc) à une variable qui ne peut accepter qu'un caractère. Essaie plutôt
    Code:
    rapportest [0]="Nom";
    rapportest [1]="Etat";
    rapportest [2]="Etat";
    rapportest [3]="Etat";
    A+
    Ne soldez pas grand mère, elle brosse encore.
     

  10. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    Ok, merci de la soluce
     

  11. etienneh

    Date d'inscription
    mai 2006
    Messages
    45

    Re : Usart ou I2C?

    La solution de monnoliv ne me paraît pas très rigoureuse... Peut être que ca compilera, mais peut être aussi que ca ne marchera pas

    En toute rigeur, tu dois utiliser la fonction memcpy(), parce que quand tu fais

    rapportest [0]="Nom";

    tu assignes une adresse mémoire "Nom" (char*) à une adresse mémoire statique (vu que tu as déclaré rapportest comme char[16][10], et non char*[16]).

    Amicalement,
    E.
     

  12. monnoliv

    Date d'inscription
    décembre 2003
    Localisation
    Belgique
    Messages
    2 311

    Re : Usart ou I2C?

    Effectivement, c'est assez brutal
    Faudrait voir le code assembleur généré...
    A+
    Ne soldez pas grand mère, elle brosse encore.
     

  13. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    euh en code assembleur ca risque d'etre dur vu que je suis une quiche an asm lol.

    Je pensais à une chose aussi, vu que dans mon tableau je dois avoir sur la 1ere ligne des commentaires style "nom", "etat", et que sur la 1ere colonne je dois mettre le nom des information arrivant, cela me pose un probléme vu la manière dont vous me proposez de proceder pour remplir le tableau.

    Je sais pas si je me suis bien fait comprendre.
     

  14. etienneh

    Date d'inscription
    mai 2006
    Messages
    45

    Re : Usart ou I2C?

    Srr,

    Tu vas penser que je radote (et c'est le cas ), mais c'est pour la bonne cause :

    Je te conseille VRAIMENT de stocker le *minimum* d'infos sur ta carte. Les chaines de caractère "NOM" et "ETAT" n'ont aucun intérêt pour le PIC, juste pour l'utilisateur final, donc tu devrais les utiliser une fois les infos transmises sur le PC !

    Si ton tableau dans le pic est (par exemple)
    Mesure Etat
    12 VRAI
    16 FAUX
    987 VRAI
    44 FAUX

    ne déclare pas un tableau de type char[][]. qui contiendra les chaines de caractère; choisis plutôt un format auquel tu te tiendras, et n'utilise que

    int mesures[MA_TAILLE];
    char valeurs[MA_TAILLE];

    ce qui sera beaucoup plus compact.
     

  15. srr

    Date d'inscription
    janvier 2006
    Messages
    66

    Re : Usart ou I2C?

    ok je vais faire ca, je ne penses pas que tu radottes, mais c'est pour mon bien et tu t'y connais mieux que moi, donc je vais suivre ton conseil !!!

    Je vais juste installer visual C basic sur le pc et hop on récupére le tout.

    Et puis pour les info' je n'aurais pas meme pas besoin de créer un tableau sur le pic alors!!! juste je compte le nombre d'info' analysées et avec le pc je fais l'analogie !!!

    je vous tiendrais au courant de l'évolution

    Franchement super forum vous etes des bons les mecs!!!!
     


    • Publicité




Poursuivez votre recherche :




Sur le même thème :




 

Discussions similaires

  1. USART du PIC16F628
    Par Patrick dans le forum Électronique
    Réponses: 2
    Dernier message: 01/06/2008, 15h28
  2. USART sur PIC
    Par noisyboxes dans le forum Électronique
    Réponses: 6
    Dernier message: 23/04/2007, 07h39
  3. USART sut ATmega8515
    Par jleclercq6 dans le forum Électronique
    Réponses: 1
    Dernier message: 28/02/2007, 14h59
  4. 16F876 Et transmission USART
    Par Peter dans le forum Électronique
    Réponses: 13
    Dernier message: 07/11/2006, 18h36
  5. Usart Avr
    Par McFly dans le forum Électronique
    Réponses: 13
    Dernier message: 20/05/2006, 23h43

A voir en priorité dans les contenus de Futura-Sciences : i2c led, capteur i2c, carte i2c, i2c pic, horloge i2c, ...
Nous vous recommandons : i2c pwm, i2c temperature, i2c programmateur, i2c module, i2c pwm, ...
Sur le forum : i2c simulation, i2c simulation, i2c relai, ...
Dans tout le site : usart, usart en, test usart, usart uart, pic usart, avr usart, usart codevisionavr, ...

Les tags pour cette discussion