Descrizione generale Il timer HC11 è basato su un contatore free-running a 16 bit con un prescaler programmabile a 4 stati La funzione di overflow permette.

Slides:



Advertisements
Presentazioni simili
INGRESSI E USCITE.
Advertisements

MULTIVIBRATORI BISTABILI
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire.
La struttura fisica e logica di un elaboratore
IL MICROCONTROLLORE ST6
Il Sistema Operativo.
1 Processi e Thread Meccanismi di IPC, Inter Process Communication (1)
Circuiti sequenziali Capitolo 5.
UNIVERSITA’ DEGLI STUDI DI TRIESTE FACOLTA’ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA ELETTRONICA A.A / 2005 Tesi di Laurea Triennale SVILUPPO.
Comandi ai dispositivi di I/O + Si usano due metodi per mandare informazioni a un dispositivo: –Istruzioni specifiche di I/O –I/O mappato in memoria (memory.
Caratteristiche Principali PLC Siemens CPU 314C-2 DP
PLC PCD1 della SAIA-Burgess
Meccanica aprile 2011 Urti Conservazione della quantita` di moto e teorema dell’impulso Energia cinetica Urti elastici e anelastici Urto con corpi.
Memoria virtuale Memoria virtuale – separazione della memoria logica dell’utente dalla memoria fisica. Solo alcune parti di un programma devono trovarsi.
MICROCONTROLLORI Di Tiziano Ragazzi.
Architetture dei Calcolatori (Lettere j-z) Il Processore (2)
Circuiti di memorizzazione elementari: i Flip Flop
CONVERSIONE ANALOGICO-DIGITALE, A/D
INTRODUZIONE AI CONVERTITORI ANALOGICO-DIGITALI (ADC)
ANALOGICO-DIGITALI (ADC) DIGITALE-ANALOGICI (DAC)
Corso di Informatica (Programmazione)
PSPICE – Circuiti sequenziali principali
Flip-flop e Registri.
Gerarchie di priorità per la gestione delle interruzioni
L. Servoli - Corso Fisica dei Dispositivi Elettronici 1 Uno scheduler deve avere implementate almeno le seguenti funzionalità: 1) Inizializzatore: preparazione.
Convertitore A/D e circuito S/H
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di.
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi Metà anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per lambiente e il territorio Il calcolatore Stefano Cagnoni e Monica Mordonini Dipartimento.
Ingresso/Uscita u Materiale in: –Queste trasparenze, non basta il testo! –Tanenbaum 2.4.1, 5.6.4, 5.6.5,
TIRO AL BERSAGLIO Di Ilaria Bertoletti Progetto Sincrono esame Reti logiche 30/01/13.
Convertitori Analogico-Digitali
INPUT / OUTPUT. Connessione tra componenti CPU RAM DischiMonitor StampanteTastieraMouse BUS = Interfacce o Controller.
Le procedure di gestione input/output Poiché le operazioni di input/output sono più lente rispetto alla velocità del processore, occorrerà sincronizzarle.
Con i microcontrollori
Algoritmi e Programmazione strutturata
Il Calcolatore Elettronico
Architettura degli elaboratori
I vettore interruzioni
Architettura del calcolatore
Dimitri Caruso Classe 2^ Beat ISIS G. Meroni Anno Scolastico 2007/08
TC 8253 TIMER COUNTER Prof. Marco Solarino.
Introduzione al linguaggio assembly del microprocessore a parte
PERIFERICHE DI TIMING.
Esame Orale Di Reti Logiche
Sia TAPE una periferica di gestione di nastri magnetici in grado di acquisire/fornire dati a 8 bit, e sia CD una periferica di masterizzazione in grado.
Unità centrale di processo
Sistema Operativo (Software di base)
L’azienda di packaging ‘’Choco-Pack’’ dispone di un macchinario per l'impacchettamento di cioccolatini in scatole da 8 pezzi. Per variare l'offerta sul.
Gli interrupt Quando una periferica richiede attenzione alla cpu genera un segnale detto di interrupt.
Architettura di una CPU
MULTIVIBRATORI I multivibratori sono dispositivi che forniscono in uscita tensioni a due livelli diversi qualsiasi. Possono essere positivo e negativo.
WATCHDOG TIMER E’ un oscillatore interno al  C, ma indipendente dal resto dei circuiti, il cui scopo è quello di rilevare eventuali blocchi della CPU.
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Calcolatori Elettronici Il Processore (2)
ADC – SCHEMA GENERALE I convertitori AD sono disponibili come circuiti integrati in diversi modelli, che differiscono fra loro per prezzo, prestazioni.
Gestione dei dispositivi di I/O:
Calcolatori Elettronici Valutazione delle Prestazioni Francesco Lo Presti Rielaborate da Salvatore Tucci.
Sistemi Elettronici Programmabili
LATCH. Circuiti Sequenziali I circuiti sequenziali sono circuiti in cui lo stato di uscita del sistema dipende non soltanto dallo stato di ingresso presente.
8253 (temporizzatore di intervalli)
OSCILLATORE E’ un circuito elettronico che genera forme d'onda senza avere un segnale di ingresso. Nel Microcontrollore gli impulsi generati dall'oscillatore.
DAC A RESISTORI PESATI.
Informatica e Informatica di Base
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
STRUTTURA DELL’ELABORATORE
Gli interrupt Richiesta di attenzione alla cpu. Viene generato un segnale detto di interrupt diretto alla cpu.
CHORUS EFFECT Sviluppo di Software per l’Acquisizione e l’Elaborazione in Tempo Reale di Segnali su Processori DSP. Università degli Studi del Sannio.
Aprile 2015Architettura degli Elaboratori - Mod. B - 2. Macchina di Mano1 Logica di controllo “hardwired”
Transcript della presentazione:

Descrizione generale Il timer HC11 è basato su un contatore free-running a 16 bit con un prescaler programmabile a 4 stati La funzione di overflow permette di estendere le capacità di conteggio oltre i 16 bit del contatore Il timer HC11 comprende: 3 funzioni indipendenti Input Capture (IC) 5 funzioni indipendenti Output Compare (OC)  le funzioni IC permettono di registrare l’istante in cui si verifica un dato evento sui corrispondenti pin di input  le funzioni OC permettono di generare dei segnali sui corrispondenti pin di output o di produrre dei ritardi temporali

Contatore L’elemento centrale del timer HC11 è il contatore free-running a 16 bit: il conteggio parte da $0000 al reset dell’HC11 e poi continua indefinitamente; quando viene raggiunto il valore massimo $FFFF, viene settato un flag di overflow, mentre il conteggio ritorna a $0000 e riparte finché l’HC11 è operativo, non c’è alcun modo di resettare, cambiare o interrompere il conteggio il contatore può essere letto in qualsiasi momento ed è accessibile mediante il registro TCNT: TCNT b15 b0 $100E, $100F il registro TCNT deve essere letto utilizzando un’ istruzione di lettura a 2 byte (es. LDD, LDX,…)

Prescaler Un prescaler programmabile permette di selezionare una tra quattro frequenze di CLOCK per la temporizzazione del contatore: questa possibilità consente al programmatore di operare un compromesso tra la risoluzione e il range del timer il fattore di prescale può essere impostato mediante 2 bit del registro TMSK2: TMSK2 b7 b1 b0 $1024 PR1 PR0 E=2 MHz PR0 PR1 Prescale risoluzione range 1 500 ns 32,77 ms 4 2 s 131,1 ms 8 4 s 262,1 ms 16 8 s 524,3 ms

Prescaler (cont.) Il range del timer è importante perché il software necessario per il funzionamento del timer è più complicato se deve tenere in considerazione eventuali overflow. Se i periodi di tempo con cui si ha a che fare sono inferiori al range del timer, allora l’overflow può essere ignorato e gli intervalli di tempo possono essere calcolati usando le semplici istruzioni aritmetiche a 16-bit, anche qualora nell’intervallo considerato si verifichi un overflow. Esempio: conteggio del timer=$FFF0 si vuole generare un evento dopo 100 (=$64) cicli di CK $FFF0 + $0064 = $10054 si programma il timer in modo che l’evento si verifichi quando il conteggio raggiunge $0054 in 100 cicli di CK il timer va in overflow e ricomincia a contare fino a $0054, quando l’OC accade

Prescaler (cont.) Nella scelta del fattore di prescaler si devono considerare la risoluzione e la lunghezza max. degli intervalli di tempo con cui si ha a che fare. Esempio: supponiamo di dover misurare degli impulsi di durata compresa tra 10 ms e 100 ms  un fattore di prescale pari a 4 garantisce: range=131,1ms poiché il range è > dell’impulso più lungo atteso, l’overflow può essere ignorato risoluzione=2s un errore pari 1 conteggio rappresenta un errore dello 0,02% sull’ impulso più breve

Funzioni Input Capture (IC) Il timer HC11 dispone di 3 funzioni IC indipendenti, accessibili tramite i pin PA0, PA1 e PA2 del port A: Le funzioni IC vengono utilizzate per registrare l’istante in cui si verifica un dato evento esterno Possibili applicazioni: misure di periodo e frequenza misure di durata di un impulso … Ogni funzione IC comprende: un latch a 16 bit logica di riconoscimento dei fronti di ingresso logica di generazione dell’ interrupt

Funzioni Input Capture (cont) Il latch a 16 bit cattura il valore del contatore nell’istante in cui sul pin corrispondente si verifica un dato fronte di segnale, la cui polarità può essere selezionata via software. All’evento di IC il programmatore può eventualmente far corrispondere anche la generazione di una RICHIESTA DI INTERRUPT (IRQ).

Funzioni Input Capture - Registri Latch a 16 bit I registri TIC possono essere letti mediante un’istruzione di lettura a 16 bit, mentre non vengono influenzati dal reset e non possono essere scritti via software. Le 3 funzioni IC sono indipendenti e possono catturare tutte lo stesso valore di conteggio, se i tre fronti di ingresso si verificano contemporaneamente. Il valore presente nel registro TIC corrisponde sempre al fronte più recente che si è verificato sul corrispondente pin.

Funzioni Input Capture - Registri logica di riconoscimento del fronte e di generazione dell’interrupt I bit di stato ICxF (x=1,2,3), vengono automaticamente posti a 1 quando si verifica il fronte previsto sul corrispondente pin di input. Tale bit di stato può essere azzerato scrivendo un 1 nella corrispondente posizione sul registro TFLG1 I bit di controllo ICxI (x=1,2,3), permettono all’utente di configurare ogni funzione IC per essere gestita mediante polling o richiesta di interrupt, senza peraltro influenzare il bit ICxF. ICxI=0  interrupt inibito; ICxI=1  interrupt abilitato; NB - prima di lasciare la routine di servizio dell’interrupt occorre azzerare il bit ICxF

Funzioni Input Capture - Registri opzioni programmabili E’ possibile programmare via software quale fronte del segnale applicato al corrispondente pin di input attiva la funzione IC EDGxB EDGxA configurazione IC disabilitata 1 IC abilitata sul fronte di salita IC abilitata sul fronte di discesa IC abilitata su entrambi i fronti

Funzioni Output Compare (OC) Il timer HC11 dispone di 5 funzioni OC indipendenti, accessibili tramite i pin PA3, PA4, PA5, PA6 e PA7 del port A: Possibili applicazioni: produzione di impulsi produzione di onde quadre generazione di ritardi …. Le funzioni OC vengono utilizzate per far accadere un evento esterno in un dato istante Ogni funzione OC comprende: un registro di confronto a 16 bit un comparatore a 16 bit logica di generazione dell’ interrupt

Funzioni Output Compare (cont.) Il comparatore confronta il valore del contatore free running con il valore contenuto nel registro di confronto a 16 bit; quando si verifica un uguaglianza: viene settato il flag di stato della funzione OC, il corrispondente pin viene posto nello stato scelto dal programmatore mediante opportuni bit di controllo eventualmente viene effettuata una richiesta di interrupt alla CPU

Funzioni Output Compare - Registri Registri di confronto a 16 bit I registri TOC possono essere scritti o letti mediante un’istruzione a 16 bit e vengono forzati a $FFFF durante il reset. Una scrittura del byte più significativo di un registro TOC inibisce la funzione OC per un ciclo di clock (allo scopo di prevenire falsi positivi) Fintanto che una funzione OC è stata impostata in modo da cambiare lo stato del corrispondente pin o da generare un interrupt, tali azioni si verificano ogni volta che il contatore TCNT eguaglia il registro TOC.

Funzioni Output Compare - Registri flag di stato del confronto e generazione dell’interrupt I bit di stato OCxF (x=1,2,3,4,5), vengono automaticamente posti a 1 ogni volta che il corrispondente registro TOC eguaglia il contatore free running. Tale bit di stato può essere azzerato scrivendo un 1 nella corrispondente posizione sul registro TFLG1 I bit di controllo OCxI (x=1,2,3,4,5), permettono all’utente di configurare ogni funzione OC per essere gestita mediante tecnica polling o mediante generazione di richiesta di interrupt, senza peraltro influenzare il corrispondente bit OCxF. OCxI=0  interrupt inibito; OCxI=1  interrupt abilitato; NB - prima di lasciare la routine di servizio dell’interrupt occorre azzerare il bit OCxF

Funzioni Ouput Compare - Registri opzioni programmabili L’utente può programmare l’azione che deve avvenire sul pin corrispondente ad ogni funzione OC indipendentemente dalle altre. Per le funzioni OC2OC5 tale programmazione viene effettuata mediante una coppia di bit di controllo OMx, OLx (x=2,3,4,5) del registro TCTL1: OMx OLx configurazione OC non agisce sul pin (OC1 si) 1 Toggle OCx pin Clear OCx pin Set OCx pin

Funzioni Output Compare – OC1 La funzione OC1 può controllare fino a 5 pin di uscita simultaneamente ed è in grado di controllare anche i pin già soggetti ad un’ altra funzione OC. pin bidirezionale  deve essere definito come output ponendo a 1 il bit più significativo (DDRA7) del registro PACTL (address=$1026) OC1Mx pin PAx OC1Dx 1 affetto da OC1 valore che deve essere assunto dal pin PAx non affetto da OC1 don’t care

Funzioni Output Compare – OC1 La possibilità di controllare delle uscite multiple con una unica funzione OC è utile specialmente quando le uscite sono associate ad un singolo dispositivo esterno (es. segnali di pilotaggio di un motore passo-passo) Quando si utilizza OC1, le rimanenti funzioni OC2OC5, possono essere utilizzate: come generiche funzioni di temporizzazione che non influiscono direttamente sui pin in congiunzione con la funzione OC1 per ottenere ancora maggiore flessibilità Se OC1 ed una altra funzione OCx controllano il medesimo pin e cercano di cambiarlo contemporaneamente, OC1 ha la priorità.

Output Compare Forzato Il meccanismo di forzatura dell’OC fornisce un modo per cambiare lo stato dei pin associati alla funzione OC, senza attendere il confronto della funzione OC stessa. FOCx (x=1,2,3,4,5) = 0  nessun effetto sul corrispondente canale OC 1  al conteggio di timer successivo, il canale viene forzato ad eseguire la azione sul pin programmata La funzione di OC forzato provoca il cambiamento del pin ma non altera il flag di stato OCxF e non genera richieste di interrupt. Lo stato logico alto dei bit FOCx è transitorio e la lettura del registro CFORC non restituirà mai altro che $00.

Funzione Real Time Interrupt (RTI) La funzione RTI può essere impiegata per generare richieste di interrupt con cadenza periodica Il segnale di CLOCK della funzione RTI non può essere mai né fermato né interrotto  il tempo che intercorre tra due time-out successivi della funzione RTI è una costante, indipendente dai tempi di esecuzione del SW la velocità del segnale di CLOCK della funzione RTI può essere impostata mediante 2 bit di controllo del registro PACTL: PACTL b7 b1 b0 $1026 RTR1 RTR0 RTR1 RTR0 RT factor fCK (Hz) TCK (ms) 1 244,14 4,10 2 122,07 8,19 4 61,04 16,38 8 30,52 32,77

Funzione RTI - Registri logica di generazione dell’interrupt Il bit di stato RTIF viene automaticamente posto a 1 al termine di ogni periodo TCK. Tale bit di stato può essere azzerato scrivendo un 1 nella corrispondente posizione sul registro TFLG2. Il bit di controllo RTII permette all’utente di configurare la funzione RTI per essere gestita mediante polling o richiesta di interrupt, senza peraltro influenzare il bit RTIF. RTII=0  interrupt inibito; RTII=1  interrupt abilitato; NB - prima di lasciare la routine di servizio dell’interrupt occorre azzerare il bit RTIF