ultimo aggiornamento 23 febbraio 2011 |
|
In questa pagina
è visibile una scheda basata sul processore BS2 SX della PARALLAX, è una
versione ridotta di quella
visibile sempre su questo sito.
Lo schema è simile a quello del sito ufficiale della Parallax, su di
esso non è presente l'interfaccia seriale che è disponibile come
modulo a se stante
sempre su questo sito.
Il prototipo è montato su una basetta millefori, ma è possibile
realizzare un apposito circuito stampato.
La scheda dispone di un connettore a pettine su sui sono presenti i
seguenti segnali
Descrizione
Il microcontrollore utilizzato in questa
scheda è un chip SX28AC/DP prodotto dalla
UBICOM,
sul quale è stato integrato l'interprete del linguaggio PBASIC (ossia Parallax Basic, un'estensione dei linguaggio BASIC realizzata dalla
Parallax ) chip e interprete, insieme, formano il circuito proprietario
BASIC STAMP 2 SX di Parallax.
L'interprete opera da interfaccia tra il programma PBASIC, memorizzato nella EEPROM, e il microcontrollore.
L'interprete riceve, in ingresso, le istruzioni PBASIC e le traduce in una sequenza di istruzioni elementari da fornire, in uscita, al microcontrollore.
Ogni microcontrollore possiede infatti un insieme di istruzioni elementari, detto
instruction set, con cui è possibile programmarlo.
Il linguaggio di tali istruzioni, il cosiddetto "linguaggio macchina", tuttavia, e un linguaggio di basso
livello, complesso e poco intuitivo.
Programmare la scheda fornendo direttamente al microcontrollore le istruzioni elementari, quindi, sarebbe molto difficoltoso.
Grazie all'interprete, invece, si può dialogare con Il microcontrollore
in un linguaggio ad alto livello come il BASIC, che utilizza istruzioni più vicine alla logica dei linguaggio umano, in modo da ottenere programmi di più facile comprensione.
Ogni istruzione PBASIC verrà poi tradotta dall'interprete in una sequenza più o meno lunga di istruzioni elementari, comprensibili al microcontrollore.
Si può immaginare che un'istruzione ad alto livello, come "apri la porta", sia tradotta in una sequenza di istruzioni elementari di basso livello, quali 'inserisci la chiave, poi girala, ora abbassa la maniglia e spingi la
porta".
In realtà, il linguaggio PBASIC è un linguaggio ibrido, in quanto Parallax ha apportato al BASIC standard una serie di modifiche che riguardano principalmente una gestione a più basso livello delle porte di
I/0 (corrispondenti ad alcuni dei 28 piedini del microcontrollore), rendendo in questo modo possibile anche una gestione più efficiente di sensori e attuatori.
Generalmente all'interno di un microcontrollore si trovano una memoria volatile riservata all'esecuzione dei programmi (RAM, Random Access Memory), un'unità che realizza le operazioni aritmetiche
e logiche sul dati (ALU, Aritmethic Logic Unit) e un clock "orologio" cioè il sequenziatore che fornisce la scansione temporale per l'esecuzione delle diverse istruzioni e che, di fatto, esprime la velocità di calcolo dei chip.
Nella nostra scheda esso è rappresentato dal risuonatore ceramico contrassegnato dalla sigla Y1.
In particolare il microcontrollore BASIC STAMP
2 SX ha una velocità di calcolo di 50MHz, in altre parole è in grado di eseguire operazioni matematiche, operazioni di lettura e scrittura della memoria, generazione di segnali dì comando dei dispositivi presenti sul robot alla velocità di
10.000 istruzioni al secondo il che rappresenta 2,5 volte più veloce
della versione BS2.
Microcontrollore: |
SX28AC/SS |
Velocità: |
50 MHz / 10,000 istruzioni per secondo |
EEPROM: |
16K bytes (programmi e dati in 8 banchi * 2kB) |
Lunghezza programma: |
4000 linee di PBASIC |
RAM (variabili): |
32 byte (6 for I/Os e 26 per variabili) + 63 byte per "scratch pad RAM" |
Input / Output: |
16 (fino a 17 con porta seriale) |
Corrente Source / Sink: |
30 mA / 30 mA |
Consumo : |
60 mA operativo, 200 uA in modo sleep |
PC Interface: |
Porta seriale |
Comunicazione: |
300-115K baud I/O |
Range temperatura |
da 0 : 70 gradi |
|
|
---|
Modulo originale PARALLAX |
Schema elettrico
Memoria
La sezione memoria è formata dall’integrato IC2 che è una memoria 24LC128 da 128Kb connessa tramite un collegamento I2C al processore.
Il bus I2C acronimo di Inter
Integrated Circuit (pronuncia i-quadro-ci o i-due-ci), è un sistema di
comunicazione seriale bifilare utilizzato tra circuiti integrati, ideato dalla Philips.
Il protocollo hardware dell'I2C richiede due linee seriali di
comunicazione:
SDA (Serial DAta line) per i dati, di tipo bidirezionale,
SCL (Serial Clock Line) per il clock, serve cper
sincronizzare la comunicazione che in questo caso è di tipo unidirezionale, per
la presenza di questo segnale l'I2C è un bus sincrono
Va aggiunta una connessione di riferimento detta, talvolta impropriamente, GND e
una linea di alimentazione Vdd a cui sono connessi i resistori di pull-up ( R1 e
R2) che può anche non essere condivisa da tutti i dispositivi (le tensioni
tipiche usate sono +5 V o +3,3 V anche se sono ammesse tensioni più basse o più
alte
Nel nostro schema la linea SDA è connessa alla porta RA0 mentre la linea SCL è
connessa alla porta RA1
|
Attenzione: durante
la programmazione occorre togliere il Jumper JP1 che andrà inserito per
permettere l'esecuzione del programma.
Per il reset del processore è sufficiente premere l'apposito pulsante.
Circuito stampato e disposizione componenti
Schema elettrico della scheda OEM originale
|
---|
A questo punto, dopo aver ricontrollato la scheda
per verificare che non ci siano eventuali cortocircuiti tra le piste, si può
procedere al collaudo.
Per provare la scheda si dovrà scaricare (se non è già disponibile) il programma
BASIC Stamp disponibile ora nella versione 2.4.2
Il programma potrà essere scaricato gratuitamente
dal sito della Parallax (Setup-Stamp-Editor-v2.5-(R2).exe) e si dovrà installare seguendo le istruzioni che man mano
appariranno sul video.
Si collegherà quindi la scheda al computer tramite un cavo RS232 connesso all'interfaccia
a transistor o all'interfaccia
con MAX232 tramite il connettore SV1
Scheda con interfaccia RS232 a transistor |
Scheda con interfaccia RS232 con MAX232 |
Eventuale adattatore seriale/usb |
Cavo seriale |
Se nel vostro computer non fosse disponibile una porta seriale, potrà essere
utilizzato un apposito adattatore USB-Seriale.
Si alimenterà la scheda utilizzando una batteria 9V o un qualunque alimentatore
stabilizzato utilizzando una breadboard, L’alimentatore, dovrà fornire una
tensione compresa tra 6 e 9 V
Si dovrà accendere il led rosso D1 che segnala la presenza della tensione d’alimentazione.
Collaudo della comunicazione.
L’ Editor del BASIC Stamp ha un’opzione per assicurarsi che il vostro PC o
laptop possa comunicare con il processore.
Caricare il programma con un doppio-click sull’icona dell’Editor del BASIC Stamp
sul desktop del vostro computer che dovrebbe apparire simile a quello illustrato
La finestra dell’Editor del BASIC Stamp deve essere similare a quella
dell'immagine sotto
Per assicurarsi che il processore sta comunicando con il computer, clickare il menù Run, quindi selezionare Identify opure premendo CTRL+I
Si aprirà una finestra e in contemporanea si accenderanno alternativamente il
led D2 rosso/verde segno d’attività sulla linea seriale.
Se tutto funziona, in corrispondenza della porta seriale cui è collegato il cavo
dovrebbe apparire la scritta BASIC Stamp 2sx
Schede tecniche dei principali componenti utilizzati
Processore SX28
con EE/Flash Program Memory con interprete Pbasic Parallax precaricato |
||
Piedinatura | Datasheet | Foto |
Memoria 128K I2C™ CMOS Serial EEPROM | ||
Piedinatura | Datasheet | Foto |
Risuonatore ceramico 50 MHz | ||
Piedinatura | Datasheet | Foto |
LM 7805 Regolatore di tensione | ||
Piedinatura | Datasheet | Foto dell'integrato |
Elenco revisioni | |
23/02/2011 | Aggiornato pagina, inserito filmato |
11/11/2009 | Aggiornato link fornitore materiale Parallax |
07/07/2008 | Aggiornato pagina |
07/07/2008 | Aggiornato pagina |
11/02/2008 | Emissione preliminare |