Home
Accesso / Registrazione
 di 

ST626X Corso di programmazione per microcontrollori ST626X 2/2

ST626X Corso di programmazione per microcontrollori ST626X

Vedremo in seguito come normalmente tutti i dispositivi digitali e quindi anche i microcontrollori ST626X possono riconoscere sui propri piedini solo due condizioni che coincidono a presenza o assenza di tensione (ovvero: tensione uguale a quella di alimentazioni oppure tensione uguale a zero).

Al contrario, la presenza nei microcontrollori ST626X di un convertitore A/D (da analogico a digitale) consente a questi di discriminare sui propri pin non più due soli stati ma molti di più, anzi per la precisione fino a 255 diversi livelli di tensione.

ST626X_descrizione_jumper

Anche a questa periferica dedicheremo una puntata del Corso ma ricordiamo fin d’ora che grazie ad essa sarà possibile interfacciare direttamente al micro non solo un trimmer ma anche, ad esempio, una fotoresistenza, un termistore, e più in generale qualsiasi sonda con uscita analogica. Inoltre, il convertitore A/D può essere collegato alternativamente a più di un piedino di ingresso/uscita del micro, il che consente di gestire fino ad un massimo di 7 ingressi analogici per i micro ST6260 e 15 ingressi analogici per i micro ST6265. Continuiamo nello studio del programma dimostrativo portando la clips sul jumper D4 per dare il via al quarto demo: “Temperature control”. In questo caso il programma legge la temperatura ambiente misurata dal termistore (siglato THERM.), la converte in digitale e la visualizza sulla barra a led (LD1 ... LD5).

Alla pressione di Reset il programma legge la temperatura ambiente e la memorizza come valore di base, ogni sovratemperatura rilevata causa l’accensione di un led. Toccando il termistore con le mani vedremo uno o due led accendersi; scaldando ulteriormente il termistore (ad esempio con un phon) vedremo accendersi tutti i led. Bene, togliamo ora alimentazione alla scheda e portiamo la clips su D5 per il quinto demo: “Digital to Analog Conversion”. Questa prova dimostra come sia possibile realizzare una conversione da digitale ad analogico utilizzando un segnale PWM e un integratore esterno composto da una resistenza (R1) e da un condensatore (C1).

ST626X_elenco_componenti

In pratica il micro genera sul PB7 un’onda quadra da 0 a 5 volt avente una frequenza di 64 KHz e un duty-cycle iniziale del 50% (il periodo di on è quello di off sono uguali). Premendo il pulsante “-” il duty-cycle viene ridotto a passi del 2%, mentre agendo su “+” viene incrementato sempre a passi del 2%. Nella parte alta della scheda troviamo il blocco denominato INTG. e composto da R1, da C1 e da due punti di test siglati GND e ANA. Collegando un tester a questi ultimi possiamo verificare che premendo “-” la tensione diminuisce sempre più fino ad azzerarsi, al contrario premendo “+” essa aumenta fino a raggiungere i +5 volt.

Il segnale PWM generato viene quindi convertito, grazie alla rete RC, in un valore di tensione. Togliamo nuovamente alimentazione alla scheda e portiamo la clips su D6 per selezionare il sesto ed ultimo programma dimostrativo: “RS232 communication”. Per questo demo dovremo utilizzare anche un Personal Computer dotato di porta seriale su cui avremo precedentemente istallato il software allegato allo Starter Kit. Colleghiamo con un normale cavo per seriali il connettore a 9 poli P2 della scheda al connettore del PC. Accendiamo il computer e alimentiamo la scheda, poi spostiamoci nella directory ST626X, digitiamo “ST6K232” e premiamo Invio. Vedremo apparire sul monitor la seguente frase: “SGS-Thomson Microelectronics, ST626X Starter Kit, RS232 demonstration. This program demonstrates RS232 data trasmission from your ST626X Starter Kit board towards a PC work station. Enter the name of the serial port you want to use: 1 COM1, 2 COM2”. Digitiamo 1 o 2 in funzione della porta seriale prescelta e premiamo Invio.

st626x_zoccolo_textool

Il PC visualizzerà la frase: “The ST6265 program performs Analog to Digital conversion of the voltage generated by the RV1 trimmer on the Starter Kit board. The voltage value in converted into ASCII codes and trasmitted through the RS232 line. Voltage value:“. Colleghiamo ora un tester tra il cursore del trimmer RV1, jumper W6, e massa. Posizioniamo il selettore di quest’ultimo sulla misura di tensioni continue e proviamo a ruotare il trimmer. Se tutto funziona correttamente la tensione visualizzata sul display del tester dovrà coincidere con quella del PC.

Il valore letto dal microcontrollore viene quindi correttamente convertito in digitale e trasmesso serialmente, via RS232, al PC. Bene, terminato anche il sesto ed ultimo demo possiamo togliere l’integrato ST62E65 dallo zoccolo textool e provvedere alla sua cancellazione. Per fare ciò utilizzeremo un comune cancellatore di EPROM dotato di lampada ultravioletta (UVC). Il software che si trovava nel micro è in ogni caso sempre disponibile, per una eventuale riprogrammazione, all’interno della directory ST626/SK626XLI ed è siglato DEMOK65.ASM. LA SCHEDA DI PROGRAMMAZIONE Contrariamente all’ST6220 Starter Kit, per intenderci quello adatto ai micro della sottofamiglia ST621X e ST622X, nell’ST626X Starter Kit troviamo un supporto hardware progettato oltre che per programmare anche per valutare e testare i nuovi microcontrollori ST626X. Tramite il jumper W1 possiamo infatti selezionare la funzione di programmazione (in posizione PROG) oppure quella di test (in posizione USER).

Schema_elettrico_programmatore_ST626X

La prima consente la programmazione vera e propria del micro, ovvero il trasferimento del programma software dalla memoria del PC alla memoria del micro. La seconda posizione serve per testare il corretto funzionamento di un micro già programmato. In quest’ultimo caso la scheda è autosufficiente e non deve essere collegata al PC; il micro esegue il programma presente nella sua memoria interna sfruttando le risorse presenti sulla scheda (quarzo, buzzer, LED, trimmer, RS232, pulsati) o le eventuali risorse esterne che andranno collegate alla scheda utilizzando i connettori di interfaccia J1 e J2. Entriamo ora nel vivo dell’argomento analizzando più da vicino la piastra di programmazione. La prima cosa che notiamo è il texttool o zoccolo a forza di inserzione zero atto ad accogliere i micro ST6 (ST6260 a 20 pin o ST6265 a 28 pin) da programmare o da testare.

Durante l’inserimento del micro bisogna prestare attenzione alla tacca di riferimento dello stesso che deve essere sempre rivolta verso l’alto, inoltre se il micro da programmare è un ST6260 dovremo verificare che il suo bordo inferiore coincida con il bordo inferiore del textool. La selezione del tipo di micro si effettua tramite il jumper W4-DEVICE, verso l’alto si abilita l’ST6265, al contrario, verso il basso si seleziona l’ST6260. La scheda di programmazione comunica con il mondo esterno attraverso 5 connettori siglati P1, P2, J1, J2 e J3. La tensione di alimentazione che deve essere continua e compresa tra 15 e 20 volt viene applicata alla scheda tramite il connettore J3; ricordiamo che nella confezione è compreso un alimentatore da rete che va collegato proprio a questo connettore.

Il connettore P1 (SUBD-25 poli) viene utilizzato per comunicare con il computer e deve essere connesso, utilizzando il cavo in dotazione, alla porta parallela del PC (LPT1 o LPT2). Il connettore P2, un SUBD femmina a 9 poli, unitamente all’integrato U8 e ai cinque condensatori C4, C5, C9, C13 e C14, realizzano la periferica di interfaccia RS232. Su P2 sono dunque presenti tutti i segnali necessari alla comunicazione seriale: l’uscita dati (TX) che coincide col pin 2 del connettore, l’ingresso dati (RX) pin 3, la massa (pin 5) e i segnali di controllo CTS e RTS che coincidono rispettivamente con i pin 7 e 8. L’integrato U8, un ICL232CPE, è connesso alle porte PC0, PC1, PC2 e PC3 del micro attraverso il jumper W7; aprendo quest’ultimo è possibile disabilitare la periferica RS232 e utilizzare i relativi port del micro per altre applicazioni. I connettori J1 e J2 consentono di prelevare tutti i port di ingresso/uscita del micro. In pratica, tutti i pin di I/O del microcontrollore sono connessi alle risorse della scheda tramite dei jumper rimuovendo i quali è possibile selezionare i connettori esterni J1 e J2.

Vediamo quindi con ordine la funzione dei vari jumper, a quali pin del micro sono connessi da una parte e a quale risorsa dall’altra parte. Il jumper W7, come già detto in precedenza, fa parte della periferica seriale e collega il micro all’integrato U8. Il jumper W3 connette i pin PB0, PB1, PB2, PB3 e PB4 ai cinque diodi LED siglati rispettivamente LD5, LD4, LD3, LD2 e LD1. Il jumper W5, se selezionato verso l’alto, collega il pin PB7 del micro al buzzer, al contrario, se chiuso in basso, collega PB7 con l’integratore RC. Il trimmer RV1 è connesso al pin PA4 del micro tramite il jumper W6. Il termistore è invece connesso al PA5 tramite il jumper W9. Il selettore dei demo siglato W10-DEMO va al pin PA3 attraverso il jumper W10-PA3. Infine, i due pulsanti “+” e “-” sono collegati da W8 ai piedini PA5 e PA6 del micro. Bene, terminata la descrizione della parte hardware non ci resta che passare al software dello Starter Kit, argomento che tratteremo nella prossima puntata.

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 3 utenti e 45 visitatori collegati.

Ultimi Commenti