- Messaggi: 24
- Ringraziamenti ricevuti 0
Nuove librerie
5 Anni 1 Mese fa #26
da adriano51it
Risposta da adriano51it al topic Nuove librerie
Ciao Marcello a proposito di stress: Credo di essere vicino ad un risultato. Come scrivevo nel post precedente ho caricato dagli esmpi della Freedom III il progetto 02_scrittura_di_Messaggio_e_Stringa. Sono riuscito a compilarlo, quindi i percorsi dei vari include sono corretti. Ho usato le librerie 4.1.1. Il progetto usa però un MCP2300 al posto del PCF8574.
Nelle librerie è disponibile il file PCF8574.h PCF8574.c che ho regolarmente incluso , senza ottenere errori di editor. Peccato che non si compili piu. Ti allego il file di progetto zippato. Credo ,penso ,dubito che ci sia qualche problema nei files relativi al PCF8574. Ora provo a caricare il tuo hex che mi hai postato. Ti farò sapere prima di notte.
Nelle librerie è disponibile il file PCF8574.h PCF8574.c che ho regolarmente incluso , senza ottenere errori di editor. Peccato che non si compili piu. Ti allego il file di progetto zippato. Credo ,penso ,dubito che ci sia qualche problema nei files relativi al PCF8574. Ora provo a caricare il tuo hex che mi hai postato. Ti farò sapere prima di notte.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- adriano51it
- Autore della discussione
- Junior Member
Riduci
Di più
5 Anni 1 Mese fa - 5 Anni 1 Mese fa #27
da adriano51it
Risposta da adriano51it al topic Nuove librerie
Buongiorno,ieri sera tardi ho scritto un messaggio cliccando su risposta breve ma non è comparso sul forum. Devo imparare ancora molte cose.... Ho caricato il tuo .hex sul pic senza ottenere risultati.Potrebbe essere, però, che l'indirizzo del PCF8574 sia diverso dal mio (0x20). Cercherò comunque di continuare a tribulare....
Ultima Modifica 5 Anni 1 Mese fa da adriano51it.
Si prega Accedi o Crea un account a partecipare alla conversazione.
- adriano51it
- Autore della discussione
- Junior Member
Riduci
Di più
- Messaggi: 24
- Ringraziamenti ricevuti 0
5 Anni 1 Mese fa #28
da Pinna
Chi vola vale, chi vale vola, chi non vola è un vile
Risposta da Pinna al topic Nuove librerie
Adriano, ho controllato il file LCD_44780_I2C.h del programma che ti ho inviato: gli indirizzi per il PCF8574 dovrebbe essere 0x40, per il pcf8574A dovrebbe essere 0x70 (entrambi High bit, mentre i Low bit sono 0x00 per entrambi).....
Chi vola vale, chi vale vola, chi non vola è un vile
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Pinna
- Moderator
Riduci
Di più
- Messaggi: 1010
- Ringraziamenti ricevuti 107
5 Anni 1 Mese fa #29
da Pinna
Chi vola vale, chi vale vola, chi non vola è un vile
Risposta da Pinna al topic Nuove librerie
Ciao Adriano, forse ho capito qualcosa di più..... allora, se tu usi le librerie Laurtec fono alla 3.3.1 devi includere nel main solamente il file di testata "I2C.h", presente nella plib microchip, assicurandoti di avere bene impostato il percorso..... ma se usi le librerie Laurtec dalla 4.0.0 e successive, devi includere i "module_I2C.h" e "module_I2c.c", entrambi.... questo perchè dalla versione 4, queste librerie si sono distaccate finalmente da quelle microchip, quindi se usi l'header "I2C.h" microchip con questa nuova generazione non sortirai nessun effetto, anche se la compilazione va a buon fine
Partiamo dall'inizio, così mi chiarisco meglio le idee sul problema:
1) tu vuoi pilotare un display lcd utilizzando un pic 18F4550 ed unPCF8574 che lavora in I2C (prima cosa che devi fare è controllare se è il modello PCF8574 o il PCF8574A, poichè cambiano gli indirizzi
2) utilizzi mplabx, xc8 e le librerie laurtec
3) non vengono riconosciute praticamente le istruzioni per l'avvio del protocollo I2C
Consiglio: riparti prima da "Hello World" ricordandoti che se usi la LTlib 3.3.1 devi includere nel percorso la libreria plib microchip, se usi la LTlib 4.x.x devi includere solo questa, ignorando quella microchip... e devi ricordarti di includere sia i file di testata (.h) che quelli sorgente (.c) nel tuo main, tutti quelli che servono. Verifica che il file hex generato funzioni, non basta compilare bene se poi il file hex non va
fai due prove, una utilizzando la 3.3.1 con "I2c.h" microchip ed un altra identica con la libreria 4.x.x
fammi poi conoscere i risultati ottenuti
è parecchio tempo, quasi due anni, che non uso i pic per il fatto che mi sono dedicato all'atmega 2560 per un progetto tutto mio, che prevede sia un bel tutorial (che Mauro pubblicherà su questo sito), sia una demoboard che ho progettato
Partiamo dall'inizio, così mi chiarisco meglio le idee sul problema:
1) tu vuoi pilotare un display lcd utilizzando un pic 18F4550 ed unPCF8574 che lavora in I2C (prima cosa che devi fare è controllare se è il modello PCF8574 o il PCF8574A, poichè cambiano gli indirizzi
2) utilizzi mplabx, xc8 e le librerie laurtec
3) non vengono riconosciute praticamente le istruzioni per l'avvio del protocollo I2C
Consiglio: riparti prima da "Hello World" ricordandoti che se usi la LTlib 3.3.1 devi includere nel percorso la libreria plib microchip, se usi la LTlib 4.x.x devi includere solo questa, ignorando quella microchip... e devi ricordarti di includere sia i file di testata (.h) che quelli sorgente (.c) nel tuo main, tutti quelli che servono. Verifica che il file hex generato funzioni, non basta compilare bene se poi il file hex non va
fai due prove, una utilizzando la 3.3.1 con "I2c.h" microchip ed un altra identica con la libreria 4.x.x
fammi poi conoscere i risultati ottenuti
è parecchio tempo, quasi due anni, che non uso i pic per il fatto che mi sono dedicato all'atmega 2560 per un progetto tutto mio, che prevede sia un bel tutorial (che Mauro pubblicherà su questo sito), sia una demoboard che ho progettato
Chi vola vale, chi vale vola, chi non vola è un vile
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Pinna
- Moderator
Riduci
Di più
- Messaggi: 1010
- Ringraziamenti ricevuti 107
5 Anni 1 Mese fa #30
da adriano51it
Risposta da adriano51it al topic Nuove librerie
Grazie ai tuoi consigli dei post precedenti ho abbandonato le PLib. Ti ho mandato il file di progetto ma ti riassumo la prima parte:
#include <xc.h>
#include "LTlib.h"
#include "LTlib_delay.h"
#include "LTlib_delay.c"
#include "module_I2C.h"
#include "module_I2C.c"
/*#include "MCP2300x.h"
#include "MCP2300x.c"*/
#include "PCF8574.h"
#include "PCF8574.c"
#include "LCD_44780_I2C.h"
#include "LCD_44780_I2C.c"
Come vedi ho seguito i tuoi consigli.
Il main così non si compila. Se commento gli include del PCF8574 e li tolgo all' MCP2300x tutto funziona. Ti allego il risultato della compilazione .
#include <xc.h>
#include "LTlib.h"
#include "LTlib_delay.h"
#include "LTlib_delay.c"
#include "module_I2C.h"
#include "module_I2C.c"
/*#include "MCP2300x.h"
#include "MCP2300x.c"*/
#include "PCF8574.h"
#include "PCF8574.c"
#include "LCD_44780_I2C.h"
#include "LCD_44780_I2C.c"
Come vedi ho seguito i tuoi consigli.
Verifica che il file hex generato funzioni, non basta compilare bene
Il main così non si compila. Se commento gli include del PCF8574 e li tolgo all' MCP2300x tutto funziona. Ti allego il risultato della compilazione .
Si prega Accedi o Crea un account a partecipare alla conversazione.
- adriano51it
- Autore della discussione
- Junior Member
Riduci
Di più
- Messaggi: 24
- Ringraziamenti ricevuti 0
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.