INTRODUZIONE AL NUTCHIP

Documenti analoghi
LABORATORIO DI SISTEMI

PLC51 AUTOMAZIONE. di G.Filella e C. Befera filella@tin.it

ESERCITAZIONI PRATICHE: Ø Creazione di un decoder BCD/DEC con porte logiche. Ø Esercitazione con decoder 4511 e display 7 segmenti.

CORSO SERALE ( TDP ) DEMOBOARD FN1Z PER PIC 16F877/16F877A

Arduino UNO. Single board microcontroller

Come oggetto della mia tesina, ho scelto di utilizzare un nuovo componente presente sul mercato

Ricevitore Supervisionato RX-24 Dati tecnici

Indruduzione... 1 Il modulo Bluetooth HC Il firmware... 3 Collegamento della scheda... 4 Software PC e l applicazione Android...

Progetti reali con ARDUINO

SUITE BY Pannello Misure BY11250

MST_K12_INV. Regolatore di velocita per motori in CC con comando esterno della inversione della rotazione. Manuale d uso e d installazione

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

Dispense di Informatica per l ITG Valadier

TEL32G Sistema di Allarme e Telecontrollo su rete GSM

minipic programmer / debugger per microcontrollori PIC Marco Calegari

C. P. U. MEMORIA CENTRALE

Comprendere il funzionamento dei convertitori V/f Saper effettuare misure di collaudo

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1

Invio SMS. DM Board ICS Invio SMS

Guida di Pro PC Secure

INTERFACCIA PER PC MEDIANTE PORTA SERIALE

Capitolo. Interfacciamento di periferiche I/O con il PC. 1.1 Il BUS di espansione del PC

CONTATORI ASINCRONI. Fig. 1

Esame di INFORMATICA

IRSplit. Istruzioni d uso 07/10-01 PC

Convertitori numerici in Excel

Laboratorio di Informatica

Dispensa di Informatica I.1

Appunti di Sistemi Elettronici

ALBRE24R2M3A. Descrizione pagina 2. Specifiche tecniche pagina 3. Layout pagina 4, 5. Mappe di cablaggio pagine 6, 7. Dimensioni pagina 8

ANNO SCOLASTICO PROPOSTE PER I PROGRAMMI E LA PIANIFICAZIONE DEL CORSO DI TECNOLOGIA, DISEGNO E PROGETTAZIONE

Ricezione fax integrata e faxtomail

introduzione I MICROCONTROLLORI

4 3 4 = 4 x x x 10 0 aaa

Manuale Terminal Manager 2.0

Manuale di Installazione Serie Kairos 4, Powered By

Corso Base Arduino ed Elettronica

CT2-GSM COMBINATORE TELEFONICO GSM MANUALE D USO E INSTALLAZIONE. Si consiglia di seguire attentamente le istruzioni contenute in questo manuale.

Corso di Elettronica Organizzato dall associazione no-profit Agorà Lesina (FG)

10. Funzionamento dell inverter

Informatica 1 Lezione 1

Mane Lirim Pellegrini Giorgio 5BZ 5BZ

Memorie ROM (Read Only Memory)

Manuale di programmazione BerMar_Drive_Software

TASTIERA CODIFICATA PER SERRATURE

Sistema theremino Collegare celle di carico ai Pin di tipo ADC

Interfacciamento con memorie Pagina 1 di 9

P od o u d z u io i n o e n e d e d l e l l a l a c o c r o ren e t n e e a l a t l er e na n t a a alternatori. gruppi elettrogeni

NUOVA PROCEDURA COPIA ED INCOLLA PER L INSERIMENTO DELLE CLASSIFICHE NEL SISTEMA INFORMATICO KSPORT.

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Il programma CONFELMOD CAD creazione e modifica

MISURATORE DIGITALE MODELLO M890G

EL-USB-2 - Datalogger con interfaccia USB

Presentazione della pratica online

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Come modificare la propria Home Page e gli elementi correlati

IL PLC 1/9. permanente, la memoria volatile e i pin di I/O, oltre ad eventuali altri blocchi specializzati.

Architettura del computer (C.Busso)

Manuale IT_VNA by IZ1PMX

Chapter 1. Circuiti sequenziali: macchine a stati

7^ parte : Acquisizione della temperatura con LM35 e visualizzazione su display LCD. Author: Ing. Sebastiano Giannitto (ITIS M.

HCS-DEC /F Manuale d uso

GUIDA ALLE SOLUZIONI

KEYSTONE. OM8 - EPI 2 Modulo interfaccia AS-i Manuale di istruzione. Indice 1 Modulo Opzionale OM8: Interfaccia AS-i 1

BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D

TUTORIAL: COME USARE UN LM35 PER MISURARE UNA TEMPERATURA SU TUTTA LA SCALA CENTIGRADA

Free_ring control gsm based

Programmatore scenari

GPS ANTIFURTO SATELLITARE KINGSAT-ITALIA Manuale installazione

Corso di Elettronica PROGETTAZONE E REALIZZAZIONE DI CIRCUITI ELETTRICI ED ELETTORONICI

Autoware Ladder Tool (per Arduino ) Basic Tutorial

DENUNCE EDILCONNECT GUIDA COMPILAZIONE

TRASMETTITORE TX-FM-MID/EN

BARRIERE FOTOELETTRICHE PER MISURA AUTOMAZIONE CONTROLLO

Manuale d uso MULTIPROGRAMMATORE

Gerarchia delle memorie

CONVERTITORE SERIALE ASINCRONO RS485 / USB

Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica. prof. Corrado Santoro

DOCUMENTAZIONE J-BO. Progetto FabSchool ITE GINO ZAPPA CLASSE 4D

Codifica: dal diagramma a blocchi al linguaggio C++

Centralina Compatta. Manuale d istruzioni. 04/2015 Dati tecnici soggetti a modifi che. info@psg-online.de

L interfaccia utente di Office 2010

Guida all uso. Esso sarà riportato nell intestazione. Vediamo:

MODULO APRIPORTA CON TASTIERA A CODICE SU

Manuale Installazione e Utilizzo

Arduino: Programmazione

Arduino. SITO DI RIFERIMENTO:

TEL32G Sistema di Allarme e Telecontrollo su rete GSM

Usa lo sfoglialibro su Smart Notebook

Motomate Motomate 3 85

Logica binaria. Porte logiche.

Nell esempio verrà mostrato come creare un semplice documento in Excel per calcolare in modo automatico la rata di un mutuo a tasso fisso conoscendo

STAMPA UNIONE DI WORD

FGCAEN Demo software per Mac OS X Leopard ) Lancio dell applicazione. 2) Apertura della comunicazione seriale

E ora, col cuore leggero per lo scampato pericolo, andiamo ad approfondire, e a scoprire:

MERIDESTER SOFTWARE DI COMUNICAZIONE PER PC

Modulo plug&play MKMB-3-e-3. Interfaccia Modbus/RTU per contatori Iskraemeco MT831 / MT860

Guida all uso di Java Diagrammi ER

Il sensore rilevatore di presenza modalità d uso

MODULO 5 ACCESS Basi di dati. Lezione 4

Transcript:

ISTITUTO TECNICO INDUSTRIALE STATALE Vincenzo CERULLI GIULIANOVA (TE) DIPARTIMENTO DI ELETTRONICA E TELECOMUNICAZIONI LABORATORIO TECNOLOGIA DISEGNO E PROGETTAZIONE INTRODUZIONE AL NUTCHIP

I Nutchip sono circuiti integrati programmabili che consentono di realizzare in modo rapido e semplice automi a stati finiti di media complessità, richiedendo un esiguo numero di componenti esterni. Il microcontrollore utilizzato, è l' AT90S2313 prodotto dalla Atmel;leggendo le specifiche tecniche contenute nel datasheet possiamo scoprire che la frequenza di clock alla quale lavora è compresa tra i 4Mhz ed i 10Mhz ma quella richiesta per il funzionamento dal Firmware interno è di 4Mhz. La memoria interna dove risiede il firmware è di 2K mentre la memoria dove andremo a caricare il programma è una EEPROM da 128Bytes. La capacità di queste memorie è quella di resistere a più di 100.000 scritture e letture prima di diventare inutilizzabili. Quindi lo stesso circuito integrato (Nutchip) può essere riprogrammato più volte per svolgere funzioni diverse. A differenza di altri integrati, la programmazione dei Nutchip non richiede l'utilizzo di costosi dispositivi programmatori e nemmeno la conoscenza di specifici linguaggi di programmazione. Altre caratteristiche interessanti dei Nutchip sono: la possibilità di comandarne il funzionamento attraverso un telecomando a raggi infrarossi o a onde radio; la presenza di un timer interno per generare temporizzazioni da 1 ms a 1000 ore. Gli obiettivi di questo tutorial sono: conoscere l'architettura del nutchip conoscere il software di programmazione Nutstation La finalità è quella di realizzare un automa a stati finiti attraverso la Nutchip Base board progettata e realizzata nel laboratorio di T.D.P.

Schema a blocchi Macchina a stati Il Nutchip contiene una macchina a stati la cui tavola di funzionamento, è programmabile attraverso un'interfaccia seriale. La tavola contempla i 3 ingressi digitali, un comparatore analogico, un timer a 32 bit (da 1 ms a 1000 ore), un decodificatore per telecomando. Il comparatore può essere disattivato dando luogo ad un quarto ingresso digitale. Completano il circuito un sistema di reset ed un oscillatore da 4 MHz con quarzo o filtro ceramico esterni. La memoria non volatile della macchina memorizza fino a 32 stati, 64 condizioni, 6 codici di telecomando e 30 timeout differenti (*). La tabella degli stati ha questo aspetto: (*) Capacità massima teorica. La capacità effettiva può variare in base al tipo di applicazione.

Nome pin Descrizione Numero pin /RESET Reset del chip: mantenendolo basso per 2 cicli di clock il dispositivo si resetta RX, TX Programmazione del chip ( da collegare alla porta seriale del PC) 2, 3 XTAL2 Uscita dell'oscillatore di clock 4 XTAL1 Ingresso oscillatore di clock o ingresso per clock esterno (4MHz) 5 REMOTE Ingresso del decoder di telecomando 6 /ST0 Ingresso di soft-reset: mantenendolo basso per 10mS il chip si porta nello stato ST0 IN1...IN2 Ingressi digitali generici della macchina a stati 8, 9 GND Negativo di alimentazione (ground) 10 IN3 Ingresso digitale generico della macchina a stati 11 IN4 (COMP) Ingresso digitale generico della macchina a stati, oppure ingresso positivo del comparatore analogico (l'ingresso vale 1 se Vin > Aref) AREF Ingresso tensione di riferimento del comparatore analogico 13 /STOP Ingresso di STOP: mantenendolo basso per 10mS l'esecuzione si arresta 14 /HOLD OUT1...OU T4 Ingresso di HOLD: mantenendolo basso per 10mS il timer viene disabilitato Uscite digitali programmabili dalla macchina a stati 16...19 Vcc Alimentazione 5V (da 4 a 6V) 20 1 7 12 15 NOTE:

Absolute maximum ratings Voltage on any pin except /RESET with respect to ground Storage temperature -1.0 to +7.0V -40 C to 105 C Maximum operating voltage Maximum output pin current Maximum current Vcc to GND DC characteristics 6.6 V 40 ma 140 ma Input low voltage (V) Input high voltage (V) Internal pull-up resistor Output current: source Output current: sink Analog comparator offset Analog comparator leakage current Max clock frequency -0,5...(0.2Vcc-0.1) 0.2Vcc+0.9...Vcc+0.5 35...100 kohm 10 ma 20 ma 20 mv max 10 na max 10 MHz Pinout del Nutchip. Il contenitore è dual-in-line (DIL)

Caratteristiche tecniche Ogni Nutchip contiene: un decodificatore di telecomandi una matrice digitale programmabile a 4 ingressi e 4 uscite un timer regolabile da 1 millesimo di secondo a mille ore un comparatore capace di valutare un sensore 3 ingressi digitali preprogrammati. Gli ingressi accettano pulsanti, interruttori, contatti di ogni tipo o circuiti digitali. Accendete dei LED collegandoli alle uscite, oppure pilotate relè, lampade, cicalini, elettrocalamite, motori attraverso semplici circuiti. Fotoresistenze, sensori di temperatura, di suoni, di pressione vanno collegati al comparatore analogico. Il chip funziona sia con telecomandi ad infrarossi che via radio, cambiando semplicemente il ricevitore esterno, che è disponibile come modulo pre-assemblato. Non servono linguaggi di programmazione, per questo sono facili da usare. Basta riempire la tabella che compare a video, per determinare le combinazioni di ingressi e uscite da ottenere. Quindi si trasferisce la matrice al chip tramite la porta seriale del computer. Con la tecnologia ICP (in-circuit programming) la programmazione avviene senza smontare il chip dal circuito finale. CARATTERISTICHE TECNICHE TELECOMANDO TIMER INGRESSI USCITE MATRICE DIGITALE PROGRAMMABILE COMPARATORE ANALOGICO INGRESSI SUPPLEMENTARI FREQUENZA ALIMENTAZIONE DIMENSIONI PROGRAMMAZIONE SOFTWARE CODIFICA A RAGGI INFRAROSSI OPPURE VIA RADIO FINO 6 PULSANTI DIGITALE DA 1 ms a 1000 h PROGRAMMABILE PASSO PER PASSO FINO A 30 TEMPI DIFFERENTI PER PROGRAMMA 4 DIGITALI PROGRAMMABILI COLLEGABILI DIRETTAMENTE A PULSANTI O A INTEGRATI LOGICI 4 DIGITALI PROGRAMMABILI POTENZA: 5 V, 10 ma cad. 4 INGRESSI x 4 USCITE: FINO A 64 COMBINAZIONI DI INGRESSI FINO A 32 COMBINAZIONI DI USCITE A 2 INGRESSI PER TENSIONI DA 0 FINO A 5 V (COLLEGATO ALL'INGRESSO 4) - MARCIA/ARRESTO DEL TIMER - BLOCCO USCITE - RESET 4 MHz CON QUARZO OPPURE OSCILLATORE CERAMICO 5 VOLT (STABILIZZATA) CIRCUITO INTEGRATO A 20 PIEDINI D.I.L. COMPATIBILE PER BASETTE SPERIMENTALI SENZA SALDATURE PORTA SERIALE DEL PC TRAMITE ADATTATORE SISTEMA ICP: NON OCCORRE SMONTARE IL CHIP DAL CIRCUITO NUTSTATION (GRATUITO PER USO NON COMMERCIALE)

La tavola di un Nutchip Come accade per moltissimi integrati digitali, anche per i Nutchip lo stato determina le uscite: i Nutchips sono integrati a stati. I Nutchips hanno quattro uscite: le uscite cambiano solo se anche lo stato cambia, per cui accanto ad ogni stato indicheremo anche la rispettiva combinazione di uscite. Per ogni stato, c'è la massima libertà nello stabilire quali uscite debbano essere a 0 e quali a 1. Ecco qui una tipica tabella di un Nutchip: Tipica tavola della verità di un Nutchip; st00 è un'abbreviazione per 'stato 00', etc. Si tratta di un timer per luci da giardino, luci azionabile da un interruttore o da telecomando. Trascuriamo per il momento la colonna remote (che vedremo più avanti), e notiamo che abbiamo messo in evidenza le uscite utilizzando un'apposita colonna output1...4. E' in queste caselle che si mettono i valori che devono assumere le quattro uscite del Nutchip, stato per stato. Gli stati possono avere anche più di una condizione di ingresso (è il caso dello stato 0 del nostro esempio, che ne conta due), ma sempre e solo una combinazione di uscite. Le uscite non devono necessariamente cambiare fra uno stato e l'altro: nella tabella del nostro esempio l'uscita 1 va a zero nello stato 0, e va a 1 negli stati 2 e 3. Le uscite 2, 3 e 4 invece non cambiano mai. Rispetto alle tavole viste in precedenza, con i Nutchip possiamo anche inserire un trattino '-' quando non ci interessa specificare il valore di un ingresso. Il trattino '-' equivale alla X (don't care) che compare talvolta nella descrizione degli integrati commerciali. Un ingresso con il trattino è come che non esistesse e viene ignorato durante la valutazione della condizione. La colonna remote si riferisce al telecomando: è un ingresso a tutti gli effetti, che invece di '0' o '1' può assumere i valori key1, key2, key3, key4, key5 e key6 corrispondenti ai 6 tasti del telecomando. Inserendo i trattini '---' il telecomando viene ignorato. I Nutchip contengono anche un preciso temporizzatore: per utilizzarlo lo inseriamo nella tavola sotto forma di timeout. Il timeout è una condizione che si verifica quando è passato il tempo caricato nel temporizzatore. Lo stato st01 del nostro esempio è un timeout che si verifica dopo un minuto.

Come si legge la tavola Gli stati sono separati da una linea orizzontale, quindi questa tavola conta tre stati: st00, st01, st02. Ogni riga della tabella contiene una condizione. Quindi nel nostro caso lo stato st00 ha 2 condizioni, mentre st01 e st02 contengono una sola condizione. All'inizio ci si trova nello stato st00. Le uscite cambiano in base allo stato. Si analizzano le sole condizioni dello stato in cui ci si trova: se una condizione si verifica*, ci si porta sullo stato indicato nell'ultima colonna (next). Nota: (*)Può capitare che due o più condizioni si avverino nello stesso momento: in tal caso si passa allo stato indicato da quella che viene per prima sulla tavola. La prima colonna riporta il numero dello stato, esempio st00, st01, st02, st03, st04, etc. Si parte sempre da zero. Subito dopo lo stato c'è il valore assunto dalle uscite OUT1, OUT2, OUT3 e OUT4 quando ci si trova in quello stato. Per ogni stato si inserisce una sola combinazione di valori. La terza colonna, assieme alla successiva, forma la condizione che si deve verificare per effetuare un cambiamento di stato. Qui si specifica il valore necessario sugli ingressi IN1, IN2, IN3 e IN4 perchè la condizione sia soddisfatta. Ogni ingresso può essere a '0' (massa), '1' (positivo) o '-' (indifferente, l'ingresso viene ignorato) Per ogni stato si possono inserire tutte le condizioni che si vuole; le condizioni si inseriscono cliccando l'apposito bottone. In alternativa può comparire la scritta "timeout", nel qual caso la condizione si verifica allo scadere del tempo indicato, qualunque sia il valore degli ingressi e/o del telecomando. Si può inserire un solo timeout per ogni stato, cliccando sull'apposito bottone. La quarta colonna specifica uno dei 6 pulsanti del telecomando. I pulsanti sono indicati come key1... key6. La condizione si verifica quando il pulsante effettivamente premuto corrisponde a quello indicato nella casella. Questa colonna si può usare anche in combinazione con gli ingressi: altrimenti si impostano gli ingressi IN1...IN4 su "indifferente" ('- - - -') L'ultima colonna indica lo stato successivo, ovvero lo stato in cui portarsi quando la condizione si verifica. Se nessuna condizione dovesse essere vera, si rimane nello stato in cui ci si trova.

PROGRAMMARE IL NUTCHIP Per scrivere la tavola della verità utilizziamo Nutstation, un editor specifico che gira sul PC. Le funzioni svolte di volta in volta dal NUTCHIP sono dettate dalla tavola della verità caricata al suo interno. Possiamo aggiungere commenti e spiegazioni ad ogni riga, ed anche inserire uno o più temporizzatori da 1 millesimo di secondo fino a 1000 ore. Nutstation mostra la tavola sullo schermo, e ci aiuta ad inserire i vari bit ordinatamente, uno dopo l'altro.nutstation controlla i dati inseriti in tempo reale, e sottolinea automaticamente le caselle incomplete o errate. Nutstation gestisce anche i codici del telecomando che vogliamo utilizzare. I codici dei telecomandi TV ed RF più diffusi sono già inseriti, ma li possiamo variare a nostro piacimento per adattarli al telecomando che usiamo. E se non conosciamo quale codice trasmette il nostro telecomando? Niente paura: Nutstation dispone anche una funzione di auto apprendimento che legge il codice direttamente dal Nutchip. Per programmare un Nutchip non servono apparecchi complicati, ma un semplice PC con Nutstation. Un cavo seriale e due transistor bastano per realizzare l'interfaccia fra il PC ed il chip. Ogni Nutchip si riprogramma migliaia di volte: un solo Nutchip perciò si usa e si riusa per mille esperienze sempre diverse. Quando siamo pronti per programmare, colleghiamo il circuito alla porta seriale del PC e premiamo l'apposito pulsante dalla pagina di programmazione di Nutstation. La programmazione impiega pochi secondi e si può fare anche con il chip già saldato nel circuito finale: sperimentazione, messa a punto, aggiornamenti e modifiche non sono un problema con i Nutchip. Interfaccia con solo 2 transistor E' l'interfaccia più economica e semplice. Utilizza componenti reperibili ovunque. Useremo questa interfaccia per programmare il nutchip nei nostri progetti. ELENCO COMPONENTI Interfaccia per programmare il Nutchip attraverso la porta seriale del computer. Q1 = transistor BC337 Q2 = transistor BC557 R1, R3= resistenza 4,7 kohm R2, R4= resistenza 10 kohm 1 strip di contatti a 4 poli oppure 4 spezzoncini di filo rigido 1 connettore a vaschetta da 9 poli, femmina, tipo seriale (chiamato anche "Canon" oppure "D") 1 pezzetto di basetta sperimentale tipo "millefori" SE SI UTILIZZA UN NOTEBOOK CON SOLE PORTE USB BISOGNA ACQUISTARE UNA INTERFACCIA USB/RS232. Questo circuito usa soltanto 2 transistor e sfrutta un trucco per ottenere una tensione negativa.

Notate che l'emettitore di Q2 è collegato al positivo, perchè si tratta di un transistor PNP, mentre quello di Q1 è al negativo, perchè si tratta di un transistor NPN. Quando il PC non trasmette fornisce una tensione negativa sul piedino TX: siccome con i Nutchip la trasmissione e la ricezione non si sovrappongono mai, tramite la resistenza R3 questa tensione negativa torna al PC sul piedino RD (ricezione). Quando il NUTCHIP ha un dato da trasmettere, il transistor Q2 commuta fra la tensione negativa così "rubata" e la tensione positiva di alimentazione di 5V. Nel 99% dei PC questo segnale, seppure non standard, risulta perfettamente adeguato. Un bel risparmio di soldi e di spazio!