Home
Accesso / Registrazione
 di 

ST626X Corso di programmazione per microcontrollori ST626X Seconda parte 1/2

ST626X Corso di programmazione per microcontrollori ST626X

Per apprendere la logica di funzionamento e le tecniche di programmazione dei nuovi modelli di una delle più diffuse e versatili famiglie di microcontrollori presenti sul mercato: la famiglia ST626X della SGS-Thomson. Seconda puntata.

Nella precedente puntata abbiamo descritto sommariamente le caratteristiche dei due nuovi microcontrollori SGS-Thomson siglati ST6260 e ST6265 che completano la famiglia ST626X la quale, come sappiamo, è composta da altri quattro modelli, precisamente l’ST6210, l’ST6215, l’ST6220 e l’ST6225. Ci siamo inoltre soffermati sul modo di funzionamento dei microcontrollori, funzionamento paragonabile a quello dei computer: in entrambi i casi, infatti, esiste una parte hardware (gestita da una CPU) ed un programma software che “dice” all’hardware come deve comportarsi.

Nei PC il software viene solitamente “installato” attraverso la lettura di una periferica floppy, mentre nei microcontrollori il software si installa in fase di programmazione del dispositivo. Ogni micro dispone di una particolare memoria interna denominata User Program Memory o, in italiano, Memoria Programma Utente. Questa memoria può essere di tipo ROM (Read Only Memory), EPROM (Erasable Programmable Read Only Memory) o OTP (Contrazione di OTPROM, One Time Programmable Read Only Memory). La CPU di ogni micro va a leggere i “comandi” contenuti nella memoria programma e li esegue in sequenza, uno dopo l’altro; quindi i microcontrollori non svolgono alcuna funzione se non vengono precedentemente programmati ovvero se la loro memoria programma utente non viene “riempita” con una sequenza di istruzioni. Di solito la programmazione di un micro si svolge in quattro fasi: per prima cosa l’utente “scrive” in linguaggio assembler la sequenza di “comandi” che vuole far eseguire al micro, poi li converte tramite assemblaggio in comandi comprensibili alla CPU, quindi simula a computer il funzionamento dei comandi “scritti” per verificare che corrispondano a ciò che si desidera ottenere, infine li trasferisce permanentemente o in maniera provvisoria all’interno del microcontrollore.

Vedremo in seguito come eseguire correttamente ognuno di questi passi, per ora limitiamoci a dire che per effettuare una corretta programmazione occorrono due strumenti: un computer e il cosiddetto sistema di sviluppo o Starter Kit. Nel nostro caso è richiesto un computer PC-AT o compatibile con almeno i seguenti requisiti: un hard disk, 640K di memoria convenzionale, una porta parallela e un sistema operativo MS-DOS versione 3.10 o superiore.

ST626X starter kit

Il sistema di sviluppo necessario è siglato ST626X Starter Kit e si presenta come un cofanetto a forma di libro che contiene i seguenti prodotti:
- Una “ST626X Starter Kit board” ovvero una scheda di programmazione che supporta i microcontrollori siglati ST6260 e ST6265 nelle configurazioni EPROM o OTP e nei due packages disponibili cioè in DIP20 o in DIP28. Questa scheda viene collegata alla porta parallela del PC mediante un apposito cavo compreso nello Starter Kit;
- un alimentatore da rete in grado di fornire la corretta tensione alla scheda di programmazione;
- un dischetto da 3” 1/2 contenente l’assemblatore, il simulatore e il linker per la famiglia ST6, il software di programmazione “ST626XPG”, dei programmi dimostrativi e una piccola libreria di subroutines;

Schema a blocchi del micro ST6220 e ST6265

- due integrati tipo ST62E60 in contenitore DIP20 e altrettanti ST62E65 in contenitore DIP28, entrambi dotati di memoria programma di tipo EPROM ovvero riscrivibile, particolarmente utile in fase di messa a punto del software utente;
- la necessaria documentazione tecnica composta da tre manuali in inglese denominati: “ST6 Family Data Book” che rappresenta il databook vero e proprio della famiglia ST6 e contiene tutte le informazioni sull’hardware; “ST6 Family Software Tools Manual” che contiene tutte le informazioni sulle istruzioni software, sull’assemblatore e sul simulatore; “ST626X Family Starter Kit” che contiene le informazioni sull’utilizzo corretto della piastra di programmazione.

ST626X_schema_programmatore

Il Demo

Aprendo il cofanetto dello Starter Kit notiamo che un microcontrollore, precisamente un ST62E65, risulta montato sul text-tool mentre gli altri tre sono racchiusi in un contenitore a parte. Il micro installato è contraddistinto dall’etichetta “DEMOK65” e contiene un piccolo programma dimostrativo. Data la nostra impazienza, mettiamo in disparte i libri e il dischetto e preleviamo dalla scatola la scheda di programmazione e l’alimentatore da rete. Nel lato inferiore destro della scheda troviamo una serie di 6 ponticelli siglati D1, D2, D3, D4, D5 e D6 e denominati “W10 Demo Selection”.

Di questi sei ponticelli cinque risultano aperti mentre il D1 è chiuso da una clips. Inseriamo il plug dell’alimentatore da rete nel connettore J2 della scheda e la spina dello stesso in una presa di corrente, premiamo il tasto Reset e diamo il via al primo demo: “Sound generation”. Il buzzer emette una nota di una certa tonalità, premendo il pulsante “+” la nota diventa sempre più acuta, al contrario agendo su “-” la nota diventa sempre più grave.

scheda_sviluppo_st626x

Se applichiamo un oscilloscopio sul jumper siglato W5 possiamo monitorare il segnale applicato al buzzer, sostanzialmente una quadra la cui frequenza aumenta e diminuisce premendo i pulsanti “+” e “-”. Questo demo mostra la possibilità che hanno i microcontrollori ST626X di generare segnali PWM (Pulse Width Modulation, modulazione della durata dell’impulso). Questi ultimi vengono largamente utilizzati in elettronica, specialmente in applicazioni quali controllo motori, inverter, alimentatori switching, convertitori di frequenza, gruppi di continuità, generatori di note e melodie. Dedicheremo un’intera puntata del Corso alla descrizione del generatore PWM presente nell’ST626X, ma ora continuiamo nell’esplorazione pratica del nostro micro passando al secondo demo: “Music box”.

Togliamo quindi l’alimentatore dalla presa di rete (i tecnici della SGS-Thomson hanno dimenticato l’interruttore di on/off!), spostiamo la clips sul jumper D2, ricolleghiamo l’alimentatore alla presa di rete, premiamo il pulsante Reset e seguentemente il “-”. Il led LD5 si accende e una dolce melodia viene generata dal buzzer. Attendiamo ovviamente che essa termini e premiamo “+” e poi “-”. Il led LD5 si spegne, il led LD4 si accende e una nuova melodia viene generata. Concludendo, agendo sul pulsante “-” diamo il via alla generazione della melodia, agendo su “+” selezioniamo la melodia da riprodurre e il relativo led (da LD1 a LD5) si accende. Buon ascolto dunque: vi anticipiamo che il secondo brano è tratto dalla colonna sonora del film “Incontri ravvicinati del terzo tipo” mentre la quinta melodia non è altro che... la “nona” di Beethoven.

Disposizione_componenti_programmatore_ST626X

Scherzi a parte, questo secondo demo vuole semplicemente dimostrare la precisione del generatore PWM presente nel micro. Togliamo nuovamente alimentazione, portiamo la clips sul jumper D3, ridiamo alimentazione e occupiamoci del terzo demo: “Voltage trimming”. In questo caso viene utilizzato il convertitore analogico/digitale presente nei micro ST626X per leggere la posizione del trimmer RV1 e per visualizzarla sui led LD1, LD2, LD3, LD4 e LD5. Ruotando il trimmer, che è collegato al pin PA4 del micro, vedremo i led accendersi in sequenza. Collegando un tester tra questo pin e massa potremo verificare la seguente relazione tra tensione e led accesi: da 0 a 1 volt un led acceso, da 1 a 2 volt due led accesi, da 2 a 3 volt tre led accesi, da 3 a 4 volt quattro led accesi, da 4 a 5 volt cinque led accesi.

Il kit è disponibile da Futura Elettronica

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 5 utenti e 158 visitatori collegati.

Ultimi Commenti