ciao a tutti, vorrei acquistare il pickit3 per iniziare a programmare qualche piccolo, nulla di complicato, per adesso mi servirebbe semplicemente per creare giochi di luce nei diorami, come lampeggianti, effetti stile neon fulminati ecc.
Essendo a zero in questo campo (per adesso certi effetti li ottengo con ne555 - 556), vorrei acquistare un libro di programmazione, ma non ho ben capito del mplab x ide usa linguaggio C o altro linguaggio di programmazione.
potete aiutarmi?
Va bene un libro di programmazione C o devo cercare qualcosa di più specifico?
cosa mi consigliate in italiano?
Grazie mille per l'aiuto.
Iniziare con i PIC
Moderatore:
Paolino
10 messaggi
• Pagina 1 di 1
1
voti
Ciao,
i più esperti mi correggeranno, Mplab X è un IDE, per usare il C devi installarci insieme un compilatore C per il micro (famiglia) come XC8 se hai intenzione di partire con micro a 8bit.
Se ti posso consigliare un buon manuale "mani in pasta" è "XC8 step by step" scritto da Mauro Laurenti; tra l'altro ha appena pubblicato la nuova versione della sua Freedom con cui puoi provare direttamente gli esempi spiegati
i più esperti mi correggeranno, Mplab X è un IDE, per usare il C devi installarci insieme un compilatore C per il micro (famiglia) come XC8 se hai intenzione di partire con micro a 8bit.
Se ti posso consigliare un buon manuale "mani in pasta" è "XC8 step by step" scritto da Mauro Laurenti; tra l'altro ha appena pubblicato la nuova versione della sua Freedom con cui puoi provare direttamente gli esempi spiegati
-

filippo125
85 1 2 5 - Frequentatore

- Messaggi: 139
- Iscritto il: 6 ago 2008, 15:59
0
voti
Ciao @Macelettronic, quanto riportato è corretto, Mplab X è "solo" un ambiente integrato per lo sviluppo.
Invece, a prescindere dall'ide, il programma da trasferire sul microcontrollore può essere anche scritto in linguaggio "C", ed è auspicabile utilizzarlo (per più motivi).
C'è da precisare che nulla osta alla programmazione in assembly, ci puoi ricorrere inizialmente, per fare qualcosa di contenuto però, contestualmente, conviene avviare e proseguire lo studio del "C".
Cerca, qui sul forum ci sono molti articoli e thread(s) che trattano nello specifico di programmazione, dei chip Microchip, dell'uso del PicKit3 e tanto altro.
Trovi anche discussioni in merito a scelte bibliografiche, poi vanno benissimo anche riferimenti come quello che ha riportato @filippo125.
Saluti
p.s.
sposto l'argomento da Elettronica generale a Firmware e programmazione
Invece, a prescindere dall'ide, il programma da trasferire sul microcontrollore può essere anche scritto in linguaggio "C", ed è auspicabile utilizzarlo (per più motivi).
C'è da precisare che nulla osta alla programmazione in assembly, ci puoi ricorrere inizialmente, per fare qualcosa di contenuto però, contestualmente, conviene avviare e proseguire lo studio del "C".
Cerca, qui sul forum ci sono molti articoli e thread(s) che trattano nello specifico di programmazione, dei chip Microchip, dell'uso del PicKit3 e tanto altro.
Trovi anche discussioni in merito a scelte bibliografiche, poi vanno benissimo anche riferimenti come quello che ha riportato @filippo125.
Saluti
p.s.
sposto l'argomento da Elettronica generale a Firmware e programmazione
W - U.H.F.
-

WALTERmwp
30,2k 4 8 13 - G.Master EY

- Messaggi: 8982
- Iscritto il: 17 lug 2010, 18:42
- Località: le 4 del mattino
0
voti
Gentilissimi entrambi.
Cercherò i manuali consigliati da Filippo125 ed anche le discussioni consigliate da Waltermwp sul forum.
Ho ancora qualche dubbio però
, io ho scaricato dal sito della microchip mplab x ide e xc8, volendo iniziare a programmare per adesso solo a scopo di esercitazione, questi già vanno bene o devo cercare anche un programmatore per C?
Se si, cosa mi consigliate di free che funzioni su Mac?
Se ho capito bene mi consigliate di usare il linguaggio C per programmare i PIC, nulla di "modificato", ma xc8 o mplab lo leggono senza problemi?
Ancora grazie e scusate per le troppe domande.
Cercherò i manuali consigliati da Filippo125 ed anche le discussioni consigliate da Waltermwp sul forum.
Ho ancora qualche dubbio però
Se si, cosa mi consigliate di free che funzioni su Mac?
Se ho capito bene mi consigliate di usare il linguaggio C per programmare i PIC, nulla di "modificato", ma xc8 o mplab lo leggono senza problemi?
Ancora grazie e scusate per le troppe domande.
-

Macelettronic
55 2 6 - Frequentatore

- Messaggi: 212
- Iscritto il: 1 feb 2012, 11:08
0
voti
Un riassunto per chiarire:
Mplab-x è un ide ovvero un ambiente di sviluppo che in una serie di finestre coordinate permette di passare dall'idea al chip programmato. C'è anche una versione per MAC.
Nell' ambiente di sviluppo si integrano i linguaggi (C, Assembly, etc) e le funzioni di compilazione, debug, programmazione, ecc.
XC8 è il linguaggio C ufficiale nella versione di Microchip per i PIC a 8 bit. Ne esistono anche per i 16 e i 32. Sono gratuite nella forma senza ottimizzazione e pagamento per quelle ottimizzate.
PICKIT3 è il tools di Microchip più economica per svolgere le funzioni di debugger e di programmatore. In diversi chip è possibile anche l'emulazione diretta nell'hardware.
La domanda:
"Se ho capito bene mi consigliate di usare il linguaggio C per programmare i PIC, nulla di "modificato", ma xc8 o mplab lo leggono senza problemi?"
purtroppo non mi riesce comprensibile.
1.- Puoi scrivere programmi in C come in Assembly o altri linguaggi. Esistono anche Basic, Pascal da diverse fonti. Il consiglio è di usare l'IDE di Microchip perché è efficace (e pure gratis).
2.- Il linguaggio C NON serve per programmare un bel niente. E' un linguaggio di programmazione e serve per creare i testi sorgente del programma che un compilatore adeguato trasformerà in codici esadecimali da passare al dispositivo di programmazione.
La sequenza per ottenere un chip operante è:
idea->flowchart->sorgente nel linguaggio->compilatore->eseguibile->dispositivo di programmazione->chip programmato (senza considerare il sempre necessario debug)
Quindi, cosa non dovrebbe essere "modificato" e cosa mplab dovrebbe leggere senza problemi ?
Mplab-x è un ide ovvero un ambiente di sviluppo che in una serie di finestre coordinate permette di passare dall'idea al chip programmato. C'è anche una versione per MAC.
Nell' ambiente di sviluppo si integrano i linguaggi (C, Assembly, etc) e le funzioni di compilazione, debug, programmazione, ecc.
XC8 è il linguaggio C ufficiale nella versione di Microchip per i PIC a 8 bit. Ne esistono anche per i 16 e i 32. Sono gratuite nella forma senza ottimizzazione e pagamento per quelle ottimizzate.
PICKIT3 è il tools di Microchip più economica per svolgere le funzioni di debugger e di programmatore. In diversi chip è possibile anche l'emulazione diretta nell'hardware.
La domanda:
"Se ho capito bene mi consigliate di usare il linguaggio C per programmare i PIC, nulla di "modificato", ma xc8 o mplab lo leggono senza problemi?"
purtroppo non mi riesce comprensibile.
1.- Puoi scrivere programmi in C come in Assembly o altri linguaggi. Esistono anche Basic, Pascal da diverse fonti. Il consiglio è di usare l'IDE di Microchip perché è efficace (e pure gratis).
2.- Il linguaggio C NON serve per programmare un bel niente. E' un linguaggio di programmazione e serve per creare i testi sorgente del programma che un compilatore adeguato trasformerà in codici esadecimali da passare al dispositivo di programmazione.
La sequenza per ottenere un chip operante è:
idea->flowchart->sorgente nel linguaggio->compilatore->eseguibile->dispositivo di programmazione->chip programmato (senza considerare il sempre necessario debug)
Quindi, cosa non dovrebbe essere "modificato" e cosa mplab dovrebbe leggere senza problemi ?
-

Brianz
5.828 5 10 - CRU - Account cancellato su Richiesta utente
- Messaggi: 858
- Iscritto il: 24 mar 2016, 11:27
0
voti
Ok tutto chiaro.
Pensavo che xc8, essendo creato dalla microchip per i PIC a 8bit, voleva un suo linguaggio specifico che magari variava da linguaggio C.
Pensavo che xc8, essendo creato dalla microchip per i PIC a 8bit, voleva un suo linguaggio specifico che magari variava da linguaggio C.
-

Macelettronic
55 2 6 - Frequentatore

- Messaggi: 212
- Iscritto il: 1 feb 2012, 11:08
0
voti
Ok, ma guarda che non esiste "un" C.
Dalla sua versione iniziale sono derivati innumeri dialetti che possono avere anche serie differenze tra di loro tanto da che i sorgenti non sono compatibili, se non dopo modifiche.
In particolare , i C per microcontroller contengono elementi specifici per la gestione delle funzioni integrate nell'hardware possono non prevedere o avere limitazioni in altre parti.
In ogni caso, tieni presente che, senza sapere cosa fa il microcontroller, non vai molto lontano, perché le librerie del linguaggio possono non essere sufficienti a risolvere tutti i problemi. Scrivere qualcosa che funzioni in un microrontroller può essere molto diverso da scrivere qualcosa che funzioni n un PC.
Dalla sua versione iniziale sono derivati innumeri dialetti che possono avere anche serie differenze tra di loro tanto da che i sorgenti non sono compatibili, se non dopo modifiche.
In particolare , i C per microcontroller contengono elementi specifici per la gestione delle funzioni integrate nell'hardware possono non prevedere o avere limitazioni in altre parti.
In ogni caso, tieni presente che, senza sapere cosa fa il microcontroller, non vai molto lontano, perché le librerie del linguaggio possono non essere sufficienti a risolvere tutti i problemi. Scrivere qualcosa che funzioni in un microrontroller può essere molto diverso da scrivere qualcosa che funzioni n un PC.
-

Brianz
5.828 5 10 - CRU - Account cancellato su Richiesta utente
- Messaggi: 858
- Iscritto il: 24 mar 2016, 11:27
0
voti
Macelettronic ha scritto:Pensavo che xc8, essendo creato dalla microchip per i PIC a 8bit, voleva un suo linguaggio specifico che magari variava da linguaggio C.
Si tratta di una versione opportunamente adattata dell'ANSI-C. Il manuale di XC8, a pagina 13, dice:
The MPLAB XC8 C Compiler is a free-standing, optimizing ISO C90 (popularly known
as ANSI C) compiler. It supports all 8-bit PIC® microcontrollers: PIC10, PIC12, PIC16
and PIC18 series devices, as well as the PIC14000 device.
Pertanto è certamente un C. Va però capito che si tratta di C per applicazioni embedded, specifico per una certa famiglia di microcontrollori.
Ciao.
Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong
-------------------------------------------------------------
PIC Experience - http://www.picexperience.it
-------------------------------------------------------------
PIC Experience - http://www.picexperience.it
-

Paolino
32,6k 8 12 13 - G.Master EY

- Messaggi: 4226
- Iscritto il: 20 gen 2006, 11:42
- Località: Vigevano (PV)
0
voti
Continuo ancora a disturbarvi, dopo le ultime risposte, vi chiedo cosa mi consigliate di affiancare vicino ad un manuale di programmazione in C, per poter sviluppare semplici codici per i PIC?
Ancora Grazie
Ancora Grazie
-

Macelettronic
55 2 6 - Frequentatore

- Messaggi: 212
- Iscritto il: 1 feb 2012, 11:08
10 messaggi
• Pagina 1 di 1
Torna a Firmware e programmazione
Chi c’è in linea
Visitano il forum: Nessuno e 9 ospiti

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)
