Cuprins:

Actualizați DIY Mini DSO la un osciloscop real cu caracteristici minunate: 10 pași (cu imagini)
Actualizați DIY Mini DSO la un osciloscop real cu caracteristici minunate: 10 pași (cu imagini)
Anonim
Actualizați DIY Mini DSO la un osciloscop real cu funcții minunate
Actualizați DIY Mini DSO la un osciloscop real cu funcții minunate

Ultima dată am împărtășit cum să fac un Mini DSO cu MCU.

Pentru a ști cum să-l construiesc pas cu pas, vă rugăm să consultați instrucțiunile mele anterioare:

www.instructables.com/id/Make-Your-Own-Osc…

Deoarece mulți oameni sunt interesați de acest proiect, am petrecut ceva timp actualizându-l în general. După actualizare, Mini DSO este mai puternic.

Specificație:

  • MCU: STC8A8K64S4A12 @ 27MHz Obțineți-l de la AliExpress
  • Afișaj: OLED de 0,96 "cu rezoluție 128x64 Obțineți-l de la AliExpress
  • Controler: un codificator EC11 Obțineți-l de la AliExpress
  • Intrare: canal unic
  • Sec / div: 500ms, 200ms, 100ms, 50ms, 20ms, 10ms, 5ms, 2ms, 1ms, 500us, 200us, 100us 100us disponibil numai în modul de declanșare automată
  • Gama de tensiune: 0-30V
  • Evaluare eșantionare: 250kHz @ 100us / div

Functii noi:

  1. Afișați frecvența formei de undă
  2. Personalizați nivelul declanșatorului
  3. Modul Auto, Normal și Single Trigger
  4. Derulați forma de undă de-a lungul orizontale sau verticale
  5. Reglați luminozitatea OLED în setări

Pasul 1: Urmăriți videoclipul

Image
Image

În acest videoclip, vă voi arăta modificările, operațiile și funcțiile despre noua versiune Mini DSO.

Pasul 2: Pregătește-ți partea

Schema și circuitul!
Schema și circuitul!

Trebuie să adăugăm un indicator pentru funcții noi.

Lista de materiale:

  • LED x 1 Obțineți-l de la AliExpress
  • Rezistor 5k x 1 Obțineți-l de la AliExpress

Pasul 3: Schemă și circuit

Schema și circuitul!
Schema și circuitul!
Schema și circuitul!
Schema și circuitul!
Schema și circuitul!
Schema și circuitul!

Schimbările circuitului sunt doar pentru a adăuga un LED ca indicator.

Vă voi arăta utilizarea indicatorului mai târziu.

Protecția circuitului: Ultima dată am făcut o carcasă cu spumă. Spuma poate produce electricitate statică. Această problemă trebuie să fie atentă cu siguranță. De data aceasta, folosesc bandă cu temperatură ridicată pentru a face protecția.

Pasul 4: Descărcați codul

Descarcă codul!
Descarcă codul!
Descarcă codul!
Descarcă codul!
Descarcă codul!
Descarcă codul!

Descărcați pachetul de mai jos. Există cod sursă și fișier hexagonal compilat.

De asemenea, disponibil pe GitHub:

Dacă nu doriți să citiți codurile, ardeți hexagonul în MCU.

Utilizați un dispozitiv de descărcare USB către TTL și un software STC-ISP pentru a descărca codul pe MCU.

Conectați TXD, RXD și GND.

Descărcați software-ul STC-ISP aici:

Dacă interfața STC-ISP este chineză, puteți face clic pe pictograma din stânga sus pentru a schimba limba în engleză.

Pentru configurația detaliată a STC-ISP vă rugăm să consultați videoclipul meu anterior.

Codurile au fost scrise în C. Utilizați software-ul Keil pentru a-l edita și compila.

Pasul 5: Introducerea interfeței

Introducerea interfeței!
Introducerea interfeței!
Introducerea interfeței!
Introducerea interfeței!

Parametrii din interfața principală:

Secunde pe divizie:

"500ms", "200ms", "100ms", "50ms", "20ms", "10ms", "5ms", "2ms", "1ms", "500us", "200us", "100us"

100us disponibil numai în modul de declanșare automată

Tensiune:

Tensiunea este 0-30V.

Nivel declanșator:

Nivelul tensiunii de declanșare.

Panta declanșatorului:

Declanșează pe Rising sau Falling Edge.

Mod declanșator:

Mod automat, mod normal, mod unic.

Stare în interfața principală:

„Rulați”: eșantionarea rulează.

„Stop”: eșantionarea a fost oprită.

„Eșec”: nivelul declanșatorului dincolo de forma de undă în modul declanșare automată.

„Auto”: gama de tensiune automată.

Parametrii din interfața de setări:

PMode (Plot Mode): Afișează forma de undă în Vector sau Puncte.

LSB: Coeficient de eșantionare. Calibrați tensiunea de eșantionare ajustând LSB.

Coeficientul de divizare a tensiunii de 100 de ori. de exemplu. rezistența pentru divizarea tensiunii este de 10k și 2k, calculați coeficientul de divizare a tensiunii (10 + 2) / 2 = 6. Obțineți LSB = 6 x 100 = 600.

BRT (Luminozitate): Reglați luminozitatea OLED.

Pasul 6: Introducerea operațiunilor

Introducerea operațiunilor!
Introducerea operațiunilor!

Toate operațiunile sunt finalizate de codificatorul EC11. Introducerea include un singur clic, dublu clic, apăsați lung, rotiți și rotiți în timp ce apăsați. Pare puțin complicat, nu vă faceți griji, sunt detalii mai jos. Resursele acestui codificator au fost aproape epuizate. Dacă există funcții noi, este posibil să fie nevoie de o componentă de intrare suplimentară.

Interfață principală - Mod parametru:

  • Codor cu un singur clic: Executați / opriți eșantionarea
  • Encod dublu clic: intrați în modul Wave Scroll
  • Apăsați lung Encoder: introduceți interfața de setări
  • Rotire codificator: Reglați parametrii
  • Rotiți codificatorul în timp ce apăsați: comutați între opțiuni
  • Comutați gama automată și manuală: rotiți codificatorul continuu în sensul acelor de ceasornic pentru a introduce gama automată. Rotiți codificatorul în sens invers acelor de ceasornic pentru a introduce intervalul manual.

Interfață principală - Mod de derulare a undelor:

  • Codor cu un singur clic: Executați / opriți eșantionarea
  • Encod dublu clic: intrați în modul parametru
  • Apăsați lung Encoder: introduceți interfața de setări
  • Rotire codificator: derulați forma de undă orizontal (disponibilă numai când eșantionarea este oprită)
  • Rotiți codificatorul în timp ce apăsați: derulați forma de undă pe verticală (disponibilă numai când eșantionarea este oprită)

Interfață de setări:

  • Codificator cu un singur clic: N / A
  • Cod dublu clic: N / A
  • Cod de apăsare lungă: reveniți la interfața principală
  • Rotire codificator: Reglați parametrii
  • Rotiți codificatorul în timp ce apăsați: comutați între opțiuni

Pasul 7: Introducerea funcțiilor

Introducerea funcțiilor!
Introducerea funcțiilor!
Introducerea funcțiilor!
Introducerea funcțiilor!
Introducerea funcțiilor!
Introducerea funcțiilor!

Nivel declanșator:

Pentru repetarea semnalului, nivelul declanșatorului îl poate face stabil pe afișaj. Pentru semnalul cu o singură fotografie, nivelul de declanșare îl poate captura.

Panta declanșatorului:

Panta declanșatorului determină dacă punctul de declanșare este pe marginea ascendentă sau descendentă a unui semnal.

Mod declanșator:

  • Mod automat: Mătură continuu. Faceți un singur clic pe codificator pentru a opri sau rula eșantionarea. Dacă este declanșat, forma de undă va fi afișată pe afișaj și poziția de declanșare va fi plasată în centrul diagramei. În caz contrar, forma de undă va derula neregulat și „Eșec” va fi afișat pe ecran.
  • Mod normal: Când pre-eșantionarea completă, puteți introduce semnal. Dacă este declanșat, forma de undă este afișată pe ecran și așteaptă un nou declanșator. Dacă nu există un declanșator nou, forma de undă va fi păstrată.
  • Mod unic: Când pre-eșantionarea completă, puteți introduce semnal. Dacă este declanșat, forma de undă afișată pe afișaj și opriți eșantionarea. Utilizatorul trebuie să facă un singur clic pe Encoder pentru a începe următoarea eșantionare.

Pentru modul normal și modul unic, asigurați-vă că nivelul declanșatorului a fost reglat corect, altfel nu va fi afișată nicio formă de undă pe afișaj.

Indicator:

În general, indicatorul aprins înseamnă că eșantionarea se execută. Utilizarea mai importantă este în modul Trigger unic și normal, înainte de a intra în etapa de declanșare, este necesară pre-eșantionarea. Indicatorul nu se aprinde în timpul etapei de pre-eșantionare. Nu ar trebui să introducem semnal până când indicatorul nu se aprinde. Scara de timp mai mare selectată, cu atât mai mult timp de așteptare pentru pre-eșantionare.

Salvează setările:

Când ieșiți din interfața setărilor, toți parametrii din setări și interfața principală vor fi salvați în EEPROM.

Pasul 8: Testează-l

Testează-l!
Testează-l!
Testează-l!
Testează-l!
Testează-l!
Testează-l!
Testează-l!
Testează-l!

Testul 1:

Capturați forma de undă în timpul pornirii alimentării cu energie electrică.

Forma de undă de pe Mini DSO este aceeași cu cea de pe DS1052E. O mică modificare a formei de undă va fi captată în mod clar. Precizia tensiunii este decentă.

Testul 2:

Capturați forma de undă într-un circuit de măsurare a inductanței și a curentului de saturație.

Nivelul de declanșare este de numai 0,1V, iar sec / div este de 200us. Pentru că un semnal atât de mic ar putea fi declanșat, este destul de bine.

Pasul 9: Limitări și probleme

Limitări și probleme!
Limitări și probleme!
Limitări și probleme!
Limitări și probleme!

1. La fel ca prima versiune, nu putea măsura tensiunile negative. Forma de undă se va opri la 0V.

2. Dacă semnalul PWM de intrare la eșantionare la viteză mare, rezultatul eșantionării ar sari la maxim frecvent. L-am întrebat pe inginerul STC despre această problemă, dar nu am primit o explicație clară. Această problemă de sărituri se referă, de asemenea, la calitatea fiecărui MCU. O piesă în mâna mea este foarte serioasă, iar alte piese sunt mai bune. Însă toți au problema eșantionării.

Pasul 10: Planul ulterior

Plan mai departe!
Plan mai departe!

Deoarece există o problemă de eșantionare în STC8A8K și nu este atât de popular atât de greu de găsit. Decid să transfer acest proiect către STM32. Între timp, voi încerca să găsesc o modalitate simplă de a măsura tensiunea negativă.

Dacă aveți sfaturi sau cerințe cu privire la acest proiect, vă rog să-mi spuneți.

Sper că îți place.

Simțiți-vă liber să vizitați canalul meu YouTube:

Recomandat: