pic 18f46k80 & display Glcd con librerie LTlib5

4 Anni 7 Mesi fa - 4 Anni 7 Mesi fa #1 da Manuel s.

Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.

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

  • Manuel s.
  • Avatar di Manuel s.
  • New Member
  • New Member
Di più
4 Anni 7 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic pic 18f46k80 & display Glcd con librerie LTlib5

Rendering Error in layout Message/Item: array_keys(): Argument #1 ($array) must be of type array, null given. Please enable debug mode for more information.

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
4 Anni 7 Mesi fa #3 da Manuel s.
Risposta da Manuel s. al topic pic 18f46k80 & display Glcd con librerie LTlib5
Buongiorno e grazie Mauro per la risposta;
ho ricontrollato come mi hai suggerito la configurazione dei pin dell'lcd e mi sono assicurato di non aver definito pin errati nel file (almeno da quello che penso io); con la tua spiegazione di aver definito da qualche parte un pin non esistente ho provato a cercare nel progetto se fosse utilizzato da qualche parte, ma non riesco a trovare il problema;
stamattina ho riprovato il progetto includendo il file da me modificato del display e testando i vari tipi di pic già inclusi nelle tue librerie, e tutto funziona.
Sono sicuro quindi di aver commesso qualche errore nel file di configurazione del pic 18f46k80 che voglio utilizzare.

Se hai pazienza di darci un'occhiata lo allego di seguito assieme a quello del display.
Allegati:

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

  • Manuel s.
  • Avatar di Manuel s.
  • New Member
  • New Member
Di più
4 Anni 7 Mesi fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic pic 18f46k80 & display Glcd con librerie LTlib5
Salve Manuel,

presumo che oltre ad aver creato il file di configurazione del PIC hai anche modificato il file LTlib.h aggiungendo la nuova configurazione/PIC.

Da un primo sguardo non vedo errori, eccetto il fatto che la libreria CAN segnalerà l'errore perché non è definito il supporto del modulo CAN, dovresti aggiungere:

#define CAN_LIBRARY_SUPPORTED

Ma devi verificare se i registri del tuo PIC siano uguali al PIC18F4580.

Potresti copiare il testo intero dell'errore/errori segnalato/i alla compilazione?
Magari vedo qualche indizio in più.

La nuova definizione dei pin per il modulo LCD dovrebbe andare bene, visto che hai tolto RA4.

Saluti,

Mauro

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
4 Anni 7 Mesi fa #5 da Manuel s.
Risposta da Manuel s. al topic pic 18f46k80 & display Glcd con librerie LTlib5
Certo, in allegato ho messo anche il file principale che altro non è che il file di esempio per l'utilizzo del display.

:: advisory: (2051) The current license does not permit the selected optimization level, using optimization level 2
:: warning: (2055) use of the --mode option is deprecated; use --opt to control optimizations and avoid this warning
:: warning: (2034) 24-bit floating-point types are not CCI compliant; use 32-bit setting for compliance
:: warning: (2034) 24-bit floating-point types are not CCI compliant; use 32-bit setting for compliance
../xc8/LTlib_v_5.0.0_Maker/inc\LTlib_types.h:48: warning: (1516) compiler does not support 64-bit integers on the target architecture
../xc8/LTlib_v_5.0.0_Maker/inc\LTlib_types.h:53: warning: (1516) compiler does not support 64-bit integers on the target architecture
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:582: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:582: error: (182) illegal conversion between types
int -> volatile union S1174
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:583: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:583: error: (182) illegal conversion between types
int -> volatile union S1174
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:584: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:584: error: (182) illegal conversion between types
int -> volatile union S1174
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:585: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:585: error: (182) illegal conversion between types
int -> volatile union S1182
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:586: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:586: error: (182) illegal conversion between types
int -> volatile union S1182
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:587: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:587: error: (182) illegal conversion between types
int -> volatile union S1182
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:588: error: (255) not a member of the struct/union ""
../xc8/LTlib_v_5.0.0_Maker/src\GLCD_KS0108B.c:588: error: (182) illegal conversion between types
int -> volatile union S1178
(908) exit status = 1

le linea a cui fa riferimento sono queste:

GLCD_D_I_DIRECTION = PIN_AS_OUTPUT;
GLCD_R_W_DIRECTION = PIN_AS_OUTPUT;
GLCD_E_DIRECTION = PIN_AS_OUTPUT;
GLCD_CS1_DIRECTION = PIN_AS_OUTPUT;
GLCD_CS2_DIRECTION = PIN_AS_OUTPUT;
GLCD_RST_DIRECTION = PIN_AS_OUTPUT;
GLCD_LED_DIRECTION = PIN_AS_OUTPUT;

per la can ho aggiunto la linea che dicevi, per ora non la utilizzo e verificherò più avanti i registri,

GRAZIE!
Allegati:

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

  • Manuel s.
  • Avatar di Manuel s.
  • New Member
  • New Member
Di più
Moderatori: Mauro LaurentiPinnaStefAMatteo Garia

Registrati al sito

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

Registrati al sito LaurTec.

Login