Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Iniziare con i PIC

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[1] Iniziare con i PIC

Messaggioda Foto UtenteMacelettronic » 9 nov 2016, 20:15

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.
Avatar utente
Foto UtenteMacelettronic
55 2 6
Frequentatore
Frequentatore
 
Messaggi: 212
Iscritto il: 1 feb 2012, 11:08

1
voti

[2] Re: Iniziare con i PIC

Messaggioda Foto Utentefilippo125 » 9 nov 2016, 21:53

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
Avatar utente
Foto Utentefilippo125
85 1 2 5
Frequentatore
Frequentatore
 
Messaggi: 139
Iscritto il: 6 ago 2008, 15:59

0
voti

[3] Re: Iniziare con i PIC

Messaggioda Foto UtenteWALTERmwp » 9 nov 2016, 23:43

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
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8982
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[4] Re: Iniziare con i PIC

Messaggioda Foto UtenteMacelettronic » 10 nov 2016, 17:04

Gentilissimi entrambi.
Cercherò i manuali consigliati da Filippo125 ed anche le discussioni consigliate da Waltermwp sul forum.

Ho ancora qualche dubbio però :oops: , 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.
Avatar utente
Foto UtenteMacelettronic
55 2 6
Frequentatore
Frequentatore
 
Messaggi: 212
Iscritto il: 1 feb 2012, 11:08

0
voti

[5] Re: Iniziare con i PIC

Messaggioda Foto UtenteBrianz » 10 nov 2016, 17:24

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 ?
Avatar utente
Foto UtenteBrianz
5.828 5 10
CRU - Account cancellato su Richiesta utente
 
Messaggi: 858
Iscritto il: 24 mar 2016, 11:27

0
voti

[6] Re: Iniziare con i PIC

Messaggioda Foto UtenteMacelettronic » 10 nov 2016, 17:37

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.
Avatar utente
Foto UtenteMacelettronic
55 2 6
Frequentatore
Frequentatore
 
Messaggi: 212
Iscritto il: 1 feb 2012, 11:08

0
voti

[7] Re: Iniziare con i PIC

Messaggioda Foto UtenteBrianz » 10 nov 2016, 18:25

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.
Avatar utente
Foto UtenteBrianz
5.828 5 10
CRU - Account cancellato su Richiesta utente
 
Messaggi: 858
Iscritto il: 24 mar 2016, 11:27

0
voti

[8] Re: Iniziare con i PIC

Messaggioda Foto UtentePaolino » 10 nov 2016, 18:28

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
Avatar utente
Foto UtentePaolino
32,6k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4226
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[9] Re: Iniziare con i PIC

Messaggioda Foto UtenteMacelettronic » 12 nov 2016, 17:03

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
Avatar utente
Foto UtenteMacelettronic
55 2 6
Frequentatore
Frequentatore
 
Messaggi: 212
Iscritto il: 1 feb 2012, 11:08

1
voti

[10] Re: Iniziare con i PIC

Messaggioda Foto Utentespeedyant » 12 nov 2016, 17:35

Mi verrebbe da dire il datasheet del PIC che stai usando o che vorresti utilizzare.
Son quello delle domande strane!
Avatar utente
Foto Utentespeedyant
5.093 3 6 8
Master
Master
 
Messaggi: 3877
Iscritto il: 9 lug 2013, 18:29
Località: Torino


Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti