Display LCD

  • PLC
  • Autore della discussione
  • Nuovo Utente
  • Nuovo Utente
Di più
11 Anni 5 Mesi fa #1 da PLC
Display LCD è stato creato da PLC
Salve, sono alle prime armi con la programmazione della scheda Freedom II. Sto seguendo il libro "C18 step by step" e senza problemi, facendo molte prove sono arrivato al capitolo X. Descrivo il problema:

ho scritto il programma di prova, con il quale si dovrebbe visualizzare "Hello_world" sul display LCD della Freedom II. Inserito le librerie dell' ing. Laurenti, nel momento in cui compilo il programma mi da il seguente errore:

"MPLINK 4.48, Linker
Device Database Version 1.13
Copyright (c) 1998-2011 Microchip Technology Inc.
Error - could not find definition of symbol 'BacklightLCD' in file './main.o'.
Errors : 1"

Qualcuno sa come risolvere?

Ringrazio tutti in anticipo!

Si prega Accesso o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Moderatore
  • Moderatore
Di più
11 Anni 5 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Display LCD
Ciao,

Ing. Laurenti suona bene ma preferisco una stima che prescinda dall'Ing.! :)
Mauro va benissimo.

Le nuove librerie sono leggermente disallineate dal testo C18 Step by Step.
La libreria piu' vicina e' la libreria LaurTec 2.5, ho preferito non lasciare le piu' vecchie visto il fatto che sono mancanti di alcune librerie e possiedono dei bug eliminati. In ogni modo le differenze non sono molte.

Ho ricompilato l'esempio del capitolo X del testo C18 Step by Step facendo uso della libreria LaurTec 2.5
Code:
#include <p18f4550.h> #define LCD_DEFAULT #include "LCD_44780.h" #include "LCD_44780.c" #include "delay.h" #include "delay.c" #pragma config FOSC = HS #pragma config WDT = OFF #pragma config LVP = OFF #pragma config PBADEN = OFF //FOSC= HS Impostato per lavorare ad alta frequenza //WDT = OFF Disabilito il watchdog timer //LVP = OFF Disabilito programmazione LVP //PBADEN = OFF Disabilito gli ingressi analogici void main (void){ // Imposto PORTA tutti ingressi LATA = 0x00; TRISA = 0xFF; // Imposto PORTB tutti ingressi LATB = 0x00; TRISB = 0xFF; // Imposto PORTC tutti ingressi, RC1 come output LATC = 0x00; TRISC = 0b11111101; // Imposto PORTD tutte uscite LATD = 0x00; TRISD = 0b00000001; // Imposto PORTE tutti ingressi LATE = 0x00; TRISE = 0xFF; // Inizializzo il display LCD con quarzo a 20MHz OpenLCD (20); WriteStringLCD ("Hello World"); BacklightLCD (TURN_ON_LED); ShiftLCD (RIGHT,2); // Ciclo infinito while (1) { } }

Nota che oltre agli header file ho incluso anche il file .c
Code:
#include "LCD_44780.h" #include "LCD_44780.c" #include "delay.h" #include "delay.c"

Questo significa che dal progetto devi eliminare i file .lib associati alla libreria delay e LCD.
Infatti includendo il file .c il codice sorgente delle librerie viene automaticamente compilato.

Dovrai includere in maniera opportuna i percorsi di inclusione:

inc , src nella cartella della libreria LaurTec

Saluti,

Mauro
I seguenti utenti hanno detto grazie : PLC

Si prega Accesso o Crea un account a partecipare alla conversazione.

  • PLC
  • Autore della discussione
  • Nuovo Utente
  • Nuovo Utente
Di più
11 Anni 5 Mesi fa #3 da PLC
Risposta da PLC al topic Display LCD
Hello... Problema risolto! Grazie signor Mauro!

Si prega Accesso o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Moderatore
  • Moderatore
Di più
11 Anni 5 Mesi fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Display LCD
Perfetto.
...un passo in avanti...
...piu´forti per affrontare un nuovo problema! :)

Saluti,

Mauro
I seguenti utenti hanno detto grazie : PLC

Si prega Accesso o Crea un account a partecipare alla conversazione.

Moderatori: Mauro LaurentiMatteo Garia

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.