Gestione Degli INTERRUPT
|
|
- Maurizio Grassi
- 7 anni fa
- Visualizzazioni
Transcript
1 Gestione Degli INTERRUPT Il PIC 16F876 possiede vari tipi di Interrupt. Si parla di 14 differenti sorgenti di interrupt, ma molto facilmente nella programmazione se ne terranno in considerazione ben pochi: due o, più frequentemente, uno. Questo vuol dire, da una parte, che durante la programmazione ci si dovrà preoccupare di selezionare i tipi di interrupt di nostro interesse e dall' altra che si dovrà programmare le routine ad hoc che ci permettano di gestire gli interrupt. Per fare questo si devono conoscere tre aspetti: il primo è che per ogni interrupt che si verifica la chiamata a sottoprogramma che il PIC esegue è unica per tutti gli interrupt e avviene all' indirizzo 4H della memoria Flash,il secondo è che ci sono ben 5 registri dedicati alla gestione degli interrupt e il terzo è che sta al programmatore verificare il tipo di interrupt che si è verificato andando a testare i registri dedicati. Programmare una ISR interrupt Service Routine All' inizio del programma si deve quindi comunicare al compilatore la giusta sequenza di istruzioni differenziando la routine del programma principale dalla routine della gestione degli interrupt. La posizione di origine del programma si trova all indirizzo 0H, mentre quella di interrupt si trova all indirizzo 04H : per comunicare la giusta posizione al compilatore si devono usare le direttive ORG come di seguito mostrato: ;******************************************************************************************* ; Struttura di un programma.asm che utilizza gli interrupt ( interrupt0.asm ) ;******************************************************************************************** #include <std.inc> Org 0H ; RESET VECTOR Main_program ; all'inizio quando il pic viene alimentato, o subito dopo il ; reset il micro resetta il PC ed esegue ; l'istruzione main program ; cosi facendo il micro salta la ISR (interrupt ServiceRoutine) ;che deve eseguire solo quando viene generato un interrupt Org 4H ; INTERUPT VECTOR ; quando viene generato un interrupt il micro ; salva all'interno dello STACK POINTER l'indirizzo di ritorno ; dalla ISR e carica nel PC il valore 4h ; IN QUESTO SPAZIO cioè TRA org 4h e Retfie dobbiamo ; inserire la ISR ovvero il blocco di istruzioni che gestiscono ;l'evento che ha generato l'interrupt Retfie Main_program ; Questa istruzione si comporta come la Return di una ; subroutine cioè ritorna al programma principale nella ; posizione in cui è stato generato l'interrupt ; la Retfie Riabilita automaticamente il GIE Global Interrupt ; Enable che è il bit che serve per abilitare o disabilitare tutti ; gli interrupts del pic ; in questa parte del sorgente cioè tra Main_program e ; END verrà scritto il programma principale ; all' inizio dovremo CONFIGURARE I PORT e abilitare gli ; interrupt che servono end Autore Gabriele Viscardi 1
2 Dall esempio si nota che subito dopo aver dato origine al programma si deve fare un salto incondizionato (Goto Main_Program) in modo tale che il compilatore riservi il posto alla routine di interrupt nella memoria FLASH. Per riservare il posto alla routine di interrupt (ISR) basta dichiarare la sua posizione con la direttiva ORG 04H e quindi scrivere il suo codice. Per poter programmare bene una ISR è bene conoscere in che modo le interruzioni vengono gestite. Quando si verifica un' interrupt il PIC esegue le seguenti operazioni: 1) Disabilita il bit GIE del registro INTCON in modo tale che non vengano gestiti altri interrupt contemporaneamente, 2) Mette a 1 il Flag relativo all' interrupt che si è verificato (serve per identificare l evento che ha generato l interrupt) 3) Salva all interno dello STACK il contenuto del PC ( questo è l indirizzo di ritorno dalla ISR), e successivamente carica il PC il valore 4h Interrupt Vector ( cioè va ad eseguire la ISR ) Quindi, sapendo questo, durante la programmazione di questa routine si deve: 1) Fare attenzione alla posizione dove si colloca la sequenza iniziale della ISR che deve essere la 0x04 in modo che possa essere chiamata. (Questo viene fatto dalla direttiva ORG 04H) 2) Salvare i dati 10 del registro di stato STATUS e il registro accumulatore W (e altri registri che si pensa possano essere modificati durante l' interruzione). Questa è una delle classiche operazioni fatte nella gestione degli interrupt, essendo queste chiamate in momenti sconosciuti dell esecuzione del programma. 3) Identificare l' interrupt testando i bit di interesse dei registri: INTCON, PIR1,PIR2 4) Chiamare la subroutine di gestione appropriata 5) Cancellare il bit che identifica l' interrupt 6) Ripristinare gli eventuali registri precedentemente salvati 7) Uscire dalla subroutine attraverso l' istruzione retfie che oltre a ricaricare dallo stack il PC ( cioè l indirizzo di ritorno dalla ISR ) riporta a 1 il bit GIE per poter rilevare altri eventuali interrupt Autore Gabriele Viscardi 2
3 ;************************************************************************************************************************ ; Struttura di un programma.asm che utilizza gli interrupt con il salvataggio dei registri principali ;************************************************************************************************************************* #include <STD.INC> EQU 20H ; copia del registro w w_temp EQU 21H ; copia del registro STATUS org org 0H Main_program 04H Banksel w_temp ; salva il contenuto del reg W STATUS,w ; salva il contenuto del reg STATUS ;inizio ISR END_ISR ; fine ISR Banksel,w STATUS ; carica nel registro STATUS la copia salvata in w_temp,w ; carica nel registro w la copia salvata in w temp Retfie ; ritorna al programma principale Main_program END Se all interno della ISR non vengono modificati i registri w status ecc.. non è necessario salvarne una copia prima della, mentre è di grande importanza salvarli se questi vengono modificati. È molto probabile che una routine di questo tipo possa dare dei problemi durante il salvataggio del registro STATUS. Infatti nell esempio precedente si può vedere che la direttiva Banksel prende il posto di una istruzione tipo BSF STATUS,RP0 che presuppone una variazione del registro STATUS prima ancora che si sia fatta una sua copia. Da notare che però anche se tecnicamente non corretta, una routine di questo tipo da problemi solo se viene chiamata, da un interrupt, in un punto del programma dove il banco di memoria selezionato risulta essere diverso da quello in cui si trova STATUS_TEMP, mentre non provoca nessun problema se ad esempio viene richiamata all' interno di un loop infinito in cui si era già preselezionato il banco di memoria di STATUS_TEMP. Nello stesso tempo, però una routine di questo tipo permette una gestione più veloce dell' interrupt rispetto ad una routine che invece non presenta questo tipo di errore. Morale: state attenti quando usate una routine di questo tipo e valutate se il risparmio di tempo è essenziale o se è meglio evitare possibili problemi durante la chiamata di interrupt. Una possibile gestione alternativa dell' interrupt che tiene conto del banco di memoria può essere: Autore Gabriele Viscardi 3
4 Struttura della macro SALVA_REGISTRI Qual è il banco di memoria RAM selezionato prima dell interrupt?? Test RP1 RP1 = 0 Sono nel banco 0 o 1 RP1 = 1 Sono nel banco 2 o 3 Test RP0 Test RP0 RP0 = 0 Sono nel Banco 0 RP0 = 1 Sono nel Banco 1 RP0 = 0 Sono nel Banco 2 RP0 = 1 Sono nel Banco 3 Salvo il registro W in W_temp e il registro FSR in FSR_temp Salvo il registro W in W_temp e il registro FSR in FSR_temp Salvo il registro W in W_temp e il registro FSR in FSR_temp Salvo il registro W in W_temp e il registro FSR in FSR_temp Modifico RP0 e RP1 del registro STATUS_TEMP con RP1 = 0 e RP0 = 0 Modifico RP0 e RP1 del registro STATUS_TEMP con RP1 = 0 e RP0 = 1 Modifico RP0 e RP1 del registro STATUS_TEMP con RP1 = 1 e RP0 = 0 Modifico RP0 e RP1 del registro STATUS_TEMP con RP1 = 1 e RP0 = 1 Goto Goto Goto Goto Autore Gabriele Viscardi 4
5 Contenuto.asm della macro SALVA_REGISTRI btfsc STATUS,RP1 banco_2o3 banco_0o1 btfsc banco_0 bcf bcf banco_1 bsf bcf banco_2o3 btfsc banco_2 bcf bsf banco_3 bsf bsf STATUS,RP0 banco_1 w_temp FSR,0 fsr_temp STATUS,0,RP0,RP1 w_temp FSR,0 fsr_temp STATUS,0,RP0,RP1 STATUS,RP0 banco_3 w_temp FSR,0 fsr_temp STATUS,0,RP0,RP1 w_temp FSR,0 fsr_temp STATUS,0,RP0,RP1 Autore Gabriele Viscardi 5
6 Prima di chiudere la ISR con l istruzione RETFIE è necessario ripristinare il contenuto dei registri precedentemente salvati Contenuto.asm della macro RIPRISTINA_REGISTRI swapf swapf,0 STATUS fsr_temp,0 FSR w_temp,1 w_temp,0 In generale una routine di INTERRUPT è cosi strutturata : #include std.inc 0RG 0RG 0H MAIN_PROGRAM 04H SALVA_REGISTRI ; macro che serve per salvare il contenuto dei registri prima della ISR ; label che serve per identificare l inizio della ISR ( non si può modificare ) ; in questo spazio inserisco tutte le istruzioni che servono per la gestione degli eventi che hanno ; generato l interrupt RIPRISTINA_REGISTRI ; macro che serve per ripristinare il contenuto dei registri precedentemente salvati Retfie ; chiude la ISR e ritorna all esecuzione del main Program MAIN_PROGRAM ; In questa parte devo : ; - configurare i registri per la gestione degli interrupt ; - configurazione dei port ; - istruzioni del programma ; ecc. END Autore Gabriele Viscardi 6
7 Una volta conclusa la programmazione della ISR si deve continuare la scrittura del programma principale. Per fare questo si pone l etichetta usata dal salto incondizionato MAIN_PROGRAM e si programma il cosiddetto Main del Programma. Nella programmazione del corpo del programma, oltre alle funzioni che il PIC dovrà eseguire per il compito che gli è stato assegnato, si deve: 1) Abilitare il tipo di interrupt che si vuole gestire andando a settare a 1 i bit appropriati nei registri: INTCON, PIE1, PIE2 2) Abilitare la segnalazione generale degli interrupt attraverso il settaggio a 1 del bit GIE che si trova nel registro INTCON 3) Tener conto che la chiamata ad un interrupt porta ad un salvataggio nello stack dell' indirizzo contenuto nel PC e che quindi si potrebbe verificare un overflow dello stack!! Registri di Interrupt I registri utilizzati per la gestione degli interrupt sono: INTCON, PIE1, PIE2, PIR1,PIR2 Autore Gabriele Viscardi 7
8 0000 Ogni bit di questi registri ha una sua funzione particolare ed esclusiva nella gestione degli interrupt. Si può però fare una distinzione dei bit in 3 classi : Il bit GIE e PEIE di INTCON I bit, esclusi GIE e PEIE, il cui nome finisce con E, cioè i bit TOIE, INTE, RBIE di INTCON e tutti i bit di PIE1 e PIE2. I bit il cui nome finisce con F, cioè i bit TOIF, INTF, RBIF di INCON e tutti i bit di PIR1 e PIR2. Nella prima classe si è posto il bit GIE che è il bit di abilitazione di tutti gli interrupt che possono essere segnalati. Come si può osservare dalla figura seguente, la segnalazione degli interrupt è fatta attraverso una rete logica multilivello e la comunicazione alla CPU dell interrupt è vincolata dal settaggio a uno di GIE. Allo stesso modo il bit PEIE possiede una grande importanza in quanto blocca la comunicazione di un interrupt da tutta una serie di sorgenti. Questo tipo di interruzioni vengono chiamate Interruzioni di periferica (Peripheral Interrupt). Senza addentrarci nella gestione di ogni singola sorgente di interruzione, possiamo dire che il registro INTCON permette la gestione degli INTERRUPT provenienti dal TIMER0, dal pin RB0/INT della porta B, e dagli ingressi RB4:RB7 sempre del PORTB mentre tutte gli altri interrupt sono generati dalle periferiche e quindi sono trattati in modo a se stante attraverso i registri PIEx e PIRx. Autore Gabriele Viscardi 8
9 La seconda classe si compone dei bit, detti ENABLE BIT, che permettono l abilitazione o la disabilitazione della segnalazione del singolo interrupt. Nell ultima classe si hanno i cosiddetti FLAG BIT che segnalano l avvenuto interrupt. Molto importante è sapere che anche quando una sorgente di interrupt non viene abilitata per mezzo del suo ENABLE BIT, se si verifica un interrupt questo viene segnalato sul FLAG BIT, e la comunicazione alla CPU dell interruzione è ostacolata dall AND logico con l ENABLE BIT. Si vuole far presente che all uscita della routine di getione dell interrupt è compito del programma il ritorno a zero del FLAG BIT che ha generato l interrupt, pena la nuova richiamata della stessa interruzione. Autore Gabriele Viscardi 9
Lezione 8. Figura 1. Configurazione del registro INTCON
Lezione 8 In questa puntata, ci dedicheremo all'impiego dei cosiddetti "interrupt", che tanto incutono temore ai più inesperti. Ma che cosa sono questi interrupt? Come abbiamo già visto, un programma non
DettagliINTRODUZIONE alla PROGRAMMAZIONE di MICROCONTROLLORI
LUCIDI LEZIONI SISTEMI ELETTRONICI INDUSTRIALI www.dismi.unimo.it (People Associated Pavan ) www.microchip.com com (Datasheet PIC - DS30292) (Mid Range Family Manual DS33023) Università degli Studi di
DettagliModi di esecuzione user / kernel
Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione
DettagliMarcia e Arresto di un Motore elettrico
Marcia e Arresto di un Motore elettrico Si vuole realizzare un circuito elettronico gestito da un microcontrollore PIC16F876 che sia in grado di pilotare un motore elettrico AC 220 volt utilizzando i classici
DettagliSistemi Elettronici #6. Subroutine
Subroutine Una subroutine è un insieme di istruzioni che si adoperano più volte insieme e nella stessa sequenza. Se usiamo l espressione RJMP per chiamare una subroutine all uscita di essa non ho un ritorno
DettagliMICROCONTROLLORE PIC16F84A
MICROCONTROLLORE PIC16F84A Il microcontrollore pic16f84a, a differenza di un computer normale e' dotato in un unico integrato di tutti gli elementi fondamentali di un computer, che sono la Cpu, unita'
DettagliLezione 2. Figura 1. Schema del circuito necessario per le prove
Lezione 2 Inizializzazione porte Il primo argomento che tratteremo è la prima operazione da effettuare quando si programma un microcontrollore ovvero settare correttamente le porte ed inizializzare i registri
DettagliPROGRAMMAZIONE ASSEMBLER
PROGRAMMAZIONE ASSEMBLER Esempio di semplice lampeggiatore a LED 072805 Sistemi Elettronici Dicembre 2006 Ultimo aggiornamento: 11 dicembre 2006 1 OBBIETTIVI 1 Discutere delle metodologie di progetto e
DettagliSet di istruzioni Z80 (quarta parte) Pagina 1 di 9 ISTRUZIONI DI SALTO
Set di istruzioni Z80 (quarta parte) Pagina 1 di 9 ISTRUZIONI DI SALTO JP pq E un istruzione di salto assoluto incondizionato. Per salto assoluto si intende il fatto che grazie a quest istruzione, il contenuto
DettagliGESTIONE DEI TEMPI CON IL TIMER1 DEL PIC16F876
GESTIONE DEI TEMPI CON IL TIMER1 DEL PIC16F876 6.0 TIMER1 MODULE The Timer1 module is a 16-bit timer/counter consisting of two 8-bit registers (TMR1H and TMR1L), which are readable and writable. The TMR1
DettagliPeriferiche CPU. Misure e Sistemi Microelettronici Sistemi 6-1 SREG. Data Bus Address Bus Control Bus
Periferiche Interface Interface Interface Interface CPU SREG CREG DREG Il processore scambia informazioni con le periferiche attraverso dei registri. Tipicamente: Control REGister; Status REGister; Data
DettagliPilotare un motore passo-passo, in questo caso il modello della Sanyo le cui caratteristiche principali sono quelle di figura1.
10. Pilotaggio unipolare di un motore passo-passo Scopo della prova Pilotare un motore passo-passo, in questo caso il modello 103-547-52500 della Sanyo le cui caratteristiche principali sono quelle di
DettagliProgrammazione del microcontrollore PIC 16F84
Programmazione del microcontrollore PIC 16F84 2 Indice Capitolo 1: Set di istruzioni del PIC 16F84 1.1 Descrizione sintetica 1.2 Simbologia adottata 1.3 Sintassi 1.4 Descrizione completa Capitolo 2: Variabili,
DettagliI microcontrollori. In sostanza i pic hanno le seguenti caratteristiche:
I microcontrollori Con il termine di microcontrollori si intende un sistema integrato simile ad un microprocessore ma contente su un unico chip oltre la CPU, anche la memoria RAM, memoria dati, memoria
DettagliCalcolatori Elettronici
Calcolatori Elettronici Il linguaggio assemblativo MIPS (4) Le function (2) Gestione dei sottoprogrammi $a0 - $a3 - $v1 $ra : 4 registri argomento per il passaggio dei parametri : due registri per la restituzione
DettagliIntroduzione al PICmicro 16F877 PIC16F877
Introduzione al PICmicro 16F877 I PICmicro (o più brevemente PIC) sono circuiti integrati prodotti dalla Microchip Technology Inc. che implementano microcontrollori (µc), cioè dei componenti che integrano
DettagliComponenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni
Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria
DettagliLezione 4. Figura 1. Schema di una tastiera a matrice di 4x4 tasti
Lezione 4 Uno degli scogli maggiori per chi inizia a lavorare con i microcontroller, è l'interfacciamento con tastiere a matrice. La cosa potrebbe a prima vista sembrare complessa, ma in realtà è implementabile
DettagliIl precedente programma è scritto in linguaggio Assembly per Z80. Il programma indicato sopra deve essere tradotto in codice Assembly per PIC
[LABEL:] CODICE OP1[,OP2][COMMENTO] MNEM LD E,0H PIO EQU 0CH ORG 100H LD E,0 ciclo: IN A,(PIO) LD B,A IN A,(PIO) LD C,A LD A,E ADD A,B SUB C CP 8CH JRZ (ciclo) LD A,1 OUT (PIO),A HALT END Il precedente
DettagliIl problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano
Il problema dello I/O e gli Interrupt Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il Calcolatore e le periferiche Periferica Decodifica Indirizzi Circuiti di Controllo Registri
DettagliComponenti e connessioni. Capitolo 3
Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura
DettagliPUNTATORE LASER AUTOMATICO CON COMANDO VIA ETHERNET
Canzian Sara Liberali Marco 5AT A.S.2007/2008 PUNTATORE LASER AUTOMATICO CON COMANDO VIA ETHERNET Questo sistema permette di posizionare una luce laser in una determinata posizione data dalle coordinate
DettagliSISTEMA DI SVILUPPO MC-16
SISTEMA DI SVILUPPO MC-16 per microcontrollori PIC16F84 - PIC16F876 o MANUALE DI PROGRAMMAZIONE 2 Il sistema MC-16 contiene: Scheda di sviluppo a microcontrollore con PIC16F84 e PIC16F876. Unità di programmazione
DettagliDavide Gennaretti, Matteo Nicolini
Seminario sui Microcontrollori Davide Gennaretti, Matteo Nicolini AA 2003-04 II Facoltà di Ingegneria Elettronica Cesena Cosa sono i microcontrollori? Piccoli computer concentrati in un chip Un Datapath
DettagliInterruzioni o eccezioni? 1
0 Eccezioni in ARM C.Fantozzi, M.Moro Interruzioni o eccezioni? 1 In ARM si usa il termine eccezione (exception) per indicare una generica interruzione, in una delle tante diverse forme (esterna, software,
DettagliInformatica Generale 07 - Sistemi Operativi:Gestione dei processi
Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Cosa vedremo: Esecuzione di un programma Concetto di processo Interruzioni Sistemi monotasking e multitasking Time-sharing Tabella dei
DettagliIl ciclo del processore semplificato BOOTSTRAP FETCH EXECUTE
Roadmap Inquadramento del problema La fase di interrupt nel ciclo del processore Le cause di interruzione Le fasi di uninterruzione Ripristino del programma Latenza Identificazione di dispositivi: soluzioni
DettagliIstruzioni macchina. Dove sono gli operandi? Ciclo della CPU. Elementi di un istruzione macchina. Rappresentazione delle istruzioni
Istruzioni macchina Linguaggio macchina Insieme delle istruzioni (instruction set) che la CPU puo eseguire Capitolo 10 1 2 Elementi di un istruzione macchina Codice operativo Specifica l operazione da
DettagliApplicazioni dei microcontrollori PIC
Applicazioni dei microcontrollori PIC In questa unità vengono esposte le modalità di realizzazione di un circuito hardware con il microcontroller PIC16C84 (o PIC16F84), per la prova dei programmi presentati
Dettaglirelease 3 Il microcontrollore PIC16F877A di Ippolito Perlasca Presentazione
release 3 Il microcontrollore PIC16F877A di Ippolito Perlasca Presentazione Questa è una dispensa sul microcontrollore PIC16F877A. Non è completa: manca la descrizione di alcune periferiche, ma le più
DettagliLezione 1 Caratteristiche principali del PIC16C84 L'hardware
Lezione 1 Nella prima lezione del corso, cercheremo di comprendere come sia fatto internamente il controller più conosciuto di Microchip, ovvero il PIC16C84 poi evoluto nel PIC16F84. Sebbene i microcontroller
DettagliMemoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliGUIDA ALLA COMPILAZIONE DELLA CERTIFICAZIONE UNICA 2015
GUIDA ALLA COMPILAZIONE DELLA CERTIFICAZIONE UNICA 2015 L'applicazione Certificazione Unica 2015 è un prodotto che consente la compilazione della certificazione unica, verifica la correttezza formale dei
DettagliIl sistema delle interruzioni nel processore MC68000 (cenni)
Corso di Calcolatori Elettronici I A.A. 2011-2012 Il sistema delle interruzioni nel processore MC68000 (cenni) Lezione 33 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria
DettagliLezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario
Lezione 2 Principi Fondamentali di SO Interrupt e Caching Sommario Operazioni di un SO: principi fondamentali Una visione schematica di un calcolatore Interazione tra SO, Computer e Programmi Utente 1
DettagliIl compilatore Dev-C++
Il compilatore Dev-C++ Compilatore per Windows: http://www.bloodshed.net/dev/index.html Oppure dal sito: http://web.tiscali.it/no-redirect-tiscali/adinfo/devcpp4970- gcc295.exe Informatica 1 1 Requisiti
DettagliSISTEMI DI ELABORAZIONE
SISTEMI DI ELABORAZIONE CORSO DI LAUREA MAGISTRALE IN INGEGNERIA ELETTRONICA SPECIFICHE DI PROGETTO A.A. 2011/2012 Il progetto consiste nello sviluppo di un applicazione client/server. Client e server
DettagliEsercitazione. Excel: le macro. C.1 Registrazione di macro
Esercitazione Excel: le macro C.1 Registrazione di macro Se una serie di operazioni viene eseguita frequentemente, è possibile creare una macro che esegua automaticamente tali operazioni quando viene richiamata.
DettagliCapitolo X del Testo Ettore Panella Giuseppe Spalierno Corso di Elettronica 3 Edizioni Cupido MICROCONTROLLORE PIC 16F84
Microcontrollore PIC 16F84 1 1. Generalità Capitolo X del Testo Ettore Panella Giuseppe Spalierno Corso di Elettronica 3 Edizioni Cupido MICROCONTROLLORE PIC 16F84 I microcontrollori sono dei circuiti
DettagliSendMed Client v Manuale d uso-
1/22 SendMed Client v. 1.0 -Manuale d uso- 2/22 Indice 1) Introduzione...3 2) Installazione...4 3) Prima dell avvio di SendMed Client...7 4) Primo Avvio: Inserimento dei Dati....8 5) Login SendMed...9
DettagliCiclo del Processore. Memoria
Ciclo del Nella figura seguente è riportata la rappresentazione semplificata ed essenziale di un computer. RESET Canali Di Ingresso Uscita Uscita Ingressi Fig. 1 Rappresentazione semplificata di un computer
DettagliRichiami: Ciclo di sviluppo e ASIM
Richiami: Ciclo di sviluppo e ASIM Corso Calcolatori Elettronici 2 Prof. Nicola Mazzocca Ing. Alessandra De Benedictis Programmi e linguaggio macchina Un programma è una sequenza di istruzioni che rappresentano
DettagliInformatica! Appunti dal laboratorio 1!
Informatica! Appunti dal laboratorio 1! Sistema Operativo! Windows 7, Windows 8, Mac OS X, Linux, Debian, Red Hat, etc etc! Il sistema operativo è un programma che serve a gestire TUTTE le risorse presenti
DettagliNote di Installazione MultiMag
Note di Installazione MultiMag REQUISITI RICHIESTI Requisiti minimi di sistema: CPU, Pentium 4 2.4 Ghz RAM, 2 Gb Server (1 Gb per postazioni workstation) Video, minimo 1024x768 Sistemi Operativi supportati:
DettagliDEC PDP8, III Generazione, '65-'75
Parte I DEC PDP8, III Generazione, '65-'75 PDP8 Architettura (Livello Registri) 12 bit Program Counter PC 12 bit Memory Address Register MAR Random Access Memory RAM 4096 x 16 1 bit I 3 bit Operation Code
DettagliIl precedente programma è scritto in linguaggio Assembly per Z80. Il programma indicato sopra deve essere tradotto in codice Assembly per PIC
[LABEL:] CODICE OP1[,OP2][COMMENTO] MNEM LD E,0H PIO EQU 0CH ORG 100H LD E,0 ciclo: IN A,(PIO) LD B,A IN A,(PIO) LD C,A LD A,E ADD A,B SUB C CP 8CH JRZ (ciclo) LD A,1 OUT (PIO),A HALT END Il precedente
DettagliArchitettura dei computer
Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La
DettagliManuale Sito Videotrend
Manuale Sito Videotrend 1 Sommario INTRODUZIONE...3 PRESENTAZIONE...4 1 GESTIONE DDNS...6 1.1 GESTIONE DDNS...6 1.2 CONNESSIONE DDNS...6 1.3 CREA ACCOUNT DDNS...7 1.4 GESTIONEACCOUNT...7 1.5 IMPIANTI DDNS...8
DettagliEsercitazioni PIC Midrange.
Esercitazioni PIC Midrange. Inserto_d: Introduzione all'interrupt Alcune considerazioni sugli interrupt nei PIC, principalmente quelli a 8 bit. Con i Midrange inizia, nei PIC a 8 bit, ad essere presente
DettagliIl µcontrollore PIC 16F84
Il µcontrollore PIC 16F84 Microchip Tecnology D. Ch. 1 Il grande successo dei microcontrollori ha indotto tutte le grandi case costrutrici di semiconduttori come la Intel, la Philips Semiconductors, la
DettagliMemoria cache, interrupt e DMA
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliFONDAMENTI DI INFORMATICA Lezione n. 11
FONDAMENTI DI INFORMATICA Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di
DettagliLe strutture di controllo in C++
Le strutture di controllo in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli
DettagliArchitettura del PIC 18F452
Controllo Digitale a.a. 2005-2006 Architettura del PIC 18F452 Ing. Federica Pascucci PIC 18F452 Caratteristiche Frequenza operativa: 40 MHz Memorie: Program FLASH memory: 32 KBytes, 16 K-istruzioni memorizzabili
DettagliArchitettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione
Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina
DettagliLA GESTIONE DELLA I/O
LA GESTIONE DELLA I/O Il S.O. È l interfaccia tra l hardware e i programmi che effettuano richieste di I/O Sottosistema di I/O strutturato in moduli chiamati DRIVER uno per ogni dispositivo I Driver rendono
DettagliLinguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche
3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA2 2.1- Funzioni 1 Prerequisiti Programmazione elementare in Java Tecnica top-down Concetto matematico di funzione Compilazione e link di programmi Esecuzione di funzioni
DettagliLinguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA
Lezione n.11 n.11 Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di base relativi
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
DettagliEsercitazione sui grafi di precedenza, fork/join, cobegin/coend.
Esercitazione sui grafi di precedenza, fork/join, co/coend. Esercizio 1. Realizzare mediante il costrutto fork/join il seguente grafo di precedenze. Risposta. cont5 := 2; cont6 := 3; cont7 := 2; S1; fork(l1);
DettagliIl processore. Istituzionii di Informatica -- Rossano Gaeta
Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
DettagliISA Input / Output (I/O) Data register Controller
ISA Input / Output (I/O) Numerose Periferiche di tanti tipi diversi, collegati alla CPU mediante BUS diversi. Solo Input (tastiera, mouse), producono dati che la CPU deve leggere. Solo Output (Schermo),
DettagliTutorial Display LCD e PIC
Tutorial Display LCD e PIC Si fa presente per coloro che sono a "digiuno" con la programmazione dei PIC di leggersi il tutorial in questo link http://www.grix.it/viewer.php?page=429 Descrizione Questo
DettagliL hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software:
Il Software L hardware da solo non è sufficiente per il funzionamento dell elaboratore È necessario introdurre il software: un insieme di programmi che permettono di trasformare un insieme di circuiti
DettagliIntroduzione al C++ (continua)
Introduzione al C++ (continua) I puntatori Un puntatore è una variabile che contiene un indirizzo di memoria pi_greco 3.141592 pi_greco_ptr indirizzo di 3.141592 & DEREFERENZIAZIONE RIFERIMENTO * se x
DettagliImagicle Hotel. Guida alla configurazione delle centrali Siemens Hipath 2000/3000
Imagicle Hotel. Guida alla configurazione delle centrali Siemens Hipath 2000/3000 2016 01/03/2016 2-17 www.imagicle.com Indice 1 CENTRALI SIEMENS SUPPORTATE.... 5 2 COME PROGRAMMARE LA CENTRALE PER L INTEGRAZIONE
DettagliGestione delle subroutine. Appunti di Sistemi per la cl. IV Dinf A cura del prof. Ing. Mario Catalano
Gestione delle subroutine Appunti di Sistemi per la cl. IV Dinf A cura del prof. Ing. Mario Catalano Vantaggi delle subroutines In maniera analoga alle funzioni/metodi dei linguaggi di alto livello, anche
DettagliVogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio.
Lampeggio di 8 led Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio. Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1
DettagliDebug di un programma
Debug di un programma Col termine Debug si intende una fase di sviluppo del software, nella quale si cerca di eliminare gli errori dal programma Due tipi di errori: Errori sintattici, rilevati sempre dal
DettagliEsercizi svolti e da svolgere sugli argomenti trattati nella lezione 25
Esercizi svolti e da svolgere sugli argomenti trattati nella lezione 25 Esercizi svolti Es.. Si progetti in dettaglio il circuito che, dati quattro registri sorgente Si e quattro registri destinazione
DettagliARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10)
ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) Chip con 40 piedini e 29000 transistori Progettato a metà degli anni 70, periodo in cui la densità di integrazione era relativamente bassa ( solo
DettagliTEORIA DEI SISTEMI OPERATIVI. Sistemi monoprogrammatie multiprogrammati
TEORIA DEI SISTEMI OPERATIVI Sistemi monoprogrammatie multiprogrammati 1 STRUTTURA DEL SISTEMA OPERATIVO UTENTE La struttura di un sistema operativo è di tipo gerarchico: i programmi che lo compongono
DettagliAmbiente di sviluppo STEP 7 Micro/Win
Ambiente di sviluppo STEP 7 Micro/Win Viene utilizzato per lavorare esclusivamente con i PLC Simatic della serie S7-200. La finestra di progetto riprodotta in figura 1, che fa riferimento alla versione
Dettagli19 - Eccezioni. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
19 - Eccezioni Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso
DettagliLettura da tastiera e scrittura su monitor
Lettura da tastiera e scrittura su monitor Per poter leggere UN SINGOLO CARATTERE dalla tastiera e visualizzare UN SINGOLO CARATTERE sul monitor si possono utilizzare le funzioni: int getchar (void) (per
DettagliCONTATORE/TIMER PROGRAMMABILE CTC Z80 1. Piedinatura 2. Struttura interna 4. Modo timer 5. Modo Counter 8. Programmazione del CTC 13
CONTATORE/TIMER PROGRAMMABILE CTC Z80 1 Piedinatura 2 Struttura interna 4 Modo timer 5 Modo Counter 8 Programmazione del CTC 13 Gerarchia di priorità delle interruzioni 17 Interfacciamento 17 Contatore/Timer
DettagliPanasonic Technical Reference Guide n 02 Business Communication PBX Section nov. 99 Rev
KX-TD208JT KX_TD208JT Software rev. E e successivi Gestione LCR Panasonic Italia S.p.A. Via Lucini n 19 20125 Milano Tel. 02.67.07.81.86 Pag. 1 di 9 Questa circolare tecnica descrive le programmazioni
DettagliGuida rapida. Self Service Housing
Guida rapida Indice Accesso al tool Modificare la lista dei referenti Inserire una richiesta per movimentazione apparecchiature Inserire una richiesta di assegnazione di IP aggiuntivi Inserire una richiesta
DettagliProgetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando
Progetto del processore e supporto del processore al SO (interruzioni eccezioni) Salvatore Orlando Arch. Elab. - S. Orlando 1 Eccezioni e interruzioni Il progetto del controllo del processore si complica
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE
INTRODUZIONE ALLA PROGRAMMAZIONE Prof. Enrico Terrone A. S: 2008/09 Definizioni Programmare significa risolvere problemi col computer, cioè far risolvere problemi al computer attraverso un insieme di informazioni
DettagliMod DS A LBT 8563 SOFTWARE DI PROGRAMMAZIONE PER MODULO DI CHIAMATA E CENTRALINO 2VOICE
Mod. 1083 DS 1083-022A LBT 8563 SOFTWARE DI PROGRAMMAZIONE PER MODULO DI CHIAMATA E CENTRALINO 2VOICE IndICE 1. DESCRIZIONE GENERALE...2 1.1 Requisiti di sistema...2 1.2 Installazione...2 2. PROGRAMMAZIONE
DettagliIntegrazione Sistema Territorio (SISTER)
Integrazione Sistema Territorio (SISTER) [Guida al prelievo dei dati catastali - SISTER] (Vers. 1.0) 1 Indice 1. Sistema SISTER...3 1.1 Premessa...3 1.2 Ruolo applicativo...3 1.3 Acquisizione dal sistema
DettagliCorso sul PACCHETTO OFFICE. Modulo Access
Corso sul PACCHETTO OFFICE Modulo Access Docente: dott. Marco Cardani Lezione 2 Come creare un database 1 2 Come creare un database Impareremo ora come creare un nuovo database in modo da raggiungere un
DettagliTELEALARM SPS. Istruzioni per il montaggio e la programmazione
TELEALARM SPS Istruzioni per il montaggio e la programmazione Indicazioni generali = messaggi da cellulare o PC a TELEALARM SPS = messaggi da TELEALARM SPS a cellulare o PC A dispositivo non programmato
DettagliIl processore: unità di controllo
Il processore: unità di lo Architetture dei Calcolatori (lettere A-I) L unità di lo L unità di lo è responsabile della generazione dei segnali di lo che vengono inviati all unità di elaborazione Alcune
DettagliGESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI
GESTIONE DELLE PERIFERICHE D INGRESSO/USCITA ARGOMENTI Compiti del sottosistema di I/O Architettura del sottosistema di I/O Gestore di un dispositivo di I/O Gestione e organizzazione dei dischi COMPITI
DettagliPROCESSOR 16F84A. ;configurazione FUSES: oscillatore XT, WDT disabilitato PWRT abilitato, CP disabilitato config 0x3FF1
---- ; Programma per ROBOT MDB3F2004-05 Evolution ; Autore: MICCI Antonello copyright 2005 ---- ------------------------- ;Piedino RA0 ingresso fotocellula dx livello basso rilevazione ostacolo ;Piedino
DettagliArea FA AE Specifica tecnica STM004 Cliente: FA AE
Area FA AE Specifica tecnica STM004 Cliente: FA AE Prodotto: AL2 / E1000 Esempio applicativo di gestione dei Data Logger su E1032 Mod. FA_STM_00 Data: 05.11.08 Pag. 1/13 STM004.doc Rev. 00 Preparato da:
DettagliCorso di Informatica Applicata. Lezione 7. Università degli studi di Cassino
Università degli studi di Cassino Corso di Laurea in Ingegneria della Produzione Industriale Corso di Informatica Applicata Lezione 7 Ing. Saverio De Vito e-mail: saverio.devito@portici.enea.it Tel.: +39
DettagliUniversità degli studi di Roma La Sapienza. Laboratorio di Automatica
Università degli studi di Roma La Sapienza DIS Dipartimento di Informatica e Sistemistica Laboratorio di Automatica Implementazione di un controllore PID digitale per il controllo di posizione di un motore
DettagliErrori frequenti Cicli iterativi Array. Cicli e array. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A.
Cicli e array Laboratorio di Programmazione I Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7 Lez. 8 - Introduzione all ambiente
DettagliDispense di Informatica Anno Scolastico 2008/2009 Classe 3APS. Dall'Algoritmo al Programma
Istituto Tecnico Statale Commerciale Dante Alighieri Cerignola (FG) Dispense di Informatica Anno Scolastico 2008/2009 Classe 3APS Dall'Algoritmo al Programma Pr.: 002 Ver.:1.0 Autore: prof. Michele Salvemini
DettagliImagicle Hotel. Guida alla configurazione delle centrali innovaphone
Imagicle Hotel. Guida alla configurazione delle centrali innovaphone 2016 01/03/2016 2-17 www.imagicle.com Indice 1 CENTRALI INNOVAPHONE SUPPORTATE.... 5 2 COME PROGRAMMARE LA CENTRALE PER L INTEGRAZIONE
DettagliElettronica dei Sistemi Programmabili A.A. 2013-2014. Microcontrollori. Introduzione allo sviluppo di progetti
Elettronica dei Sistemi Programmabili A.A. 2013-2014 Microcontrollori Introduzione allo sviluppo di progetti Premessa Qualunque sistema basato su microcontrollore deve eseguire un codice memorizzato in
DettagliPanasonic. Panasonic. Digital Super Hybrid System Centrale KX-TD208JT. Programmazione ARS (LCR) KX-TD208JT Rev. P541E o successive
Panasonic Digital Super Hybrid System 02-1999 Centrale KX-TD208JT Programmazione ARS (LCR) KX-TD208JT Rev. P541E o successive Novembre 1999 Panasonic Italia S.p.A. Business Communication - PBX Section
DettagliPianificazione e creazione di comunità
CAPITOLO 4 Pianificazione e creazione di comunità Questo capitolo fornisce i concetti e le procedure per la pianificazione e la creazione di comunità mediante l uso di Network Assistant. Per informazioni
DettagliAssembly. Modello x86
Assembly Modello x86 1 Il microprocessore Un MICROPROCESSORE è un circuito integrato dotato di una struttura circuitale in grado di attuare un prefissato SET di ISTRUZIONI 2 Caratteristiche del microprocessore
DettagliCORSO di AUTOMAZIONE INDUSTRIALE
CORSO di AUTOMAZIONE INDUSTRIALE (cod. 8469-21029) APPELLO del 22 Giugno 2011 Prof. Andrea Cataldo Soluzioni Esercizio 1 (Domande generali) 1.a) Controllo Logico Dire se il seguente programma SFC è sintatticamente
DettagliInformatica Corso AVANZATO
Informatica Corso AVANZATO Word: parte avanzata Dott. Paolo PAVAN Creazione di un Modello Si possono create modelli (.dot) personalizzati con word da riutilizzare liberamente. L esempio classico è la carta
Dettagli