programme pour PIC 16F877
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

programme pour PIC 16F877



  1. #1
    invite78b3ecc4

    programme pour PIC 16F877


    ------

    salut à tous et à tout ,j'ai un projet à faire ,une partie de ce projet concernant l'envoie d'une donné numérique de (0 à 255) ,la donnés doit etre envoyer par un slider de Labview à une carte a travers le port série,
    le probleme ,lorsque je fais la simulation par isis (reception d'une donné par le port série) j'affiche la donné sur afficheur Lcd ,lorsque par exemple j'envoie la donné 124 ,l'afficheur affiche 1puis 2 puis 4
    normale 124 mais apres le curseur retourne à 2 pour le remplacer par 1 et un sudesuite et apres la donné final se stabilise à 111 au lieu de 124.
    comment je peux resoudre ce probleme voici le programme sur microc.

    unsigned char ch;
    unsigned short i=0,pos;
    char lcdtext[3];

    void main()
    {
    TRISB = 0b11111000; // PORTB = RB2 à RB0 E, RS du LCD et LED en sortie
    TRISC=(TRISC & 0b10110000); // TX, D7 à D4 du LCD-> en sortie 0xf0;
    PORTB=0;
    PORTC=0;

    INTCON = 0;
    Usart_Init(9600);
    Lcd_Init(&portb);

    while(1)
    {
    if(Usart_Data_Ready())
    {
    while(1)
    {
    lcdtext[i]=Usart_Read();
    i++;
    if(i==3)
    i=0;
    Lcd_Cmd(LCD_RETURN_HOME);
    for(pos=0;pos<3;pos++)
    {
    portb=0b11110100;

    Lcd_Chr_CP(lcdtext[pos]);

    if (pos==3) Lcd_Cmd(LCD_SECOND_ROW);
    Delay_ms(300);
    }

    }

    }
    }
    }

    -----

  2. #2
    ftorama

    Re : programme pour PIC 16F877

    Ce bout de code ne sera jamais exécuté:
    Code:
    if (pos==3) Lcd_Cmd(LCD_SECOND_ROW);
    Delay_ms(300);
    En effet, il se trouve dans la boucle for dont la condition de sortie est pos<3

    Soit tu changes la condition de sortie (pos<3), soit le test (pos==3), soit tu déplaces le bout de code derrière l'accolade fermante du for
    Quand un homme a faim, mieux vaut lui aprendre à pecher que de lui donner un poisson.

Discussions similaires

  1. Programme en C pour PIC 16F877
    Par riquet dans le forum Électronique
    Réponses: 7
    Dernier message: 11/04/2012, 12h25
  2. programme de pwm sur pic 16f877 qui marche dans un sens
    Par invite0dc3f76c dans le forum Électronique
    Réponses: 1
    Dernier message: 15/02/2010, 04h20
  3. Besoin d'un programme pour PIC 16f877!!
    Par inviteb4684a99 dans le forum Électronique
    Réponses: 2
    Dernier message: 16/04/2008, 21h12
  4. Programme pour pic 16F877
    Par invite01bfa6f2 dans le forum Électronique
    Réponses: 2
    Dernier message: 10/03/2008, 18h50
  5. Lire le programme d' un PIC 16F877.
    Par invite64e12149 dans le forum Électronique
    Réponses: 5
    Dernier message: 03/03/2008, 12h58
Découvrez nos comparatifs produits sur l'informatique et les technologies.