Migrazione da 16f877a a 18f4620

10 Anni 7 Mesi fa #1 da enzocavallaro
Migrazione da 16f877a a 18f4620 è stato creato da enzocavallaro
Gentile Mauro,
Sono un iscritto ed ė poco che sto "frequentando" il sito perché ė da poco che sto cercando di migrare dei progetti dal pic 16f877a al pic 18f4620 che ha lo stesso pin out; tutto per una questione di spazio esaurito nel 16f.

Sfogliando progetti e librerie ho visto un po' dovunque l'include <i2c.h> ma in realtà questo file non sono riuscito a trovarlo.
Volevo prendere spunto perché sto cercando di migrare la libreria i2c che uso, cioè quella fornita gratuitamente ha Gianni (Sottozero) ma mi da un errore nella routine di inizializzazione
sspcon1 = 0x28; con lo riconosce e non so come sostituirlo.
Per favore mi potresti dare un aiutino, con i pic 18f sto studiando tanto ma sono ancora lontano da come uso il 16f877a

Grazie infinite
Enzo

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

  • enzocavallaro
  • New Member
  • New Member
Di più
10 Anni 7 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Migrazione da 16f877a a 18f4620
Benvenuto nel Forum.

Nei PIC16F877 hai SSPCON mentre nel PIC18F4550 (probabilmente anche in quello che hai) SSPCON e' chiamato SSPCON1. Devi usare i caratteri maiuscoli.

la libreria i2c per i PIC18 la trovi comunque nel percorso d'installazione del compilatore C18 o XC8 nella cartella delle librerie. Per vedere il codice devi pero' far riferimento al codice i2c.c.
Nel file i2c.h normalmente trovi i prototipi di funzioni e macro (spesso una bella fetta della libreria)

Saluti,

Mauro

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
10 Anni 7 Mesi fa #3 da firstcolle
Risposta da firstcolle al topic Migrazione da 16f877a a 18f4620
mi lego anche io a questa discussione.
con MPLAB X e XC8 v1.30 non sono riuscito a trovare il file i2c.c tra i file delle librerie microchip. ho trovato invece i2c.h ed includendo questo file tutto funziona. l'unico problema è che se lo includo con <> non viene trovato dal compilatore devo quindi copiarlo all'interno della cartella delle mie librerie...

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

  • firstcolle
  • Avatar di firstcolle
  • Platinum Member
  • Platinum Member
Di più
10 Anni 7 Mesi fa - 10 Anni 7 Mesi fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Migrazione da 16f877a a 18f4620
I sorgenti delle librerie si trovano in percorsi diversi in base al compilatore usato:

Compilatore C18

C:\Program Files (x86)\Microchip\mplabc18\v3.43\src\pmc_common

Compilatore XC8
C:\Program Files (x86)\Microchip\xc8\v1.21\sources\pic18\plib

in XC8 per far trovare la libreria i2c devi includere anche il seguente percorso tra gli include path:

C:\Program Files (x86)\Microchip\xc8\v1.21\include\plib


Il percorso base e versione possono differire.

La libreria e' divisa in funzioni.

Saluti,

Mauro
Ultima Modifica 10 Anni 7 Mesi 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ù
10 Anni 7 Mesi fa #5 da firstcolle
Risposta da firstcolle al topic Migrazione da 16f877a a 18f4620
Grazie mille!! ora si che include!!! credevo che cercasse in automatico almeno nelle sue directory

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

  • firstcolle
  • Avatar di firstcolle
  • Platinum Member
  • Platinum 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