Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

programation LCD 4bits avec mikroC




  1. #1
    Bernibernouille

    programation LCD 4bits avec mikroC

    Bonjour a tous

    Voila je suis occuper a essayer de programmer mon écran LCD 2*16 avec un PIC16F84A.
    Mon problème est que je n'arrive pas a placer une valeur dynamique sur une ligne de mon écran.
    En fait je veux simplement afficher une valeur de décompte sur la 2emme ligne de mon LCD.
    Voila mon code:
    Code:
    // LCD module connections
    sbit LCD_RS at RB4_bit;
    sbit LCD_EN at RB5_bit;
    sbit LCD_D4 at RB0_bit;
    sbit LCD_D5 at RB1_bit;
    sbit LCD_D6 at RB2_bit;
    sbit LCD_D7 at RB3_bit;
    
    sbit LCD_RS_Direction at TRISB4_bit;
    sbit LCD_EN_Direction at TRISB5_bit;
    sbit LCD_D4_Direction at TRISB0_bit;
    sbit LCD_D5_Direction at TRISB1_bit;
    sbit LCD_D6_Direction at TRISB2_bit;
    sbit LCD_D7_Direction at TRISB3_bit;
    // End LCD module connections
     Lcd_Init();
    
    char txt1[] = "Minuterie:";
    char txt2[] = "";                      //Déclare du vide dans ta chaîne
    char txt3[] = "Insoleuse Uv";
    char txt4[] = "Version test";
    char i;                               //Crée une variable de comptage
    
    void Move_Delay() {                  // mouvement text
      Delay_ms(500);                     
    }
    
    void main(){
      TRISB = 0;
      PORTB = 0xFF;
      TRISB = 0xff;
      
      Lcd_Init();                        // Initialize LCD
    
      Lcd_Cmd(_LCD_CLEAR);                // Clear display
      Lcd_Cmd(_LCD_CURSOR_OFF);           
      Lcd_Out(1,1,txt3);                 // écrire texte sur 1er ligne
      Lcd_Out(2,1,txt4);                 // écrire texte sur 2eme ligne
      Delay_ms(2000);
    
    
      for (i=0; i=10; i++) {             //utilisation  variable de comptage
      txt2 = i;                                  //Ligne 43
      Lcd_Cmd(_LCD_CLEAR);             // Clear display
      Lcd_Out(1,1,txt1);                 // écrire texte sur 1er ligne
      Lcd_Out(2,1,txt2);                 // écrire texte sur 2eme ligne
      Delay_ms(2000);
    
      }
      }
    quand je fait ce code, il me dis que il y a une ereur:
    "
    43 318 Assigning to non-lvalue '' LCD_16f84a.c
    "
    SI qqun à une petit idée ?

    Merci pour votre aide

    -----


  2. #2
    sdec25

    Re : programation LCD 4bits avec mikroC

    Bonjour,

    Tu essaies d'affecter un nombre à une chaîne de caractère, ça ne peut pas marcher !
    Je suppose que tu veux écrire dans la chaîne de caractère la représentation du nombre en base 10. Le C n'est pas un langage très évolué, il ne sait pas faire ça.

    Pour le faire, il faut utiliser une fonction du genre itoa, voir dans le fichier stdlib.h
    Tu peux aussi écrire toi-même cette fonction, ce n'est pas très compliqué.

Discussions similaires

  1. Probléme avec le MIKROC
    Par akramovic dans le forum Électronique
    Réponses: 5
    Dernier message: 11/04/2015, 12h12
  2. Le PWM avec MikroC
    Par inoxxam dans le forum Électronique
    Réponses: 12
    Dernier message: 24/02/2013, 16h04
  3. afficheur lcd 4bits
    Par sam192 dans le forum Électronique
    Réponses: 1
    Dernier message: 27/05/2009, 12h02
  4. Programation pic 16F877 en C avec Aff LCD
    Par kevinomont dans le forum Électronique
    Réponses: 8
    Dernier message: 01/02/2009, 12h45
  5. problème avec mikroC
    Par ABN84 dans le forum Électronique
    Réponses: 4
    Dernier message: 07/03/2007, 17h47