Domandine su librerie Laurtec

9 Anni 2 Settimane fa #1 da Chuck_Norris
Domandine su librerie Laurtec è stato creato da Chuck_Norris
Ciao a tutti! Avrei delle domande, forse idiote, sulle librerie Laurtec per XC8.

Premesso che le sto usando sui PIC16 e so bene che non tutto è compatibile, le domande sono relative al delay e alla LCD_44780 che secondo la grafica sulla pagina di download dovrebbero andare anche sul mio PIC, detto ciò passiamo alle domande:

- Esiste una funzione di delay in microsecondi? Se avessi la necessità di avere delay più piccoli del millisecondo, come posso fare? Devo cercare altre librerie?

- per risparmiare pin sul pic vorrei mettere il piedino R/W del display sempre a massa e la retroilluminazione sempre accesa ma sulla libreria sono costretto a definire comunque quei piedini, come posso fare?

- ho provato a definire dei piedini non utilizzati (ancora) e non configurati, ho collegato il tutto e fatto una prova col classico hello world, il display viene inizializzato ma compaiono caratteri strani. I collegamenti sono quelli classici con modalità a 4 pin e sono stati già controllati, quale potrebbe essere il problema?


Alessio

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

  • Chuck_Norris
  • Avatar di Chuck_Norris
  • Premium Member
  • Premium Member
Di più
9 Anni 2 Settimane fa - 9 Anni 2 Settimane fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Domandine su librerie Laurtec
Salve Alessio.

relativamente alle domande:

- Esiste una funzione di delay in microsecondi? Se avessi la necessità di avere delay più piccoli del millisecondo, come posso fare? Devo cercare altre librerie?

La libreria LaurTec supporta solo a partire da ms, ma se fai uso del compilatore XC8 puoi facilmente usare le macro di delay per i us. Guarda come e' realizzata la libreria delay.

- per risparmiare pin sul pic vorrei mettere il piedino R/W del display sempre a massa e la retroilluminazione sempre accesa ma sulla libreria sono costretto a definire comunque quei piedini, come posso fare?

Il pin R/W viene inizializzato/usato solo nella funzione LCD_initialize. Se lo metti sempre a massa e non lo usi puoi commentare la riga in cui lo si usa nella funzione di inizializzazione. Il file h lo puoi lasciare invariato.

- ho provato a definire dei piedini non utilizzati (ancora) e non configurati, ho collegato il tutto e fatto una prova col classico hello world, il display viene inizializzato ma compaiono caratteri strani. I collegamenti sono quelli classici con modalità a 4 pin e sono stati già controllati, quale potrebbe essere il problema?

Ricontrolla comunque il montaggio. Considera che i PIC16 non hanno il registro LAT per cui sono piu' sensibili ad errori nel caso in cui le linee tra il PIC e il modulo LCD dovessero essere lunghe (10cm).

Saluti,

Mauro
Ultima Modifica 9 Anni 2 Settimane fa da Mauro Laurenti.

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
9 Anni 2 Settimane fa - 9 Anni 2 Settimane fa #3 da Chuck_Norris
Risposta da Chuck_Norris al topic Domandine su librerie Laurtec
grazie per la risposta.

Mauro Laurenti ha scritto: La libreria LaurTec supporta solo a partire da ms, ma se fai uso del compilatore XC8 puoi facilmente usare le macro di delay per i us. Guarda come e' realizzata la libreria delay.


non ho capito, le librerie di base della microchip funzionano sui cicli di clock non sui micro secondi (dovrei fare un calcolo veloce ogni volta ma è scomodo)

Ricontrolla comunque il montaggio. Considera che i PIC16 non hanno il registro LAT per cui sono piu' sensibili ad errori nel caso in cui le linee tra il PIC e il modulo LCD dovessero essere lunghe (10cm).


Ho appena lasciato il circuito e il programma com'erano, ho sostituito tutti i cavetti sulla bredboard con altri più corti (tutti lunghi uguale sui 5cm), ho fatto attenzione alla piedinatura ma il risultato non è cambiato. Faccio presente che comunque quando usavo MPLAB con l'hitech C, gli LCD funzionavano tranquillamente su breadboard quindi escludo che il problema sia quello, questa è la prima volta che lo sto usando col nuovo XC8 e purtroppo la mia vecchia libreria non è compatibile (dovrei perdere tempo a sistemarla ma al momento non ho tempo).
Ultima Modifica 9 Anni 2 Settimane fa da Chuck_Norris.

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

  • Chuck_Norris
  • Avatar di Chuck_Norris
  • Premium Member
  • Premium Member
Di più
9 Anni 2 Settimane fa #4 da alfa75
Risposta da alfa75 al topic Domandine su librerie Laurtec
Ciao Alessio

In XC8 è gia inclusa una macro per l'uso dei us basta che usi la seguente istruzione __delay_us();
all'interno metti il valore che vuoi ma attenzione a non superare 255 ,altrimenti darà errore

Saluti
Andrea
Ringraziano per il messaggio: Chuck_Norris

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

  • alfa75
  • Avatar di alfa75
  • Platinum Member
  • Platinum Member
Di più
9 Anni 2 Settimane fa - 9 Anni 2 Settimane fa #5 da Chuck_Norris
Risposta da Chuck_Norris al topic Domandine su librerie Laurtec

alfa75 ha scritto: Ciao Alessio

In XC8 è gia inclusa una macro per l'uso dei us basta che usi la seguente istruzione __delay_us();
all'interno metti il valore che vuoi ma attenzione a non superare 255 ,altrimenti darà errore

Saluti
Andrea


Grazie mille alfa!
Allora usando un mix di librerie delay di Mauro, librerie LCD vecchie che avevo dai tempi dell'Hitech C e funzione __delay_us() inclusa in XC8 sono riuscito a far andare il display ma non capisco perchè, con la libreria LCD_44780 di Mauro non ne voglia sapere di andare.... mi scrive sempre caratteri strani
Ultima Modifica 9 Anni 2 Settimane fa da Chuck_Norris.

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

  • Chuck_Norris
  • Avatar di Chuck_Norris
  • Premium Member
  • Premium 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