Esercitazioni assegnate quest'anno nelle seguenti materie:
FB Labs
Appunti delle lezioni di laboratorio
venerdì 17 gennaio 2025
lunedì 7 agosto 2023
Anno scolastico 2023-24 - Esercitazioni di laboratorio INFORMATICA e TPSIT
INFORMATICA/1
A - Ambiente di sviluppo
ES01 - Sviluppo software in C e C++
ES02 - Version control con Git e GitHub
ES03 - Sviluppo remoto con Gitpod
ES04 - Visual Studio Code
ES05 - WSL, Shell Ubuntu su Windows 10 e 11 (A.S. 2022-22)
lunedì 7 novembre 2022
giovedì 16 giugno 2022
A.S. 2021/22 - Esercitazioni di laboratorio per la materia SISTEMI E RETI
Sistemi e Reti/1
A - Le architetture dei sistemi di elaborazione
B - Virtualizzazione e installazione di sistemi operativi
ES01 - Installazione e configurazione di Raspbian su Raspberry PI
ES02 - Accesso remoto alla Raspberry PI
ES03 - WSL, Shell Ubuntu su Windows 10
ES04 - Installazione di Virtualbox e Debian
C - Il sistema operativo
D - Corso Linux Essential
ES01 - Luci smart auto
A.S. 2021/22 - Esercitazioni di laboratorio per la materia TELECOMUNICAZIONI
A.S. 2021/22 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE
TPSIT/1
A - Elettronica digitale
ES01 - Simulazione di circuiti digitali con Tinkercad
ES02 - Analisi del funzionamento delle porte logiche elementari
ES03 - Circuito digitale da funzione logica
ES04 - Sintesi di circuiti combinatori (Progetto di un sistema di allarme)
ES05 - Le porte logiche universali - Circuito per la rilevazione dei numeri primi
ES06 - Collaudo di un circuito digitale combinatorio con Arduino
B - VHDL
ES01 - EDA Playground e Progettazione in VHDL
lunedì 14 settembre 2020
A.S. 2020/21 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/1
ES01 - Simulazione di circuiti digitali con Tinkercad e il funzionamento della Breadboard
ES02 - Progetto di un sistema di allarme
ES03 - Circuito per la rilevazione dei numeri primi
ES04 - EDA Playground e Progettazione in VHDL
ES05 - Rilevazione dei numeri primi in VHDL
ES06 - Realizzazione di un Sommatore a 8bit in Vhdl
ES07 - Realizzazione di un Sottratore a 8bit in Vhdl
ES08 - Realizzazione di un Comparatore a 8 bit in Vhdl
ES09 - Realizzazione di un'ALU in Vhdl
ES10 - I FlipFlop in Vhdl
ES11 - Contatori Asincroni in VHDL su EDA Playground
ES12 - Installazione dell’applicazione Vivado
ES13 - Progettazione VHDL con Vivado
ES14 - Display7Seg con Vivado
A.S. 2020/21 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/2
ES02 - Installazione e configurazione di Keil uVision 5
ES03 - Debug di semplici programmi Assembler con Keil
ES04 - Istruzioni di spostamento dati in Assembler con il Cortex-M4
ES05 - I diagrammi di flusso in Assembler con il Cortex-M4
ES06 - Le direttive dell’assemblatore e Algoritmi su vettori
A.S. 2020/21 - Esercitazioni di laboratorio per la materia TELECOMUNICAZIONI/1
ES01 - Classificazione delle resistenze e codice colori
ES02 - Il multimetro e la misura di resistenze
ES03 - Simulazione di circuiti con Micro-Cap
ES04 - Simulazione di circuiti elettrici con Microcap, Tinkercad e Breadboard
ES05 - Esercizi su reti elettriche in regime stazionario
ES06 - Esercizi su reti elettriche in regime stazionario con Microcap
ES07 - Verifica sperimentale del principio di sovrapposizione degli effetti
ES08 - Porte logiche fondamentali e circuiti per gli input e output digitali
ES09 - Circuito digitale da funzione logica
ES10 - Progetto di un sistema di allarme
ES11 - Collaudo di un circuito digitale combinatorio con Arduino
ES12 - Progetto di un ALU
ES13 - Il multimetro
ES14 - Esercizi su reti elettriche in regime stazionario con Breadboard
ES15 - Debounce pulsanti con Flip Flop SR
ES16 - Progetto di contatori asincroni
ES17 - Rilievo carica e scarica del condensatore con Arduino e senza strumentazione
ES18 - Il Display a 7 segmenti
ES19 - Carica e scarica del condensatore con Generatore di funzione e Oscilloscopio
ES20 - Capacimetro con Arduino
A.S. 2020/21 - Esercitazioni di laboratorio per la materia TELECOMUNICAZIONI/2
ES01 - L'oscilloscopio
ES02 - Il generatore di funzioni
ES03 - Gli alimentatori
ES04 - Comandare un servomotore con il generatore di funzioni
ES05 - Onda impulsiva con Arduino per comandare un servomotore
ES06 - Collegamento e gestione di pulsanti con i microcontrollori
ES07 - Rilievo della caratteristica del diodo
ES08 - Analisi di circuiti con diodi
ES09 - Il Bjt in funzionamento On-Off
ES10 - L'Amplificatore Operazionale in configurazione invertente
venerdì 1 maggio 2020
Version control con Git
venerdì 11 ottobre 2019
A.S. 2019/20 - Laboratorio Permanente di Robotica Didattica
Presentazione del progetto robotica
Modulo di adesione ai percorsi offerti
https://forms.gle/we8YcTuQGQxK4xwe6
Alcuni video dei precedenti corsi:
https://www.youtube.com/playlist?list=PLz4gpy941ooHwPoM3xeMzNH4bS0qV8VRr
Modellazione 3D
Risorse per la modellazione 3D
lunedì 7 ottobre 2019
A.S. 2019/20 - Esercitazioni di laboratorio per la materia TELECOMUNICAZIONI/1
ES02 - Resistenze in serie e in parallelo
ES03 - Simulazione di circuiti con Micro-Cap
ES04 - Esercizi su reti elettriche in regime stazionario
ES05 - Simulazione circuiti elettrici con Tinkercad
ES06 - Carica e scarica del condensatore con Arduino e Tinkercad
ES07 - Rilievo carica e scarica del condensatore con Arduino e senza strumentazione
ES08 - Capacimetro con Arduino
ES09 - Progetto circuiti per input e output digitali e le porte logiche fondamentali
ES10 - Reti logiche combinatorie, Progetto di controllo di parità
ES11 - Reti logiche sequenziali
domenica 6 ottobre 2019
A.S. 2019/20 - Esercitazioni di laboratorio per la materia TELECOMUNICAZIONI/2
ES02 - Analisi di circuiti con diodi
ES03 - Il Bjt in funzionamento On-Off , Mosfet & Relé
ES04 - Simulazione Bjt on-off con Tinkercad
ES06 - Carica e scarica del condensatore con Arduino e Tinkercad
ES07 - Rilievo carica e scarica del condensatore con Arduino e senza strumentazione
ES08 - Capacimetro con Arduino
ES09 - Da segnale PWM ad Analogico con Arduino
ES10 - L'Amplificatore Operazionale in configurazione invertente
giovedì 26 settembre 2019
A.S. 2019/20 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/3
TPS3_ES02-SysTick
TPS3_ES03-LibreriaLed
TPS3_ES04-External Interrupts
TPS3_ES05-LibreriaPulsanti
TPS3_ES06-Task Indipendenti
TPS3_ES07-AutomaParcheggio
TPS3_ES08-Uart
TPS3_ES09-Network Comunication Protocol
mercoledì 25 settembre 2019
venerdì 22 marzo 2019
A.S. 2019/20 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/1
ES02 - Rilevazione dei numeri primi in VHDL
ES03 - Realizzazione di un Half Adder
ES04 - Realizzazione di un Sommatore a 8bit
ES05 - Realizzazione di un Sottrattore a 8bit
ES06 - Realizzazione di un ALU
ES07 - Realizzazione di contatori asincroni con Tinkercad
ES08 - Contatori Asincroni in VHDL su EDA Playground
giovedì 28 febbraio 2019
A.S. 2019/20 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/3
A04_ES02 - Installazione e configurazione di Samba e OpenLDAP
A02_ES01 - PHP Accesso a pagina riservata
A02_ES02 - Controllo remoto con PHP
A02_ES03 - Autenticazione Utenti con DB
A02_ES04 - Report da rete di sensori
A01_ES02 - Socket per l'invio di dati di telemetria
giovedì 1 marzo 2018
mercoledì 28 febbraio 2018
A.S. 2016/17 - Tesina: Progetto Di Una Casa Domotica
Tesina Forni Alessandro - Progetto Casa Domotica
Video del funzionamento - YouTube
lunedì 26 febbraio 2018
A.S. 2018/19 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/2
ES01-LedsOn
-------------------------------------------------------------------------------------------------------------
Simulazione del funzionamento di un semaforo intelligente utilizzando led e pulsanti
giovedì 15 febbraio 2018
domenica 1 ottobre 2017
A.S. 2017/18 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/3
Implementazione del protocollo di comunicazione utilizzando l'RTOS
sabato 30 settembre 2017
A.S. 2017/18 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/1
Controllare da remoto un impianto di irrigazione comandato da RaspberryPI
OBIETTIVI / ARGOMENTI TRATTATI
A.S. 2017/18 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/1
Decoder da esadecimale a 7 segmenti
PROCEDIMENTO / SPECIFICHE INIZIALI
- consegnare il lavoro in formato 7zip indicando classe, cognome e nome progetto, es. 3I_Rossi_ES04-Display7seg
A.S. 2017/18 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/2
Esecuzione di comandi multipli con le chiamate Exec e Scanf
venerdì 1 settembre 2017
I Diagrammi di Flusso [slide]
Attenzione! I programmatori inesperti tendono a introdurre numerosi salti privi di regole (“spaghetti programming”)
Convenzioni di scrittura del codice per lo sviluppo di applicazioni web
- definire uno o più fogli di stile esterni da usare per tutte le pagine dei siti realizzati
- In ogni pagina prevedere una parte che sovrascriva gli stili generali o definisca degli stili particolari
- In ogni pagina php deve essere presente una intestazione all'inizio della pagina
autore, versione, data, descrizione
- allegare una relazione tecnica
- descrivere sotto forma di commento il significato delle nuove istruzioni usate o di tecnologie adottate
- Nei blocchi if-else non trascurate alcuna valore/stato possibile
---------------
Versione 1.0 del 16/12/2014
Convenzioni per la progettazioni VHDL
D:\Lavori\<anno scolastico>\<classe>\<cognome>\<nome progetto>
Convenzioni per la scrittura di codice Bash nei sistemi embedded
Diventa quindi importante rispettare, durante la scrittura del codice, stili e regole condivise.
La Relazione Tecnica
La relazione va redatta parallelamente allo sviluppo del progetto.
Convenzioni per la scrittura di codice in assembler
1a) Utilizzo attento dei nomi
1b) Indentazione del codice
1c) Documentazione del codice
2) Layering
3) Evitare l'utilizzo dei "magic numbers" all'interno del codice
- http://users.ece.cmu.edu/~eno/coding/CCodingStandard.html
- http://users.ece.utexas.edu/~valvano/EE345L/Labs/Fall2011/style.pdf
venerdì 2 dicembre 2016
A.S. 2016/17 - Relazione di laboratorio: Romano Mirko - Relazione sul moltiplicatore binario a 4bit in vhdl
martedì 27 settembre 2016
A.S. 2016/17 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/3
ESERCITAZIONE 10_1 - Comunicazione seriale Bidirezionale tra schede Launchpad e/o PC
Trasmissione e ricezione di semplici comandi tra scheda e pc
A.S. 2016/17 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/2
giovedì 9 giugno 2016
Strumenti di lavoro per le esercitazioni di laboratori
- Breadboard. Basetta sperimentale 165x55
mercoledì 1 giugno 2016
Disegno di schemi elettrici e realizzazione di PCB con il software Eagle
- Disegno su foglio bianco A4 con cartiglio
- Lo schema elettrico
a. schema logico -> comprensione del circuito
b. montaggio
c. collaudo
- disegno tutto con matita
- Simboli:
- piedinatura all'esterno del simbolo
- nome del segnale all'interno del componente
- la dimensione dei componenti deve essere sempre la stessa (per le porte logiche 1 x 1,5cm)
- Prevedere la distinta componenti
- ogni componente deve avere un nome.
- indicare tutti i punti di giunzione delle net (junction)
- Dare il nome alle net più significative del circuito
- Tutte le scritte sono a stampatello e della stessa dimensione
- Se questo non compromette la leggibilità del disegno possiamo aggiungere
allo schema altre informazioni (ad esempio tabelle di verità)
UTILIZZO DEL SOFTWARE Eagle
IL NUOVO PROGETTO:
- Creare una cartella per ogni nuovo progetto
- Salvare lo schematic nella cartella creata e dando un nomi significativo al file (Save As..)
- Fare dei salvataggi intermedi in modo da avere dei file di backup nella cartella del progetto.
- tramite il pulsante add possiamo aggiungere i componenti allo schema: cartiglio (frames->dina4_l), resistenze (rcl->e_eu-> 0309)
- Usare il comando Invoke per inserire nello schema altre parti di un integrato
- Organizzare il layout in modo da migliorare la leggibilità dello schema, eventualmente rimuovere alcuni collegamenti fisici e collegare usando e visualizzando il nome della net.
- Per i collegamenti elettrici usare il comando wire
- Per migliorare il layout usiamo i comandi, group, split
- Usare le giunzioni per unire net diverse
- Usare i comandi “Name e “Label” per assegnare e visualizzare i nomi delle net (collegamenti elettrici)
- Ogni componente deve avere un valore
- evidenziare i blocchi più significativi del circuito con una line tratteggiata
- Se volete aggiungere dell'altro testo usate il layer info e il pulsante text
IMPORTANTE: ripristinate il layer 91 quando completate l'inserimento del testo - evitiamo i nodi sui reofori dei componenti
- Usare il comando ERC (Eletrical Rule Check) per verificare lo schema disegnato
- è possibile aggiungere delle cartelle di lavoro: options->directories-> aggiungere il percorso completo separato da un ; es. "$EAGLEDIR\lbr;C:\Users\mario.rossi"
REALIZZAZIONE DEL PCB
- Leggere la guida PCB Design Tutorial
- Realizzare in modo accurato lo schema elettrico e dopo averlo controllato (ERC) creare il PCB
- Per non rischiare l'inconsistenza tra schematic e PCB lasciare sempre aperti entrambi i file. Altrimenti eliminare il file PCB e rifarlo da capo.
- Impostare e salvare le griglie: Mil_100x1_50, Mil_50x2_25, Mil_25x4_10, Metric_10x1_1, Metric_5x2_1, Metric_1x5_0.5
- Le griglie in millimetri vengono usate solo per le modifiche alla parte meccanica del progetto
- Le griglie in pollici (mils) vengono usate solo per piazzare i componenti e lo sbroglio del circuito.
- Prima imposiamo la griglia desiderata -> tasto dx su griglia -> new -> dare nome
- Impostata la griglia a 100mil. Posizionare i componenti (Layout).
- Curare funzionalità
- Curare estetica
- Raggruppare i componenti, dove possibile, in base allo schema elettrico.
- Cambiare il colore del layer Unruted in rosso.
- Durante il Layout, premere spesso il pulsante Ratsnest. Questo ci permette di ricalcolare il percorso migliore delle net
- Usare il comando Route per fare i collegamenti: piste 45° (wire bend), layer bottom (blu), width 24-40, round (via), drill 31.49mil=0,8mm 39.37mil=1mm
- Due tracce di rame appartenente a net diverse non si possono sovrapporre. (Errore di overlap)
- COMANDI utili:
- change -> package
- Eseguiamo il comando DRC (Design Roule Check) per controllare eventuali errori presenti.
- Usare DRC personalizzato modificando isolamento, ...
- Ridurre al minimo il numero di piste sul top layer
- Cercare di ridurre le dimensioni complessive del PCB
- Per creare il bordo scheda (Scontornatura) usare la griglia in mm, il comando wire con width=0 e layer 20
- E' utile creare e salvare diverse combinazioni di layer da visualizzare
- "_All" sono visibili i layer più usati: none 1 16 17 18 19 20 21 22 23 24 25 26 39 40 41 42 43 45 48 49 51 52
- "PCB_Top" per la stampa del pcb lato componenti: Layer 1 17 18 20
- "PCB_Bottom" per la stampa del pcb lato rame: Layer 16 17 18 20
- "Unruted" per controllare di aver fatto tutti i collegamenti:
- "Serigrafia"
- Per la stampa del PCB su lucido impostare le opzioni: mirror, black e solid per il PCB_Bottom; black e solid per il PCB_Top, ricordarsi di inserire sempre del testo nel pcb da stampare in modo da non sbagliare il posizionamento del lucido nel bromografo. Quando posizionate il lucido nel bromografo il testo deve essere leggibile.
- Creazione del poligono di massa: dare nome GND, isolate 40
- Per le dimensioni della scheda (Layer 20 - Dimension) usiamo la griglia in mm.
- Nelle nuove versioni di Eagle è stato eliminato il comando taglia. Per ripristinarlo, digitare il comando "SET Cmd.Copy.ClassicEagleMode 1" nella casella di testo comandi.
- Dalla versione 6.0 di Eagle (solo per le versioni standard o professional) è possibile unire in unico file più coppie esistenti di board/schematic usando la funzione importa.
Versione 1.0 del 25/01/2011
martedì 26 gennaio 2016
A.S. 2015/16 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/1
Realizzare uno script che verifichi la connettività ad Internet
domenica 24 gennaio 2016
A.S. 2015/16 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/2
OBIETTIVI / ARGOMENTI TRATTATI
- i semafori
PROCEDIMENTO / SPECIFICHE INIZIALI
- risolvere l'esercizio precedente utilizzando i semafori
venerdì 22 gennaio 2016
A.S. 2015/16 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/3
ESERCITAZIONE 5 - La comunicazione tramite socket
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 4 - Esercitazione sulle VPN
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 3 - Implementazione dell'algoritmo di crittografia di Giulio Cesare
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 2 - Gestione di processi Unix (24/02/16)
Gestione dei processi Unix utilizzando la funzione wait(), exec..() e perror() nel linguaggio C
giovedì 14 gennaio 2016
mercoledì 9 dicembre 2015
A.S. 2015/16 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/2
martedì 24 novembre 2015
A.S. 2015/16 - Esercitazioni di laboratorio per la materia TELECOMUNICAZIONI/2
Analisi e progetto di filtri del 2° ordine
GRIGLIA DI VALUTAZIONE (consegna entro il 24/05/16):
[25 punti] - modello generale del filtro passa basso del 2° ordine e analisi della funzione di trasferimento
[25 punti] - progetto del filtro passa basso con una wn=2*3.14*5Khz e un coefficiente di smorzamento δ=0,1
[25 punto] - illustrare le 4 configurazioni canoniche dei filtri disegnando con TinaTI gli schemi e tracciare i diagrammi di bode
[25 punto] - Analisi delle variazioni del comportamento in frequenza sul filtro passa basso nell'intorno di wn al variare del coefficiente di smorzamento
-------------------------------------------------------------------------------------------------------------
Progetto di un filtro passa alto
Amplificazione invertente e non. con Amplificatori Operazionali (inizio 31/03/16)
Confronto tra le caratteristiche di funzionamento di amplificatori a bassa frequenza con montaggi a emettitore comune e collettore comune (inizio 15/03/16)
Progetto di un driver motori con il software Eagle (inizio 09/02/16)
-------------------------------------------------------------------------------------------------------------
ESERCITAZIONE 1_2 - Progetto della rete di polarizzazione di un transistor bjt (inizio 07/01/16)
martedì 9 giugno 2015
mercoledì 3 giugno 2015
A.S. 2014/15 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/2
1) Lampeggio dei tre led (white) presenti sulla scheda launchpad ad intervalli di 0,5 sec.
2) alla pressione del pulsante SW1 accendere i led con la sequenza RGB alla pressione del pulsante SW2 accendere i led con la sequenza CMY altrimenti accendere i tre led (white)
martedì 2 giugno 2015
A.S. 2014/15 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/1 [slide]
ESERCITAZIONE 7
Realizzare uno script che passato come parametro un indirizzo ip e/o una subnet mask visualizzi informazioni sul tipo di ip immesso
giovedì 14 maggio 2015
A.S. 2014/15 - Esercitazioni di laboratorio per la materia SISTEMI E RETI/2 [slide]
Realizzare un sistema che permetta il controllo (bidirezionale) dell'hardware da una qualsiasi postazione remota.
Es. comando di un sistema di irrigazione a tre zone da remoto, leggiamo i sensori di umidità del terreno, sensore pioggia
A.S. 2014/15 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/3
martedì 12 maggio 2015
A.S. 2014/15 - Esercitazioni di laboratorio per la materia TECNOLOGIA E PROGETTAZIONE/1
lunedì 11 maggio 2015
A.S. 2014/15 - Relazione di laboratorio: MOLTIPLICAZIONE A 64BIT (PRECISIONE DOPPIA)
mercoledì 11 marzo 2015
A.S. 2014/15 - Relazione di laboratorio: Backup manager
lunedì 9 marzo 2015
A.S. 2014/15 - Relazione di laboratorio: Autenticazione
venerdì 6 marzo 2015
A.S. 2014/15 - Relazione di laboratorio: Backup Manager
PROJECT | Backup Manager |
AUTHOR | Hamza Jahangir |
OBJECTIVE
|
ANALYSIS/THEORETICAL
PREMISES
|
- $_POST Manual - http://php.net/manual/en/reserved.variables.post.php
- POST vs GET - http://www.w3schools.com/tags/ref_httpmethods.asp
lunedì 12 maggio 2014
A.S. 2013-14 - Programma del corso SISTEMI E RETI/1
Titolo
del modulo
|
Contenuti Svolti |
1 |
Virtualizzazione
Introduzione a
Linux |
-
La virtualizzazione
-
Introduzione ai Sistemi Operativi
-
Introduzione al sistema operativo Linux
-
Il kernel di Linux
-
Le distribuzioni di Linux
-
Creazione della macchina virtuale con il sw VirtualBox e avvio di
Debian (Live, i386, ver 7.0.0, LXDE, immagine ISO)
-
Installazione di Debian
- elementi
principali dell'ambiente desktop: lxterminal, leafpad |
sabato 15 marzo 2014
martedì 14 maggio 2013
Prima esercitazione in assembler su ARM con la scheda "Stellaris® LM4F120 LaunchPad"
Come prima cosa installare i driver
Scaricare il template sul quale sviluppare l'esercitazione
Esercizio da consegnare per venerdì:
variazione del lampeggio del led blu alla pressione dei pulsanti
martedì 15 gennaio 2013
PIC16F628A e il Timer0
lunedì 26 novembre 2012
FB_ARM-M4_DemoBoard_ A10
giovedì 3 maggio 2012
Template di un progetto MPLAB utilizzabile con diverse schede micro
Scarica il progetto
Progetto compresso con il programma 7Zip
Firmware per il collaudo della scheda PIC16F1939 con display e porta seriale scarica il fw
Utilizzo del DAC interno al PIC16F1827 per la generazione di un segnale sinusoidale
Vout = 5*DACCON1/32
DCCON1 = Vout*32/5
martedì 13 marzo 2012
giovedì 8 marzo 2012
Errori da evitare nei progetti Mplab
- Ogni istruzione che opera sui i file register deve essere preceduta dalla istruzione di selezione del banco
- Le costanti vanno scritte in maiuscolo
- Il progetto deve avere tre livelli di commento: a. nell'intestazione iniziale indicare obiettivi, premesse teoriche
b. All'inizio di ogni routine deve essere presente l'intestazione compilata in ogni parte compresa una descrizione della stessa
c. Spiegare gruppi di istruzioni che svolgono una funzione particolare. evitare di commentare istruzioni semplici.
- La compilazione del progetto non deve dare errori. Eventualmente commentare l'istruzioni che genera l'errore e che non riuscite a correggere.
- Indentazione corretta del firmware: label sulla colonna 0, istruzioni dopo 2 tab, commenti allineati, ...
- non usare banksel ma l'istruzione movlb per la selezione stampare la parte di datasheet contenente l'elenco dei fl register
venerdì 17 febbraio 2012
Il modulo PWM del PIC16F887
La funzione PWM è in grado di generare un segnale impulsivo modulato in ampiezza, dove è impostabile frequenza e duty cycle. Questo segnale può essere utilizzato nei protocolli di comunicazione dove l'informazione è codificata in base alla durata degli impulsi e al duty cycle oppure per generare una tensione media di ampiezza variabile per pilotare ad esempio dei motori.
Il segnale PWM viene generato sul pin CCPx (CCP1 o CCP2). Il duty cycle il perido e la risoluzione è determinata dai seguenti registri
• PR2
• T2CON
• CCPRxL (CCPR1L o CCPR2L)
• CCPxCON (CCP1CON o CCP2CON)
La risoluzione del segnale generato sul pin CCP può raggiungere al massimo 10 bit
Il modulo PWM per funzionare ha bisogno di utilizzare come risorsa esclusiva il modulo Timer2.