Aperçu des sections
- Généralités
- Curs
- Cuprins
- Noțiuni generale. Clasificarea sistemelor cu microprocesoare. Avantaje în sisteme de conducere
- Arhitecturi, elemente tehnologice. Algoritmi, programe și limbaj mașină
- Organizarea memoriei. Registre interne. Clasificarea registrelor
- Microcontrolere pe 8 biți: clasificare, structură, componente hardware
- Familia AVR: arhitectura microcontrolerelor pe 8 biți
- Periferice AVR: registre de control, USART/UART, 1-Wire, TWI, ADC, contoare
- Programatoare hardware. Metode de scriere în memoria microcontrolerelor AVR
- Memorii permanente (ROM/EEPROM/Flash). Conectare, citire/scriere
T1. Noțiuni generale. Clasificarea sistemelor cu microprocesoare. Avantaje în sisteme de conducere
Obiective- definirea unui sistem cu microprocesor (μP) și a blocurilor sale funcționale;
- clasificarea sistemelor: embedded, general-purpose, timp real;
- analiza avantajelor utilizării μP în automatizare/conducere;
- identificarea criteriilor de selecție (cost, putere, performanță).
Cuvinte-cheie: microprocesor (μP) embedded timp real MTBF consum de puteremicroprocesor (μP): unitate de calcul pe chip care execută instrucțiuni de program.embedded: sistem dedicat unei sarcini specifice, integrat într-un produs/echipament.timp real: sistem care trebuie să răspundă în termene determinist impuse de proces.MTBF: „mean time between failures” — indicator al fiabilității sistemului.consum de putere: energie disipată în funcționare; critic pentru sisteme portabile/industrial.T2. Arhitecturi ale microprocesoarelor. Elemente tehnologice. Algoritmi, programe și limbaj mașină
Obiective- compararea arhitecturilor Von Neumann vs. Harvard;
- înțelegerea pipeline-ului, seturilor de instrucțiuni CISC/RISC;
- relația algoritm → program → limbaj mașină/asamblare;
- impactul tehnologic (nm, frecvență, TDP) asupra performanței.
Cuvinte-cheie: Von Neumann Harvard RISC/CISC pipeline limbaj mașinăVon Neumann: memorie unică pentru cod și date; magistrală partajată.Harvard: memorii/magistrale separate pentru cod și date; paralelism sporit.RISC/CISC: set redus vs. complex de instrucțiuni; compromis între simplitate și expresivitate.pipeline: execuție suprapusă a etapelor instrucțiunii (fetch/decode/execute).limbaj mașină: cod binar executat direct de procesor; asamblarea este reprezentarea mnemotehnică.T3. Organizarea memoriei. Registre interne. Clasificarea registrelor
Obiective- tipuri de memorie: ROM/Flash, RAM (SRAM/DRAM), EEPROM;
- spațiu de adrese, mapare memorie și memorie-mapped I/O;
- rolul registrelor interne (ACC, PC, SP, status/flaguri);
- clasificarea registrelor: date, adresare, control/stare.
Cuvinte-cheie: ROM/Flash RAM (SRAM/DRAM) mapare memorie MMIO registre (PC/SP/ACC)ROM/Flash: memorie nevolatilă pentru cod; Flash permite rescriere.RAM (SRAM/DRAM): memorie volatilă pentru date; SRAM rapidă, DRAM densă.mapare memorie: alocarea spațiului de adrese pentru cod, date, periferice.MMIO: „memory-mapped I/O” — periferice accesate ca locații de memorie.registre (PC/SP/ACC): PC—program counter; SP—stack pointer; ACC—acumulator operații.T4. Microcontrolere pe 8 biți: clasificare, structură generală, componente hardware
Obiective- identificarea blocurilor: CPU, memorie, bus, periferice;
- clasificarea pe criterii: memorie, periferice, consum;
- înțelegerea ceasului intern și a reset-ului;
- noțiuni de bootloader și programare în sistem (ISP).
Cuvinte-cheie: MCU 8-biți periferice on-chip ceas (clock) reset ISP/bootloaderMCU 8-biți: microcontroler cu magistrală de date pe 8 biți, potrivit pentru sarcini simple/medii.periferice on-chip: module integrate (GPIO, UART, TWI, SPI, ADC, Timere) în același circuit.ceas (clock): semnal periodic ce sincronizează execuția instrucțiunilor.reset: inițializează MCU în starea de pornire sigură.ISP/bootloader: metode de programare a flash-ului MCU fără a scoate cipul din circuit.T5. Microcontrolere din familia AVR: arhitectură pe 8 biți
Obiective- prezentarea arhitecturii AVR (Harvard, registre generale);
- modurile de adresare și setul de instrucțiuni;
- organizarea memoriei flash/EEPROM/SRAM în AVR;
- model de program simplu în asamblare/C pentru AVR.
Cuvinte-cheie: AVR registre R0–R31 adresare Flash/EEPROM/SRAM vectori de întrerupereAVR: familie de MCU pe 8 biți cu arhitectură Harvard și execuție eficientă.registre R0–R31: 32 de registre de uz general folosite intens în execuție.adresare: moduri prin care instrucțiunile referă operanzii (imediată, directă, indirectă etc.).Flash/EEPROM/SRAM: cod (Flash), date nevolatile (EEPROM), date volatile (SRAM).vectori de întrerupere: adrese speciale către rutinele ISR la evenimente hardware.T6. Periferice AVR: registre de control, USART/UART, 1-Wire, TWI, ADC, contoare
Obiective- configurarea registrelor de control pentru perifericele AVR;
- comunicare serială: UART/USART, 1-Wire, TWI (I²C);
- achiziție de date cu ADC și sincronizare cu timere/contori;
- proiectarea unei interfețe simple senzor → MCU → PC.
Cuvinte-cheie: USART/UART 1-Wire TWI (I²C) ADC timere/contoriUSART/UART: interfață serială asincronă/sincronă pentru transfer de date punct-la-punct.1-Wire: protocol serial pe o singură linie de date plus masă, adesea pentru senzori.TWI (I²C): magistrală serială cu două fire (SDA/SCL), master-slave, adresabilă.ADC: convertor analog-digital care eșantionează tensiuni în valori numerice.timere/contori: module pentru măsurare timp/frecvență, PWM, generare de întreruperi periodice.T7. Programatoare hardware. Metode de scriere a programului mașină în memoria AVR
Obiective- tipuri de programatoare: ISP, HVPP/HVSP, bootloader serial;
- configurarea fuse-urilor și protecția la citire/scriere;
- fluxul de lucru: build, flash, verificare, debug;
- utilizarea interfețelor: SPI, UART, USB pentru programare.
Cuvinte-cheie: ISP bootloader fuse bits HVPP/HVSP debugISP: „in-system programming” — programare a MCU prin interfața SPI direct în circuit.bootloader: cod mic rezident în Flash care permite încărcarea aplicației prin UART/USB etc.fuse bits: biți de configurare (ceas, brown-out, surse boot) programați separat de aplicație.HVPP/HVSP: programare la înaltă tensiune paralelă/serială, pentru recuperare sau configurări speciale.debug: proces de testare pas-cu-pas, breakpoints, vizualizare registre/memorie.T8. Memorii permanente. Conectare la microcontroler. Citire/scriere
Obiective- tipuri de memorii nevolatile: ROM, EEPROM, Flash externe;
- interfețe de conectare: I²C (TWI), SPI, paralel;
- protocoale de citire/scriere și timming de acces;
- considerații de durabilitate (endurance) și wear-leveling.
Cuvinte-cheie: EEPROM Flash externă I²C/SPI timming acces enduranceEEPROM: memorie nevolatilă rescriptibilă la nivel de octet/pagină.Flash externă: memorie nevolatilă densă (de obicei SPI) pentru date/firmware.I²C/SPI: magistrale seriale pentru conectarea memoriilor și perifericelor la MCU.timming acces: timpii de setup/hold, latențele și frecvența maximă a interfeței.endurance: numărul maxim de cicluri de scriere garantate de producător.
- LL1
LL1. Medii integrate de scriere a programului microcontrolerului și simularea lor pe calculator
Obiective- Familiarizarea cu IDE-uri pentru AVR (ex.: Microchip Studio) și unelte de simulare (ex.: Proteus/SimulIDE).
- Crearea unui proiect, compilarea și generarea fișierului .hex.
- Simularea funcționării și analiza semnalelor digitale.
Sarcini de lucru- Instalează IDE-ul și creează un proiect nou pentru ATmega/ATtiny.
- Scrie un program care aprinde secvențial LED-uri pe PORTB (delay software).
- Generează fișierul .hex și atașează-l în simulator (Proteus/SimulIDE).
- Monitorizează semnalele cu Logic Analyzer/Oscilloscope virtual.
- Exportă proiectul (cod + schema simulată) pentru anexă.
Evaluare și raport de laborator
- Program și funcționare – 5p: proiectul se compilează fără erori; secvența LED-urilor corectă; simularea reproduce comportamentul.
- Schema și conexiuni – 2p: corectitudine pin-out, alimentări, rezistențe serie LED.
- Raport și documentare – 2p: claritate pași (setări proiect, build, simulare) + capturi relevante.
- Originalitate/optimizare – 1p: funcții ajutătoare, modularizare, comentarii utile.
Structura raportului- Titlu
- Scopul lucrării
- Schema și descriere (bloc, conexiuni, explicații)
- Programul realizat (fragment cod esențial + explicații)
- Rezultate și concluzii (capturi simulare + observații)
Integritate academică: Orice cod/schemă preluată se citează. Copierea fără referințe poate duce la anularea punctajului.
- LL2
LL2. Componentele hardware: modulul de procesare a întreruperilor și interfața UART
Obiective- Configurarea întreruperilor externe și a timerului pentru ISR.
- Inițializarea UART și trimiterea/recepția datelor serial.
- Simularea fluxului evenimentelor și verificarea temporizărilor.
Sarcini de lucru- Configurează INT0 pentru „toggle LED” la front descendent.
- Programează Timer0 ISR care alternează o ieșire digitală la 100 ms.
- Inițializează UART-9600 și transmite „Hello, UART!”.
- Primește un caracter și afișează-l (eco) pe terminal.
- Simulează în Proteus cu Virtual Terminal + verifică ISR order.
Evaluare și raport de laborator
- Program și funcționare – 5p: ISR corecte (fără blocaje), baudrate corect, eco UART, simulare funcțională.
- Schema și conexiuni – 2p: conexiuni INT0, quartz/clock (dacă e folosit), RX/TX corecte.
- Raport și documentare – 2p: diagrame/descrieri ISR, capturi terminal, explicații baudrate.
- Originalitate/optimizare – 1p: buffer circular RX/TX, macros utile, tratare erori.
Structura raportului- Titlu
- Scopul lucrării
- Schema și descriere (INT0, Timer, UART)
- Programul realizat (ISR, init UART, eco)
- Rezultate și concluzii (capturi terminal, timming ISR)
Integritate academică: Se citează sursele pentru rutine sau biblioteci UART/ISR. Copierea fără referințe poate duce la anularea punctajului.
- LL3
LL3. Contoare și generatoare de semnal impulsular
Obiective- Configurarea timere-lor în modurile Normal, CTC și PWM.
- Generarea și măsurarea frecvenței/factorului de umplere.
- Vizualizarea formei de undă pe osciloscop.
Sarcini de lucru- Configurează Timer0 CTC pentru obținerea unei perioade țintă (ex.: 1 kHz).
- Activează PWM pe un pin OCx și setează duty-cycle=25%, 50%, 75%.
- Măsoară frecvența/duty-cycle pe osciloscop (capturi incluse în raport).
- Comentează diferențele între modurile Normal/CTC/PWM.
- Pregătește un demo cu LED dimming control prin PWM.
Evaluare și raport de laborator
- Program și funcționare – 5p: frecvențe/duty obținute corect; semnal stabil; comutare moduri fără erori.
- Schema și conexiuni – 2p: pin OCx corect, alimentări, eventual clock extern.
- Raport și documentare – 2p: capturi osciloscop + calcule prescaler/registre.
- Originalitate/optimizare – 1p: API pentru PWM, calibrare, tabele duty preset.
Structura raportului- Titlu
- Scopul lucrării
- Schema și descriere (Timer/OCx, conexiuni)
- Programul realizat (setări registre, moduri CTC/PWM)
- Rezultate și concluzii (frecvență, duty, capturi, observații)
Integritate academică: Specificați sursele pentru formule/fragmente de cod folosite. Copierea fără referințe poate duce la anularea punctajului.
- LL4
LL4. Interfețe de comunicare SPI (dispozitive externe: ecran LCD, convertor matrice LED)
Obiective- Inițializarea SPI în mod Master și schimbul de date cu periferice.
- Controlul unui modul LCD SPI sau al unui LED matrix (MAX7219).
- Analiza semnalelor MOSI/MISO/SCK/SS în simulare.
Sarcini de lucru- Configurează SPI Master (CPOL/CPHA conform perifericului ales).
- Scrie funcții de transmitere octet/cadru și inițializare dispozitiv.
- Afișează un text pe LCD sau un model pe LED matrix.
- Verifică pe logic analyzer semnalele MOSI/MISO/SCK/SS.
- Compară modurile SPI (0–3) și efectul lor în comunicare.
Evaluare și raport de laborator
- Program și funcționare – 5p: configurare corectă SPI, inițializare periferic, afisaj funcțional.
- Schema și conexiuni – 2p: liniile MOSI/MISO/SCK/SS corecte, alimentări nivel logic.
- Raport și documentare – 2p: diagrame semnal, timming, cadre transmise.
- Originalitate/optimizare – 1p: drivere separate, buffering, abstractizare dispozitiv.
Structura raportului- Titlu
- Scopul lucrării
- Schema și descriere (SPI pinout, modul selectat)
- Programul realizat (init SPI, funcții TX, inițializare periferic)
- Rezultate și concluzii (capturi analizor, afișaj, probleme/soluții)
Integritate academică: Menționați sursele pentru drivere/biblioteci SPI folosite. Copierea fără referințe poate duce la anularea punctajului.
- LL5
LL5. Interfețe de comunicare I²C (dispozitive externe: ecran LCD, ADC, DAC)
Obiective- Configurarea TWI (I²C) în mod Master și adresarea dispozitivelor slave.
- Citirea unui ADC I²C (ex. MCP3021) și afișarea pe LCD I²C.
- Respectarea secvențelor START/ACK/NACK/STOP în timming.
Sarcini de lucru- Inițializează TWI Master și scanează adresele I²C de pe magistrală.
- Implementează citirea continuă a analogului (ADC I²C) și afișează valoarea pe LCD I²C.
- Testează scrierea către un DAC I²C (dacă este disponibil în simulator).
- Verifică pe Logic Analyzer pachetele I²C (adresă, ACK, date).
- Documentează timming-ul (SCL, SDA) și capetele de cadru.
Evaluare și raport de laborator
- Program și funcționare – 5p: comunicare stabilă, afisaj corect, respectarea protocolului (ACK/NACK).
- Schema și conexiuni – 2p: pull-up SCL/SDA corecte, alimentări și adresare corectă.
- Raport și documentare – 2p: capturi flux I²C + explicația cadrului de date.
- Originalitate/optimizare – 1p: funcții reutilizabile, scan address, tratare erori.
Structura raportului- Titlu
- Scopul lucrării
- Schema și descriere (magistrală, adrese, pull-up)
- Programul realizat (init TWI, citire/scriere, afișare)
- Rezultate și concluzii (capturi cadre I²C, valori corecte, observații)
Integritate academică: Orice bibliotecă I²C/LCD folosită trebuie menționată în raport. Copierea fără referințe poate duce la anularea punctajului.
- Lucrul individual al studentului
Lucrare individuală de semestru – Proiect cu microcontroler
Lucrarea individuală constă în elaborarea unui proiect funcțional bazat pe un microcontroler AVR (sau altă platformă compatibilă), ce realizează achiziția, prelucrarea și afișarea unor date provenite de la senzori sau dispozitive periferice. Scopul este aplicarea integrată a cunoștințelor acumulate în cadrul lucrărilor de laborator, de la configurarea componentelor hardware până la programarea interfețelor de comunicare.
Obiective- Dezvoltarea unui sistem autonom cu microcontroler capabil să citească, proceseze și afișeze date în timp real.
- Aplicarea interfețelor UART, SPI sau I²C pentru conectarea senzorilor și modulelor externe.
- Proiectarea unei interfețe de afișare locală (LCD, LED, grafică) sau transmiterea datelor prin port serial către PC.
- Redactarea unui raport tehnic complet care documentează proiectul.
Sarcini de lucru- Alege o temă de proiect (ex.: sistem de monitorizare a temperaturii și umidității, contor de impulsuri, ceas digital, sistem de acces cu parolă, etc.), temele trebuie inregistrate la cadrul didactic titular.
- Elaborează schema electrică a circuitului utilizând Proteus sau alt software de proiectare.
- Scrie programul în limbaj C utilizând un IDE dedicat precum Microchip Studio.
- Testează funcțional sistemul (în simulare sau pe platformă fizică) și verifică rezultatele.
- Documentează complet proiectul, incluzând schema, descrierea hardware și software, imagini și concluzii.
Criterii de evaluare (10 puncte)
- Program și funcționare practică – 5p: proiectul funcționează stabil, logica corectă, reacții corecte la stimuli externi.
- Schema și conexiuni – 2p: conexiuni valide, utilizarea corectă a pinilor și a componentelor externe.
- Raport și documentare – 2p: claritate, structură completă, explicații logice și capturi din testare.
- Originalitate și optimizare – 1p: funcții suplimentare, optimizări de cod, design hardware eficient.
Structura raportului- Titlu și scopul proiectului
- Schema și descrierea hardware
- Programul realizat (fragment de cod + explicație logică)
- Rezultate și capturi (imagini, oscilloscope, terminal, afișaje)
- Concluzii și posibile îmbunătățiri
Integritate academică: Codul și schema trebuie realizate individual. Se acceptă reutilizarea fragmentelor din exemplele de laborator doar dacă sunt menționate explicit în raport. Copierea fără referințe poate duce la anularea punctajului
- Evaluari
- Suport teoretic
Curs
•••
Lucrări Lab.
1
2
3
4
5
Lucru ind.
•••
Evaluări
•••
Suport teoretic
•••