Risorse per il Lab. Elettronica |
|
Home Page
CAD/CAE • LTspice • PSpice Sistemi • Arduino • AVR • Raspberry Pi • National Instruments Risorse • Datasheet • Link • Hardware e Software • Misc |
Programmare il GPIO di Raspberry Pi in C (beta) Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Non commerciale - Condividi allo stesso modo 3.0 Italia. E' dunque escluso l'utilizzo per scopi di lucro . Autore: Francesco Parisi, fparisi AT gmail DOT com Ultima modifica: 09/08/2021 Esercizi Prima Parte Nota: rivolgersi al proprio Istruttore per eventuali chiarimenti.• Esercizio n.1a Modificare LEDBLINK.C in LEDBLINK_2.C
Inserire una direttiva #define che consenta di definire il tempo di accensione/spegnimento del LED.
• Esercizio n.1b Modificare LEDBLINK.C in LEDBLINK_3.C
Collegare il LED a un altro pin (es. GPIO23). Disegnare il nuovo schema elettrico e riscrivere il codice. • Esercizio n.2a Modificare LEDVAR.C in LEDENABLE.C
Se il pulsante non è premuto il LED è spento. Premendo il pulsante (e mantenendolo premuto) il LED deve lampeggiare con un tempo di accensione/spegnimento di 250ms. • Esercizio n.3a Modificare LEDSUPERCAR.C in LEDSUPERCAR_2.C
Prima del ciclo di scorrimento, assicurare lo spegnimento iniziale di tutti i LED. • Esercizio n.3b Modificare LEDSUPERCAR.C in LEDSUPERCAR_3.C
Invertire la direzione di scorrimento dei LED via software (cioè senza variare la disposizione dei LED) • Esercizio n.3c Modificare LEDSUPERCAR.C in LEDFRAME.C
Far scorrere i LED secondo questa sequenza ripetitiva di frame (arrivato all'ultimo, riparte dal primo) alla frequenza di 4 frame al secondo: Frame 1 Frame 2 Frame 3 Frame 4 Sugg: Definire una matrice che memorizzi la sequenza dei frame: int seq [NFRAME][NLED] = { { 0, 0, 1, 0, 0 }, // Frame 1 { 0, 1, 0, 1, 0 }, // Frame 2 { 1, 0, 0, 0, 1 }, // Frame 3 { 0, 1, 0, 1, 0 } // Frame 4 };N.B. La scrittura consecutiva su due pin con digitalWrite() è praticamente senza alcun ritardo percettibile (quindi i LED appaiono come se fossero accesi contemporaneamente)
Soluzione : LEDFRAME.C • Proposte di esercizi Inventarsi nuovi programmi che abbiano attinenza con quelli trattati; per esempio modifiche degli stessi per migliorarli o renderli più flessibili anche avendo in mente possibili applicazioni. |
|
Informativa estesa sui Cookie
|
|
Realizzazione a cura di Francesco Parisi (2002 ÷ 2024) | Contatti