dsBoard
Semplice demo-board per dsPIC30F a 28 pin

La Microchip produce diverse famiglie di microcontrollori, dai piccolissimi 10F a 6 pin ai mostruosi 33F a 100 pin. Rimanendo nell'ambito hobbystico, per semplificare il montaggio in mancanza di attrezzature professionali, possiamo limitare la scelta alle MCU in contenitore dual in line, PDIP o SPDIP che sia. Pur con questa limitazione la scelta è vastissima. Attualmente i dispositivi più potenti con questo tipo di contenitore sono quelli della famiglia dsPIC30F, con caratteristiche molto superiori alla famiglia 18F pur mantenendo la stessa facilità di programmazione e lo stesso ambiente di sviluppo (MPLAB, ICD2, ecc.) e con un compilatore, il C30, anche questo gratuito nella versione student per applicazioni, appunto, hobbystiche.
Nel sito Microchip si trova moltissima documentazione, tutorial e template per cominciare a sviluppare senza eccessivo sforzo.

Con il contenitore SPDIP a 28 pin (Plastic Dual In Line largo come un 14-16-18 pin) ci sono molti modelli che soddisfano diverse esigenze. La Microchip (nota 70043F) divide le sottofamiglie in:
-Motor Control
-General Purpose
-Sensor
All'interno della stessa famiglia, i chip condividono diverse funzioni e una sostituibilità pin-to-pin tra un modello e l'altro. Il problema maggiore infatti è quello della piedinatura. Avendo a disposizione moltissime funzioni e solo 28 pin in uscita, molte funzioni sono multiplexate sullo stesso pin. La serie motor control ha più pin specializzati per PWM e QEI (Quadrature Encoder Interface), le serie General Purpose e Sensor hanno più pin per le porte ADC (Analog/Digital Converter) e Compare.

Una comparazione tra le diverse famiglie è riassunta nella tabella seguente.
-In NERO sono riportati i pin che hanno esattamente le stesse funzioni in tutti i modelli.
-In
VERDE le funzioni comuni a tutte le famiglie, su pin che però multiplexano anche altre funzioni, diverse tra famiglia e famiglia.
-In
BLU le funzioni specifiche della famiglia Motor Control.
-In
ROSSO le funzioni specifiche delle famiglie General Purpose e Sensor.

Con questa variabilità fare una demoboard che soddisfi tutte le esigenze non è facile. La Microchip ne vende molti tipi, quelle semplici per pochi modelli, quelle molto complesse che prevedono diverse famiglie di dsPIC e quelle dedicate ad applicazioni specifiche (network, motor control, eccetera).
La demoboard esposta in queste pagine è stata pensata per essere soprattutto economica e pratica. Le demoboard commerciali hanno il grosso vantaggio di avere tutto a disposizione, sono ottime per iniziare ma, quando si cominciano a sperimentare diverse applicazioni, diventano ingombranti, la possibilità di rovinarle è molto alta e... "sicuramente manca proprio quel collegamento che serviva a me"
Questa è molto semplice, prevede solo l'alimentazione e l'oscillatore però, essendo a singola faccia, è realizzabile in casa con mezzi molto semplici (vedi Bromografo). La dimensione (50x80mm) è di 1/4 di Eurocard (100x160mm), quindi se ne possono incidere 4 su una sola board presensibilizzata del costo di circa 2€. Non ci sono problemi ad usarne una per ogni esperimento, prima di incidere la scheda definitiva, oppure ad usarla come scheda definitiva per i propri prototipi.
PCB in formato PDF
PCB x 4 (formato Eurocard)
Schema elettrico in PDF
Progetto in formato Eagle
Tutti i piedini utili sono riportati su un connettore esterno. L'area millefori può essere usata per aggiungere eventuali componenti esterni.
I (pochi) componenti indicati nello schema possono essere montati o meno a seconda delle proprie esigenze.
Ad esempio, se si ha già a disposizione un'alimentazione continua e/o regolata a 5V, si può fare a meno di montare i componenti relativi al raddrizzatore e/o al regolatore di tensione e saldare al loro posto dei ponticelli (isolati) come indicato nella figura a lato.
Se non serve la stabilità di un oscillatore al cristallo si può fare a meno di montare il quarzo e i relativi condensatori ed usare l'oscillatore RC interno.
È prevista un'alimentazione per la parte analogica diversa da quella per la parte logica, per avere un riferimento di tensione pulito.
Se le porte ADC non sono usate si possono omettere R1, D2 e C17.
Se va bene il riferimento a 5V, si può omettere il diodo zener D2 ma è consigliabile lasciare C17 e sostituire la R1 da 100 Ohm con una da 10 Ohm per ottenere un'alimentazione più pulita.
Un discorso a parte va fatto per la programmazione in-circuit (ICSP) e il debugging. Come si può vedere dalla tabella riassuntiva, questi tipi di MCU multiplexano molte funzioni sulle porte PGC/PGD. Se, ad esempio, si vuole usare il bus I2C (SDA/SCL), occorre usare altre porte per il debugging con strumenti come l'ICD2 o simili. Vedere in proposito la nota Microchip GS003.
Se i pin 17 e 18 sono usati solamente per la programmazione e il debug, occorre inserire i ponticelli su JP1 e JP2 come indicato in figura.
Se invece sono usati per le altre funzioni multiplexate, occorre effettuare due ponticelli di stagno sulle piazzole relative alle porte alternative e spostare i ponticelli dalla posizione 1-2 durante la programmazione del dsPIC alla posizione 2-3 (come indicato in figura) durante il debug.
Nella figura sopra sono usate le porte EMUC1/EMUD1 per il debug.
Nella figura a lato le porte EMUC3/EMUD3.
N.B. Per la programmazione sono sempre usate PGC/PGD, in questi due ultimi casi quindi, i ponticelli vanno spostati dalla posizione 1-2 a quella 2-3 quando si passa dalla programmazione al debug.
aggiornato il 13 - 03 - 2008