Creative Commons BY-NC-ND 2.5Questo sito e tutto il suo contenuto sono distribuiti sotto la licenza Creative Commons Attribuzione - Non Commerciale - Non opere derivate 2.5 Italia e con le condizioni d'uso definite nel disclaimer: siete pregati di leggere entrambi questi documenti prima di usufruire dei contenuti di questo sito. Per alcuni contenuti è necessaria una registrazione gratuita: non è necessario pagare e non è necessario accumulare punteggi per accedere agli articoli e scaricare i sorgenti. Basta solo essere onesti. Se volete che questo sito continui a rimanere attivo, a contribuire ogni giorno alla diffusione della cultura libera, non copiate il materiale per ripubblicarlo in altri luoghi : chi fa questo è solo un miserabile e un perdente. Se volete partecipare su settorezero e rendere le vostre idee, i vostri progetti, fruibili da tutti senza limitazioni, come dovrebbe essere in un paese civile e acculturato, potete farlo tranquillamente.

chipKIT™ uC32 : 512KB per applicazioni web-based. Nel palmo di una mano.

Autore: Giovanni Bernardo | Data pubblicazione: 6 ottobre 2012
Categorie: Arduino chipKIT™ PICmicro 32

Di recente la Digilent ha introdotto due nuove schede nella linea chipKIT™ : il chipKIT uC32™ e il chipKIT WiFi Shield™. In questo articolo mi occuperò del primo, un prossimo articolo riguarderà la scheda di espansione WiFi.

Il chipKIT uC32™ è una scheda di sviluppo Arduino-compatibile che si colloca giusto a metà strada tra il chipKIT UNO32™ (recensione) e il chipKIT MAX32™ (recensione): stesso form-factor (uguale a quello di Arduino UNO™), compattezza e semplicità d’uso del primo ma con una potenza di elaborazione pari al secondo.

Il chipKIT uC32™ è, in parole povere, una versione potenziata del chipKIT UNO32™ : la scheda è la stessa ma è stato utilizzato un picmicro più potente, abbiamo così disponibili il doppio della memoria RAM (32KB contro i 16KB del chipKIT UNO32™) e il quadruplo della memoria programma (ben 512KB!). Con un piccolo costo aggiuntivo rispetto all’UNO32 possiamo in pratica utilizzare l’ uC32 per applicazioni che richiedono un ingente quantitativo di memoria programma quali appunto la creazione di server web (non a caso è stato presentato insieme al WiFi Shield).

Programmazione chipKIT uC32™

E’ possibile programmare il chipKIT uC32™ con MPIDE, l’ambiente di programmazione Arduino-Compatibile, utilizzando quindi lo stesso linguaggio di Arduino e una semplice connessione USB sfruttando il bootloader, oppure alla “maniera classica” con MPLAB IDE, il compilatore MPLAB C compiler for PIC32 MCUs e un programmatore compatibile ICSP (richiesto almeno il PICkit3).

La Digilent ha di recente introdotto un programmatore Low-Cost pensato soprattutto per i prodotti chipKIT e comunque utilizzabile solo con dispositivi funzionanti a 3.3V, che si integra in MPLAB IDE ed MPLAB X: il chipKIT PGM

L’ultima versione di MPIDE la si scarica, come sempre, a questo link. Dopo aver connesso il chipKIT uC32™ al pc tramite il cavetto USB, viene riconosciuta una nuova porta seriale (sulla scheda è montato un convertitore USB/UART della FTDI collegato alla UART1). Da MPIDE dobbiamo quindi selezionare la porta COM creata dal chipKIT™ e quindi anche la scheda corretta dal menù Tools -> Board:

Jumpers

Per mantenere la compatibilità con Arduino e i suoi Shields e per sfruttare le potenzialità aggiuntive offerte dal chipKIT™ rispetto ad Arduino, vi sono alcuni jumpers con cui prendere confidenza:

JP2: consente di bypassare il regolatore di tensione a 5V (NCP1117 che ha una tensione di dropout di 1.2V) incluso sulla scheda quando alimentiamo dal connettore a barile J4. In posizione BYP la scheda deve essere alimentata necessariamente da una sorgente che fornisca 5V (il regolatore viene escluso). In posizione REG, il regolatore viene abilitato ed è possibile alimentare la scheda con una sorgente esterna che abbia una tensione da 7 a 15V. L’assorbimento tipico della scheda è di circa 75mA. Sull’ingresso di JP2 è presente un diodo contro l’inversione di polarità, per cui considerando la caduta di tensione indotta dal diodo e la tensione di dropout del regolatore, con il regolatore attivo non è possibile applicare meno di 7V. Ad ogni modo sulla scheda è sempre presente un secondo regolatore a 3.3V (MCP1725), che non viene mai disabilitato, per il funzionamento della MCU.

In realtà con il regolatore disabilitato non è proprio necessario applicare una tensione di 5V in quanto la MCU viene sempre e comunque alimentata attraverso il regolatore da 3.3V: è possibile applicare una tensione massima di 6V ma bisogna ricordare che poi tale tensione sarà presente anche sul pin indicato come 5V (evidenziato in figura).

JP4: configura il pin n°10 (evidenziato in figura) per essere utilizzato come uscita PWM (jumper verso sinistra come nella figura) o come SSI (Slave Select Input) quando la scheda viene utilizzata come dispositivo SPI Slave (jumper verso destra). In pratica sul pin n°10, collegando il jumper verso sinistra viene collegato il pin RD4 (a cui fa capo il modulo OC5), collegandolo verso destra viene collegato il pin RG9 (a cui fa capo la funzione SS2).

JP5/JP7: servono per configurare il modulo SPI come Master (Jumpers verso l’alto come in figura) o come Slave (jumpers verso il basso). Il modulo SPI utilizzato è sempre il 2.

JP6/JP8: Configurano i pin A4 e A5 (evidenziati nella figura) come ingressi analogici (jumpers verso l’alto come in figura) o come pin per l’I2C (jumpers verso il basso), in questo caso abbiamo SDA su A4 e SCL su A5 (come su Arduino). Il modulo I2C utilizzato è l’1. Mettendo i jumper verso l’alto vengono connessi all’header i pins analogici 4 e 5 (che sul pic sono, rispettivamente, RB12/AN12 e RB14/AN14). Mettendo i jumper verso il basso vengono connessi rispettivamente i pins RG3/SDA1 e RG2/SCL1.

Ulteriori informazioni sono disponibili sul manuale di utilizzo nella pagina ufficiale sul sito della Digilent. Per il resto valgono tutte le considerazioni già fatte per il chipKIT UNO32™.

Compatibilità con i dispositivi/shields a 5V

Come già detto negli articoli precedenti riguardanti il chipKIT UNO32™ e il chipKIT MAX32™, tutti i pin del chipKIT sono 5V-tolerant, quindi è possibile applicare degli shield funzionanti a 5V senza problemi (ma bisogna sempre controllare la lista degli shield compatibili). Anche i pin analogici riescono a tollerare la tensione di 5V dal momento che sono state inserite delle resistenze di protezione e diodi di clamping, ma la tensione massima letta dal modulo A/D è sempre 3.3V, per cui il modulo A/D, oltre i 3.3V leggerà sempre il massimo valore, per cui non è una scelta intelligente utilizzare sensori analogici operanti a 5V.

Comparativa schede chipKIT™

chipKIT Uno32™chipKIT uC32™chipKIT Max32™
MCUPIC32MX320F128PIC32MX340F512HPIC32MX795F512
Frequenza80MHz80MHz80MHz
Memoria Flash128KB512KB512KB
Memoria RAM16KB32KB128KB
IO disponibili424283
Ingressi analogici121216
Moduli OC (pwm)5:
pins 3(OC1), 5(OC2), 6(OC3), 9(OC4), 10(OC5)
5:
pins 3(OC1), 5(OC2), 6(OC3), 9(OC4), 10(OC5)
5:
pins 3(OC1), 5(OC2), 6(OC3), 9(OC4), 10(OC5)
UART2:
UART (RX:pin0, TX:pin1)
UART2 (RX:pin39, TX:pin40)
2:
UART (RX:pin0, TX:pin1)
UART2 (RX:pin39, TX:pin40)
4:
UART0 (RX:pin0, TX:pin1)
UART1 (RX:pin19, TX:pin18)
UART2 (RX:pin17, TX:pin16)
UART3 (RX:pin15, TX:pin14)
Periferiche avanzateRTCC interno (dopo montaggio di X2)RTCC interno (dopo montaggio di X2)USB OTG
10/100 Ethernet MAC
2 controller CAN
RTCC interno (dopo montaggio di X2)
Link documentazionechipKIT Uno32™chipKIT uC32™chipKIT Max32™
Link acquistoMirifica - chipKIT Uno32™Mirifica - chipKIT uC32™Mirifica - chipKIT Max32™

Galleria fotografica chipKIT uC32™

L'articolo ti è piaciuto o ti è stato utile per risolvere un problema? SettoreZero è realizzato soltanto contenuti originali: tutti gli articoli sono curati con passione dagli autori e nulla viene copiato da altri siti. Supporta e mantieni in vita SettoreZero con una donazione: basta soltanto un caffè o una birra. Puoi supportare SettoreZero anche con uno dei progetti elencati nella sezione servizi o partecipare anche tu con un tuo articolo/progetto personale.

Se desiderate che SettoreZero continui a rimanere gratuito e fruibile da tutti, non copiate il nostro materiale e segnalateci se qualcuno lo fa.

Puoi andare alla fine dell'articolo e lasciare un commento. I trackback e i ping non sono attualmente consentiti.

  1. Ancora nessun commento.

Devi essere collegato per lasciare un commento.

  1. Ancora nessun trackback
settorezero.com e il logo Zroid™ ©2007÷2013 Giovanni Bernardo - E' vietata la copia e la distribuzione anche parziale dei contenuti di questo sito web senza l'esplicito consenso dell'autore.
I contenuti di settorezero.com sono distribuiti sotto una licenza Creative Commons Attribuzione-Non Commerciale-Non Opere derivate 2.5 Italia a cui vanno aggiunte le condizioni d'uso definite nel disclaimer.
settorezero.com e tutti i suoi contenuti sono tutelati dalla legge sul diritto d'autore per cui i trasgressori sono perseguibili a norma di legge.
Creative Commons BY-NC-ND 2.5
Il tema di questo sito è basato sul tema Fusion per wordpress, realizzato originariamente da digitalnature e fa uso del plugin Wassup per il computo delle statistiche. Per contattare l'autore siete pregati di utilizzare la sezione contatti.
Per essere aggiornato con tutte le novità di settorezero.com seguici anche anche su Facebook Twitter Tumblr Blogspot Youtube.