Problema utilizzo libreria LCD_44780 LaurTec
12 Anni 2 Mesi fa - 12 Anni 2 Mesi fa #1
da marcolindo94
Problema utilizzo libreria LCD_44780 LaurTec è stato creato da marcolindo94
Salve a tutti... da poco sono passato dall'utilizzo dei pic16f877 ai 18f4550, e sto provando ad utilizzare la libreria di LaurTec LCD_44780, ma con risultati deludenti. Non riesco a farla funzionare.
Uso MPLAB IDE 8.50 e HITEC C18 COMPILER 9.80
Nel codice sorgente ho incluso "LCD_44780.h" , i quali li ho entrambi messi nella cartella del progetto. Stesso discorso per delay.c (che però non ha problemi e funziona).
Se includo LCD_44780.h e richiamo la funziona OpenLCD(20) per inizializzare l'lcd con il quarzo da 20MHz, il compilatore da un errore:
Error [499] ; 0. undefined symbol:
_OpenLCD(provers485.obj)
(provers485 è il nome del progetto).
La cosa non succede se non richiamo la funzione nel main. Se includo solo la libreria senza richiamare nessuna funzione, viene compilato correttamente.
Se includo sia LCD_44780.h che LCD_44780.c l'errore cambia:
Warning [111] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.h; 101.18 redefining preprocessor macro "BLINK_ON" (C:\Program Files\HI-TECH Software\PICC-18\9.80\include\plib/xlcd.h: 54)
Warning [111] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.h; 102.19 redefining preprocessor macro "BLINK_OFF" (C:\Program Files\HI-TECH Software\PICC-18\9.80\include\plib/xlcd.h: 55)
Warning [361] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 45.1 function declared implicit int
Error [372] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 166.31 "," expected
Error [255] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 250.16 not a member of the struct/union ""
Error [182] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 250.24 illegal conversion between types
unsigned char -> volatile union S270
Warning [361] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 258.1 function declared implicit int
Error [984] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 9.27 type redeclared
Error [1098] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 9.27 conflicting declarations for variable "delay_ms" (C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c:45)
Error [984] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 29.42 type redeclared
Error [1098] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 29.42 conflicting declarations for variable "setQuartz" (C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c:258)
Io non so più come fare... ho provato cambiando le librerie con quelle di settorezero, ma niente, l'lcd causa seri problemi.
Se qualcuno riesce ad aiutarmi lo ringrazio.
Grazie, Marco
edit
Dimenticavo di dire che ho incluso anche la libreria uart.c (presente nell'Hitec c dei PIC10/12/16)
Uso MPLAB IDE 8.50 e HITEC C18 COMPILER 9.80
Nel codice sorgente ho incluso "LCD_44780.h" , i quali li ho entrambi messi nella cartella del progetto. Stesso discorso per delay.c (che però non ha problemi e funziona).
Se includo LCD_44780.h e richiamo la funziona OpenLCD(20) per inizializzare l'lcd con il quarzo da 20MHz, il compilatore da un errore:
Error [499] ; 0. undefined symbol:
_OpenLCD(provers485.obj)
(provers485 è il nome del progetto).
La cosa non succede se non richiamo la funzione nel main. Se includo solo la libreria senza richiamare nessuna funzione, viene compilato correttamente.
Se includo sia LCD_44780.h che LCD_44780.c l'errore cambia:
Warning [111] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.h; 101.18 redefining preprocessor macro "BLINK_ON" (C:\Program Files\HI-TECH Software\PICC-18\9.80\include\plib/xlcd.h: 54)
Warning [111] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.h; 102.19 redefining preprocessor macro "BLINK_OFF" (C:\Program Files\HI-TECH Software\PICC-18\9.80\include\plib/xlcd.h: 55)
Warning [361] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 45.1 function declared implicit int
Error [372] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 166.31 "," expected
Error [255] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 250.16 not a member of the struct/union ""
Error [182] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 250.24 illegal conversion between types
unsigned char -> volatile union S270
Warning [361] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c; 258.1 function declared implicit int
Error [984] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 9.27 type redeclared
Error [1098] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 9.27 conflicting declarations for variable "delay_ms" (C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c:45)
Error [984] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 29.42 type redeclared
Error [1098] C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\delay.c; 29.42 conflicting declarations for variable "setQuartz" (C:\Users\marco\Desktop\documenti marco\WAREMATIC\prova con librerie pic16\prove rs485\LCD_44780.c:258)
Io non so più come fare... ho provato cambiando le librerie con quelle di settorezero, ma niente, l'lcd causa seri problemi.
Se qualcuno riesce ad aiutarmi lo ringrazio.
Grazie, Marco
edit
Dimenticavo di dire che ho incluso anche la libreria uart.c (presente nell'Hitec c dei PIC10/12/16)
Ultima Modifica 12 Anni 2 Mesi fa da marcolindo94.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- marcolindo94
- Autore della discussione
- Junior Member
Riduci
Di più
12 Anni 2 Mesi fa - 12 Anni 2 Mesi fa #2
da Matteo Garia
Risposta da Matteo Garia al topic Re: Problema utilizzo libreria LCD_44780 LaurTec
le librerie di Mauro sono fatte per il C18 di microchip e non per l'hitech C
non ne sono certo ma potrebbe esser questo il problema
non ne sono certo ma potrebbe esser questo il problema
Ultima Modifica 12 Anni 2 Mesi fa da Matteo Garia.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Matteo Garia
- Moderator
Riduci
Di più
- Messaggi: 376
- Ringraziamenti ricevuti 38
12 Anni 2 Mesi fa #3
da marcolindo94
Risposta da marcolindo94 al topic Re: Problema utilizzo libreria LCD_44780 LaurTec
Ecco perché... Adesso appena ho tempo provo ad usare il C18. Grazie Matteo Garia
Si prega Accedi o Crea un account a partecipare alla conversazione.
Moderatori: Mauro Laurenti, Pinna, StefA, Matteo Garia
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.