- Messaggi: 143
- Ringraziamenti ricevuti 1
MPLAB v 8.76
13 Anni 3 Mesi fa #1
da Fausto
MPLAB v 8.76 è stato creato da Fausto
Cambiando il pc mi sono detto, beh scarico anche la versione nuova di MPLAB...mi sono ritrovato senza HI-TECH... e mi da' degli errori che anche in un'altro forum ho trovato.
Penso che sia una questione di impostazione degli eseguibili nel software: include Search path, library search path, linker script search path. ma nulla sempre un l'errore sul delay.c.
per essere sicuro si non aver fatto sciocchezze ho preso pari pari, il software tatto da Giovanni di sottozero, stando attento a non ripetere stessi errori di altri. ma nulla.
qualcuno puo' darmi una mano?
Grazie
Fausto
Penso che sia una questione di impostazione degli eseguibili nel software: include Search path, library search path, linker script search path. ma nulla sempre un l'errore sul delay.c.
per essere sicuro si non aver fatto sciocchezze ho preso pari pari, il software tatto da Giovanni di sottozero, stando attento a non ripetere stessi errori di altri. ma nulla.
qualcuno puo' darmi una mano?
Grazie
Fausto
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Fausto
- Autore della discussione
- Premium Member
Riduci
Di più
13 Anni 3 Mesi fa #2
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: MPLAB v 8.76
Ciao Fausto,
Il C Hictech e C18 non sono lo stesso, ci sono delle differenze per quanto riguarda il nome di alcune variabili e il modo con cui e´ possibile accedere alle stesse. Anche le interruzioni sono gestite in maniera diversa, almeno da un punto di vista sintattico (Gianni di settorezero fa uso del C Hitech).
Per cui se non si prendono le dovute precauzioni un programma scritto in C Hitech potrebbe non compilarsi usando il compilatore C18.
MPLAB e´ solo l´IDE, ovvero un editor. Per compilare il programma scritto viene richiamato il compilatore impostato durante la fase di creazione del progetto.
In particolare potresti selezionare sia C Hitech (se installato) che il C18.
Tu che compilatore hai impostato?
Saluti,
Mauro
Il C Hictech e C18 non sono lo stesso, ci sono delle differenze per quanto riguarda il nome di alcune variabili e il modo con cui e´ possibile accedere alle stesse. Anche le interruzioni sono gestite in maniera diversa, almeno da un punto di vista sintattico (Gianni di settorezero fa uso del C Hitech).
Per cui se non si prendono le dovute precauzioni un programma scritto in C Hitech potrebbe non compilarsi usando il compilatore C18.
MPLAB e´ solo l´IDE, ovvero un editor. Per compilare il programma scritto viene richiamato il compilatore impostato durante la fase di creazione del progetto.
In particolare potresti selezionare sia C Hitech (se installato) che il C18.
Tu che compilatore hai impostato?
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
13 Anni 3 Mesi fa - 13 Anni 3 Mesi fa #3
da Fausto
Risposta da Fausto al topic Re: MPLAB v 8.76
Per seguire il tuo manaule ho scaricato il C18. Non comprendo sinceramente bene la differenza, perchè forse mi baso molto sulla parola linguaggio C.
Se è un "linguaggio" dovrebbe essere solo quello differnziadosi da altri complilatori C per una differente efficienuza nel compattare iil linguaggio e tradurlo in liguaggio macchina con piu' diversa memoria. Che mi dia errori no.Per comprenderci se faccio un programma in linguaggio c con un cilclo for , mi aspetto che funzioni con il compilatore A, B o C.
Comunque me la sto cavando.
il tuo programma lo sto seguendo ma quello di Gianni ho piu' difficolta' piu' che altro perchè è cambiato .h del PIC. Lui dice di definire LEGACY_HEADERS e funziona, ma sto provando con i nuovi nomi, piu' che altro perchè se un giorno prendo in mano un'altro PIC il problema ritorna. Quindi è meglio sbatterci la testa ora.
trovato il codice di fonfigurazione ma mi spiace caro mauro ma devo aprire un'altro Topic
Se è un "linguaggio" dovrebbe essere solo quello differnziadosi da altri complilatori C per una differente efficienuza nel compattare iil linguaggio e tradurlo in liguaggio macchina con piu' diversa memoria. Che mi dia errori no.Per comprenderci se faccio un programma in linguaggio c con un cilclo for , mi aspetto che funzioni con il compilatore A, B o C.
Comunque me la sto cavando.
il tuo programma lo sto seguendo ma quello di Gianni ho piu' difficolta' piu' che altro perchè è cambiato .h del PIC. Lui dice di definire LEGACY_HEADERS e funziona, ma sto provando con i nuovi nomi, piu' che altro perchè se un giorno prendo in mano un'altro PIC il problema ritorna. Quindi è meglio sbatterci la testa ora.
trovato il codice di fonfigurazione ma mi spiace caro mauro ma devo aprire un'altro Topic
Ultima Modifica 13 Anni 3 Mesi fa da Fausto. Motivo: aggiorno
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Fausto
- Autore della discussione
- Premium Member
Riduci
Di più
- Messaggi: 143
- Ringraziamenti ricevuti 1
13 Anni 3 Mesi fa #4
da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: MPLAB v 8.76
Ciao Fausto,
il C in quanto tale e' lo stesso, in particolare ci sono vari standard ANSI ai quali i compilatori fanno riferimento o meglio rispettano.
Ciononostante ci sono cose che lo standard non tratta e quindi possono essere implementate con il "libero arbitrio". Pur prendendo lo stesso componente ovvero microcontrollore, compilatori differenti differiscono in generale sul modo con cui gestiscono le interruzioni e definiscono alcune variabili/costanti interne associate normalmente ai registri del microcontrollore. Questo normalmente porta a forme di inizializzazione differenti.
Normalmente facendo uso di direttive e' possibile verificare in fase di compilazione la versione e tipo del compilatore per cui e' possibile indirizzare lo stesso per far compilare alcune parti piuttosto che altre.
Se vedi i programmi della Microchip e' pieno di direttive proprio per permettere a molte librerie di poter essere compilate sia con il compilatore C18 che il compilatore dell'Hitech.
Saluti,
Mauro
il C in quanto tale e' lo stesso, in particolare ci sono vari standard ANSI ai quali i compilatori fanno riferimento o meglio rispettano.
Ciononostante ci sono cose che lo standard non tratta e quindi possono essere implementate con il "libero arbitrio". Pur prendendo lo stesso componente ovvero microcontrollore, compilatori differenti differiscono in generale sul modo con cui gestiscono le interruzioni e definiscono alcune variabili/costanti interne associate normalmente ai registri del microcontrollore. Questo normalmente porta a forme di inizializzazione differenti.
Normalmente facendo uso di direttive e' possibile verificare in fase di compilazione la versione e tipo del compilatore per cui e' possibile indirizzare lo stesso per far compilare alcune parti piuttosto che altre.
Se vedi i programmi della Microchip e' pieno di direttive proprio per permettere a molte librerie di poter essere compilate sia con il compilatore C18 che il compilatore dell'Hitech.
Saluti,
Mauro
Si prega Accedi o Crea un account a partecipare alla conversazione.
13 Anni 3 Mesi fa #5
da Fausto
Risposta da Fausto al topic Re: MPLAB v 8.76
Ciao Mauro,
ho capito ...... in ritardo.
Mi chiedevo tra me e me quando creavo un progetto e bisogna scegliere il compilatore:"ma perchè 2 compilatori? non ne basta uno? bahhh", SBAGLIATO !!!
Anzi, dopo che ho capito che non posso pensare di programmare in C indipendente dal compilatore che in mano, sono andato a vedere che tipo di compilatore usa un mio fornitore....ecco un terzo C !!! il CCS.... ahlé
Cmq ho capito, è ovvio che gli if, else, while, etc, le operazioni diciamo "scolastiche" me li riconoscono tutti i compilatori, ma gli headers innanzitutto sono diversi e quindi anche le chiamate i settaggi etc.
Non so se sono stato sprovveduto... ma the show must go on...e domani si continua
ho capito ...... in ritardo.
Mi chiedevo tra me e me quando creavo un progetto e bisogna scegliere il compilatore:"ma perchè 2 compilatori? non ne basta uno? bahhh", SBAGLIATO !!!
Anzi, dopo che ho capito che non posso pensare di programmare in C indipendente dal compilatore che in mano, sono andato a vedere che tipo di compilatore usa un mio fornitore....ecco un terzo C !!! il CCS.... ahlé
Cmq ho capito, è ovvio che gli if, else, while, etc, le operazioni diciamo "scolastiche" me li riconoscono tutti i compilatori, ma gli headers innanzitutto sono diversi e quindi anche le chiamate i settaggi etc.
Non so se sono stato sprovveduto... ma the show must go on...e domani si continua
Si prega Accedi o Crea un account a partecipare alla conversazione.
- Fausto
- Autore della discussione
- Premium Member
Riduci
Di più
- Messaggi: 143
- Ringraziamenti ricevuti 1
Moderatori: Mauro Laurenti, Matteo Garia
Registrati al sito
Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.