Table of Contents

Mini Osciloscop Digital cu Generator de Semnal

Introducere

Descriere generală

Osciloscopul este organizat în jurul a cinci module hardware și trei module software, toate coordonate de ATmega328P.

2.A Module hardware:

Semnalul analogic intră prin mufa jack PJ392 3.5mm, trece prin două diode 1N4148 care îl protejează, apoi prin op-amp-ul MCP6002 configurat ca buffer, și în final printr-un filtru RC care elimină zgomotul de înaltă frecvență înainte de ADC.

Placa ATmega328P Xplained Mini este centrul proiectului. Rulează la 16MHz, se programează direct prin USB și coordonează toate perifericele — ADC, SPI, I2C, timere și întreruperi.

Display-ul ILI9341 de 3.2” se conectează prin SPI și afișează forma de undă în timp real împreună cu scalele și măsurătorile automate. Deoarece operează la 3.3V, level shifter-ul Pololu 2595 face conversia de tensiune față de MCU-ul de 5V.

DAC-ul MCP4921 se conectează pe același bus SPI și generează semnalul intern de test (sinus, triunghi, dreptunghi), care se întoarce la intrarea analogică formând o buclă de demo completă.

Modulul EEPROM AT24C256 se conectează prin I2C și salvează setările utilizatorului între sesiuni.

2.B Module software:

Sampling engine — rulează într-un Timer1 ISR și capturează 240 de eșantioane după detecția triggerului, folosind double-buffering pentru afișare stabilă.

Display renderer — rulează în main loop și desenează forma de undă, grila, scalele, Vpp și frecvența pe ecran.

Measurement engine — calculează automat Vpp și frecvența din buffer-ul capturat la fiecare frame.

Hardware Design

Listă componente:

Componentă Model complet Cantitate Rol Preț estimat
Placă MCU ATmega328P Xplained Mini 1 MCU central De la PM lab
Display TFT LCD 3.2” ILI9341 240×320 Touch SD 3.3-5V 1 Afișare semnal ~116 RON
DAC MCP4921-E/P — DIP8 12-bit SPI 1 Generator semnal ~12 RON
Op-Amp MCP6002-I/P — DIP8 dual rail-to-rail 1 Buffer intrare analogică ~2 RON
EEPROM Modul AT24C256 I2C 1 Salvare setări ~7 RON
Level Shifter Pololu 2595 — 4ch bidirecțional 1 5V↔3.3V SPI ~16 RON
Diode 1N4148 DO-35 2 Clamp tensiune 0–5V ~1 RON
Rezistori 1kΩ, 2kΩ, 3.3kΩ, 10kΩ — 1/4W ~25 Pull-up, filtru RC, divizori ~5 RON
Condensatori 100nF ceramic, 10nF ceramic, 10µF electrolitic ~15 Decoupling, filtru RC ~20 RON
Mufă jack PJ392 3.5mm stereo mamă 1 Intrare semnal extern ~3 RON
Potențiometru WH148 10kΩ liniar 1 Trigger level ~2 RON
Butoane PCB 12×12×7.3mm + capace colorate 6+4 Interfață utilizator ~10 RON
Breadboard 830 puncte 1-2 Prototipare Disponibil
Fire Set jumper 140 fire + dupont M-F 40 fire 1+1 Conexiuni ~20 RON
Card microSD orice card 1–32GB 1 Salvare forme de undă ~15 RON

Total estimat: ~229 RON

</note>

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Bibliografie/Resurse

Resurse Hardware