Osciloscop de casă pe microcontroler avr. Osciloscop digital bazat pe microcontroler AVR (ATmega32, C)

Înainte de a începe descrierea Osciloscop USB DIY pe ATtiny45, trebuie remarcat faptul că designul folosește numai convertorul ADC integrat al microcontrolerului ATmega45 cu o rezoluție de 10 biți, iar datele sunt transferate către computer prin implementarea software-ului V-USB folosind drivere USB HID, rata totală de transfer de date este sever limitată.

Mostre reale pe ambele canale până la zece mostre pe secundă. Astfel, este un osciloscop digital cu două canale de viteză redusă pe un microcontroler.

V-USB este o implementare pur software a protocolului USB de viteză redusă pentru procesoarele din seria Atmel AVR. Datorită acestor biblioteci, puteți utiliza USB cu aproape orice microcontroler cu restricții minore, fără a fi nevoie de echipamente speciale suplimentare. Toate bibliotecile V-USB sunt distribuite sub licența GNU GPL v.2.

Cele două intrări analogice sunt capabile să măsoare tensiuni de la 0 la +5 V. O gamă largă de tensiuni poate fi obținută prin adăugarea unei impedanțe de intrare ridicate, amplificator variabil (sau intrare). divizor rezistiv), sau cel puțin folosind un rezistor variabil obișnuit.

Toate lucrările principale sunt efectuate de microcontrolerul ATtiny45 programat. Funcționează de la un generator de ceas intern cu un prescaler cu o frecvență de 16,5 MHz. Pentru comunicarea printr-o interfață USB de mare viteză, această frecvență este necesară, totuși, aceasta duce la o limitare a tensiunii minime de alimentare, care trebuie să fie mai mare de 4,5 V și, desigur, mai mică de 5,5 V.

Dar, deoarece pinii de date ai portului USB folosesc un nivel de tensiune de la 0 la +3,3 V, este necesar să se utilizeze rezistențe de limitare R2, R3 și diode zener D2, D3. Această soluție, desigur, nu poate fi recomandată pentru un produs comercial, ci pentru a se familiariza cu problemele USB și a obține un design simplu pentru uz casnic destul de mult.

Canalele de intrare CH1 și CH2 pe J2 sunt blocate de condensatoarele de 100n C2 și C3 conform specificației interne ADC necesare. LED-ul D1 servește doar pentru a indica funcționarea și, prin urmare, poate fi omis.

Lista componentelor:

  • R1 - 270R
  • R2, R3 - 68R
  • R4 - 2k2
  • C1, C2, C3 - 100n
  • D1 – LED 3mm
  • D2, D3 - ZD (3,6 volți)
  • IO1 - Attiny45-20PU
  • J1 - USB B 90

Software:

Fișierul HEX compilat este disponibil pentru descărcare la sfârșitul articolului, precum și cod sursăîn limbajul C setarea de configurare este limitată la alegerea utilizării multiplicatorului oscilatorului PLL intern.

Deoarece aplicația folosește drivere HID (Human Interface Device), care sunt disponibile în aproape fiecare sistem de operare, nu este nevoie să instalați drivere suplimentare.

Pentru a obține o afișare grafică a datelor măsurate, utilizați software-ul disponibil pentru descărcare la sfârșitul articolului. Software nu necesită configurare, iar odată lansat va găsi automat dispozitivul conectat.

(descărcări: 1.273)

http://pandatron.cz/?1138&dvoukanalovy_usb_hid_osciloskop

Recent am trecut deja în revistă un kit de construcție, astăzi este o continuare a unei mici serii de recenzii despre tot felul de lucruri de casă pentru radioamatorii începători.
Voi spune imediat că acesta cu siguranță nu este Tektronics, sau chiar un DS203, dar este un lucru interesant în felul său, deși este în esență o jucărie.
De obicei, înainte de testare, lucrul este mai întâi dezasamblat, aici trebuie să îl asamblați mai întâi :)

După părerea mea, aceștia sunt „ochii” unui radioamator. Acest dispozitiv are rareori o precizie ridicată, spre deosebire de un multimetru, dar vă permite să vedeți procesele în dinamică, de exemplu. în „mișcare”.
Uneori, o astfel de a doua „privire” poate ajuta mai mult de o zi de joc cu testerul.

Anterior, osciloscoapele erau osciloscoape cu tuburi, apoi erau înlocuite cu cele cu tranzistori, dar rezultatul era încă afișat pe ecranul CRT. De-a lungul timpului, au fost înlocuiți de omologii lor digitale, mici, ușori, iar continuarea logică a fost apariția unui designer pentru asamblarea unui astfel de dispozitiv.
În urmă cu câțiva ani, pe unele forumuri, am dat peste încercări (uneori de succes) de a dezvolta un osciloscop de casă. Constructorul este, desigur, mai simplu decât ei și mai slab specificatii tehnice, dar pot spune cu încredere că până și un școlar îl poate asambla.
Acest set de construcție a fost dezvoltat de jyetech. a acestui dispozitiv pe site-ul web al producătorului.

Poate că această recenzie va părea prea detaliată specialiștilor, dar practica comunicării cu radioamatorii începători a arătat că ei percep mai bine informațiile în acest fel.

În general, vă voi spune despre totul puțin mai jos, dar deocamdată introducerea standard, despachetarea.

Au trimis setul de construcție într-o pungă obișnuită cu fermoar, deși destul de groasă.
După părerea mea, un astfel de set chiar ar beneficia de un ambalaj frumos. Nu în scopul protecției împotriva daunelor, ci în scopul esteticii externe. La urma urmei, chestia ar trebui să fie plăcută chiar și în etapa de despachetare, pentru că este un set de construcție.

Pachetul continea:
Instrucţiuni
PCB
Cablu pentru conectarea la circuitele măsurate
Două pungi cu ingrediente
Afişa.

Caracteristicile tehnice ale aparatului sunt foarte modeste, deoarece pentru mine este mai mult un set de antrenament decât metru, deși chiar și cu ajutorul acestui dispozitiv se pot efectua măsurători, deși simple.

Setul include, de asemenea, instrucțiuni detaliate de culoare pe două foi.
Instrucțiunile descriu secvența de asamblare, calibrare și un scurt ghid de utilizare.
Singurul negativ este că totul este în engleză, dar imaginile sunt făcute clar, deci chiar și în această versiune cele mai multe va fi clar.
Instrucțiunile indică chiar pozițiile de poziție ale elementelor și fac „casete de selectare” în care trebuie să bifați o casetă după finalizarea unei anumite etape. Foarte grijuliu.

Există o foaie separată de hârtie cu o listă de componente SMD.
Este de remarcat faptul că există cel puțin două variante ale dispozitivului. Pe primul, doar microcontrolerul este inițial cablat, pe al doilea, tot Componente SMD.
Prima opțiune este concepută pentru utilizatorii puțin mai experimentați.
Aceasta este opțiunea care este inclusă în recenzia mea, am aflat despre existența celei de-a doua opțiuni mai târziu.

Placa de circuit imprimat are două fețe, ca și în revizuirea anterioară, chiar și culoarea este aceeași.
Deasupra există o mască cu desemnarea elementelor, o parte a elementelor este complet desemnată, a doua are doar un număr de poziție conform diagramei.

Nu există marcaje pe verso, există doar o denumire a jumperilor și numele modelului dispozitivului.
Placa este acoperită cu o mască, iar masca este foarte durabilă (am trebuit să o verific involuntar), după părerea mea, ceea ce este necesar special pentru începători, deoarece este dificil să deteriorați ceva în timpul procesului de asamblare.

După cum am scris mai sus, denumirile elementelor instalate sunt marcate pe tablă, marcajele sunt clare, nu există plângeri cu privire la acest articol.

Toate contactele sunt cositorite, placa se lipe foarte usor, bine, aproape usor, mai multe despre aceasta nuanta in sectiunea asamblare :)

După cum am scris mai sus, un microcontroler este preinstalat pe placă
Acesta este un microcontroler pe 32 de biți bazat pe nucleul ARM Cortex™-M3 pe 32 de biți.
Frecvența maximă de operare este de 72 MHz și are, de asemenea, 2 x 12 biți, 1 μs ADC.

Pe ambele părți ale plăcii este indicat modelul acesteia, DSO138.

Să revenim la lista de componente.
Componente radio mici, conectori etc. Ambalat în pungi mici.

Turnați conținutul unei pungi mari pe masă. În interior există conectori, suporturi și condensatoare electrolitice. De asemenea, în pachet sunt încă două pungi mici :)

După ce am deschis toate pachetele, vedem destul de multe componente radio. Deși, având în vedere că acesta este un osciloscop digital, mă așteptam la mai mult.
E bine că rezistențele SMD sunt semnate, deși după părerea mea nu ar strica să semnezi rezistențe obișnuite, sau furnizați un mic ghid de codare a culorilor în kit.

Display-ul este ambalat în material moale, așa cum sa dovedit, nu alunecă, deci nu va atârna în geantă, dar PCBîl protejează de deteriorarea în timpul transportului.
Dar totuși, cred că ambalajul normal nu ar strica.

Dispozitivul folosește un indicator LCD TFT de 2,4 inchi cu lumină de fundal LED.
Rezoluția ecranului 320x240 pixeli.

Este inclus și un cablu mic. Pentru conectarea la osciloscop, se folosește un conector BNC standard, la celălalt capăt al cablului, există o pereche de cleme de crocodiș.
Cablul este mediu moale, crocodilii sunt destul de mari.

Ei bine, iată o vedere a întregului set complet desfășurat.

Acum puteți trece la asamblarea propriu-zisă a acestui constructor și, în același timp, puteți încerca să vă dați seama cât de dificil este.

Ultima data am inceput montajul cu rezistente, ca fiind cele mai joase elemente de pe placa.
Dacă aveți componente SMD, este mai bine să începeți asamblarea cu ele.
Pentru a face acest lucru, am așezat toate componentele SMD pe foaia atașată, indicând valoarea lor nominală și denumirea poziției pe diagramă.

Când am fost gata de lipit, am crezut că elementele erau într-o carcasă prea mică pentru un începător ar fi fost posibil să se folosească rezistențe de dimensiunea 1206 în loc de 0805. Diferența în spațiul ocupat este nesemnificativă; lipirea este mai ușoară.
Al doilea gând a fost - acum voi pierde rezistența și nu-l voi găsi. Bine, voi deschide masa și voi scoate un al doilea astfel de rezistor, dar nu toată lumea are o astfel de alegere. În acest caz, producătorul s-a ocupat de acest lucru.
Am dat toate rezistențele (păcat că nu erau microcircuite) cu încă una, adică. în rezervă, foarte prudent, compensat.

În continuare, voi vorbi puțin despre cum lipim astfel de componente și despre cum îi sfătuiesc pe alții să o facă, dar aceasta este doar părerea mea, desigur, fiecare poate face acest lucru în felul său.
Uneori, componentele SMD sunt lipite folosind o pastă specială, dar nu se întâmplă adesea să o aibă un radioamator începător (și chiar un non-începător), așa că vă voi arăta cât de ușor este să lucrați fără ea.
Luăm componenta cu penseta și o aplicăm pe locul de instalare.

În general, acoperez mai întâi locul de instalare a componentei cu flux, acest lucru facilitează lipirea, dar complică curățarea plăcii, uneori poate fi dificil să spălați fluxul de sub componentă;
Prin urmare, în acest caz am folosit pur și simplu lipire tubulară de 1 mm cu flux.
Ținând componenta cu penseta, puneți o picătură de lipit pe vârful fierului de lipit și lipiți o parte a componentei.
Este în regulă dacă lipirea se dovedește urâtă sau nu foarte puternică în această etapă, este suficient ca componenta să se mențină împreună.
Apoi repetam operatiunea cu componentele ramase.
După ce am asigurat toate componentele în acest fel (sau toate componentele de aceeași denumire), le putem lipi în siguranță după cum este necesar, pentru a face acest lucru, întoarcem placa astfel încât partea deja lipită să fie pe stânga și ținem lipirea fierul în mâna dreaptă (dacă ești dreptaci), iar lipirea cu stânga, trecem prin toate locurile nelidate. Dacă lipirea celei de-a doua părți nu este satisfăcătoare, atunci rotiți placa la 180 de grade și, în mod similar, lipiți cealaltă parte a componentei.
Acest lucru îl face mai ușor și mai rapid decât lipirea fiecărei componente în parte.

Aici in fotografie se pot observa mai multe rezistente instalate, dar pana acum lipite doar pe o parte.

Microcircuitele dintr-un pachet SMD sunt marcate la fel ca într-unul obișnuit, în stânga lângă marcaj (deși de obicei în stânga jos când se uită la marcaj) există primul contact, restul se numără în sens invers acelor de ceasornic.
Fotografia arată locul unde se instalează microcircuitul și un exemplu despre cum ar trebui să fie instalat.

Procedăm cu microcircuite într-un mod complet similar cu exemplul cu rezistențe.
Așezăm microcircuitul pe plăcuțe, lipim orice pin (de preferință cel mai exterior), ajustăm ușor poziția microcircuitului (dacă este necesar) și lipim contactele rămase.
CU stabilizator de microcircuit o puteți face în diferite moduri, dar vă sfătuiesc să lipiți mai întâi petala, apoi plăcuțele de contact, apoi microcircuitul va rămâne cu siguranță plat pe placă.
Dar nimeni nu interzice lipirea mai întâi a știftului exterior și apoi a tuturor celorlalți.

Toate componentele SMD sunt instalate și lipite, au mai rămas câteva rezistențe, câte una din fiecare valoare, puneți-le într-o pungă, poate vă vor veni la îndemână cândva.

Să trecem la instalarea rezistențelor convenționale.
În ultima recenzie am vorbit puțin despre codificarea culorilor. De data aceasta, v-aș sfătui mai degrabă să măsurați pur și simplu rezistența rezistențelor folosind un multimetru.
Cert este că rezistențele sunt foarte mici, iar cu astfel de dimensiuni marcajul de culoare este foarte greu de citit (cu cât este mai mică suprafața zonei vopsite, cu atât este mai dificil să se determine culoarea).
Inițial, am căutat o listă de denumiri și denumiri de poziție în instrucțiuni, dar nu le-am găsit, pentru că le căutam sub formă de plăcuță, iar după instalare s-a dovedit că erau în imagini, cu casete de selectare pentru marcarea poziţiilor stabilite.
Din cauza neatenției mele, a trebuit să-mi fac singur placa, pe care am așezat componentele instalate una lângă alta.
In stanga se vede rezistorul separat la compilarea placa a fost de prisos, asa ca am lasat-o la sfarsit.

Procedăm cu rezistențele într-un mod similar ca în revizuirea anterioară, modelăm terminalele folosind o pensetă (sau un dorn special), astfel încât rezistența să se încadreze cu ușurință.
Fiți atenți, desemnările de poziție ale componentelor de pe placă pot fi nu numai etichetate, ci și SEMNATE, iar acest lucru vă poate face o glumă crudă, mai ales dacă sunt multe componente într-un rând pe placă.

Aici a ieșit un mic minus din placa de circuit imprimat.
Cert este că găurile pentru rezistențe au un diametru foarte mare și, deoarece instalația este relativ strânsă, am decis să îndoi cablurile, dar nu prea mult și, prin urmare, nu se țin foarte bine în astfel de găuri.

Datorită faptului că rezistențele nu au rezistat foarte bine, recomand să nu completați toate valorile deodată, ci să instalați jumătate sau o treime, apoi să le lipiți și să instalați restul.
Nu vă fie teamă să mușcați pinii prea mult, o placă cu două fețe cu metalizare iartă astfel de lucruri, puteți lipi întotdeauna o rezistență chiar și deasupra, ceea ce nu puteți face cu o placă de circuit imprimat cu o singură față.

Gata, rezistentele sunt sigilate, sa trecem la condensatori.
Le-am tratat la fel ca și rezistențele, așezându-le conform plăcii.
Apropo, mai am un rezistor în plus, se pare că l-au pus accidental.

Câteva cuvinte despre etichetare.
Astfel de condensatoare sunt marcate în același mod ca și rezistențele.
Primele două cifre sunt numărul, a treia cifră este numărul de zerouri după număr.
Rezultatul rezultat este egal cu capacitatea în picofarads.
Dar există condensatoare pe această placă care nu se încadrează sub acest marcaj, acestea sunt valori de 1, 3 și 22pF.
Ele sunt marcate pur și simplu indicând capacitatea, deoarece capacitatea este mai mică de 100pF, adică mai puțin de trei cifre.

În primul rând, lipim condensatoarele mici conform denumirilor de poziție (aceasta este o căutare).

Cu condensatori cu o capacitate de 100nF am pasit putin, fara sa ii adaug imediat in placa, a trebuit sa o fac mai tarziu cu mana.

De asemenea, nu am îndoit complet cablurile condensatoarelor, dar la aproximativ 45 de grade, acest lucru este suficient pentru a preveni căderea componentei.
Apropo, în această fotografie puteți vedea că punctele conectate la contactul comun al plăcii sunt realizate corect, există un spațiu inelar pentru a reduce transferul de căldură, ceea ce face mai ușoară lipirea unor astfel de locuri.

Cumva m-am relaxat puțin pe această placă și mi-am amintit de șocuri și diode după lipirea condensatoarelor ceramice, deși ar fi fost mai bine să le lipim în fața lor.
Dar acest lucru nu a schimbat cu adevărat situația, așa că să trecem la ele.
Placa a fost furnizată cu trei șocuri și două diode (1N4007 și 1N5815).

Totul este clar cu diode, locația este etichetată, catodul este marcat cu o dungă albă pe dioda în sine și pe placă, este foarte greu de confundat.
Cu sufocaturi poate fi puțin mai complicat, uneori au și ele codificarea culorilor, din fericire, în acest caz, toate cele trei sufocare au aceeași evaluare :)

Pe tablă, șocurile sunt indicate prin litera L și o linie ondulată.
Fotografia arată o secțiune a plăcii cu șocuri și diode sigilate.

Osciloscopul folosește două tranzistoare de conductivitate diferită și două microcircuite stabilizatoare cu polarități diferite. În acest sens, aveți grijă când instalați, deoarece denumirea 78L05 este foarte asemănătoare cu 79L05, dar dacă o puneți invers, cel mai probabil veți alege altele noi.
Cu tranzistori, este puțin mai simplu, deși placa arată pur și simplu conductivitatea fără a indica tipul de tranzistor, dar tipul de tranzistor și desemnarea poziției sale pot fi văzute cu ușurință din diagramă sau harta de instalare a componentelor.
Terminalele de aici sunt vizibil mai dificil de modelat, deoarece toate cele trei terminale trebuie modelate, este mai bine să nu vă grăbiți, pentru a nu rupe terminalele.

Concluziile se formează în același mod, acest lucru simplifică sarcina.
Poziția tranzistorilor și a stabilizatorilor este indicată pe placă, dar pentru orice eventualitate, am făcut o fotografie cu cum ar trebui să fie instalate.

Kitul a inclus un inductor puternic (relativ), care este folosit în convertor pentru a obține polaritate negativă și un rezonator cu cuarț.
Nu trebuie să tragă concluzii.

Acum, despre rezonatorul de cuarț, este făcut pentru o frecvență de 8 MHz, nici nu are polaritate, dar este mai bine să puneți o bucată de bandă sub el, deoarece corpul său este metalic și se află pe piese. Placa era acoperită cu o mască de protecție, dar sunt cumva obișnuit să fac un fel de suport în astfel de cazuri, pentru siguranță.
nu va mirati ca la inceput am indicat ca procesorul are o frecventa maxima de 72 MHz, iar quartzul costa doar 8, in interiorul procesorului sunt atat divizoare de frecventa cat si uneori multiplicatoare, asa ca nucleul poate functiona usor, de exemplu , la o frecvență de 8x8 = 64 MHz.
Din anumite motive, contactele inductorului de pe placă au formă pătrată și rotundă, deși inductorul în sine este un element nepolar, așa că pur și simplu îl lipim pe loc, este mai bine să nu îndoim cablurile;

Kitul a inclus destul de mulți condensatori electrolitici, toți au aceeași capacitate de 100 μF și o tensiune de 16 Volți.
Acestea trebuie lipite cu polaritatea corectă, altfel sunt posibile efecte pirotehnice :)
Plumbul lung al condensatorului este contactul pozitiv. Placa are marcaje de polaritate atât lângă pinul corespunzător, cât și lângă cercul care marchează poziția condensatorului, ceea ce este destul de convenabil.
Ieșirea pozitivă este marcată. Uneori îl marchează ca negativ, caz în care aproximativ jumătate din cerc este umbrită. Și apoi există un producător de hardware de computer precum Asus, care umbrește partea pozitivă, așa că trebuie să fii mereu atent.

Încetul cu încetul am ajuns la o componentă destul de rară, condensatorul trimmer.
Acesta este un condensator a cărui capacitate poate fi modificată în limite mici, de exemplu 10-30pF, de obicei capacitatea acestor condensatoare este mică, până la 40-50pF.
În general, acesta este un element nepolar, adică. Formal, nu contează cum îl lipiți, dar uneori contează cum îl lipiți.
Condensatorul conține o fantă pentru șurubelniță (ca capul unui șurub mic), care are conexiune electrică cu una dintre concluzii. Așadar, în acest circuit, un terminal al condensatorului este conectat la conductorul comun al plăcii, iar al doilea la elementele rămase.
Pentru a reduce influența șurubelniței asupra parametrilor circuitului, este necesar să o lipiți astfel încât cablul conectat la fantă să fie conectat la fir comun taxe.
Placa este marcată cu privire la modul de lipit, iar mai târziu în recenzie va apărea o fotografie în care puteți vedea acest lucru.

Butoane și întrerupătoare.
Ei bine, este greu să faci ceva greșit aici, deoarece este foarte dificil să le introduci cumva :)
Pot spune doar că bornele corpului comutatorului trebuie lipite pe placă.
În cazul unui comutator, acest lucru nu numai că va adăuga putere, dar va conecta și corpul comutatorului la contactul comun al plăcii, iar corpul comutatorului va acționa ca un scut împotriva interferențelor.

Conectori.
Partea cea mai dificilă în ceea ce privește lipirea. Este dificil nu din cauza preciziei sau a dimensiunii mici a componentei, ci dimpotrivă, uneori zona de lipit este dificil de încălzit, așa că pentru conectorul BNC este mai bine să luați un fier de lipit mai puternic.

În fotografie puteți vedea -
Lipirea unui conector BNC, a unui conector suplimentar de alimentare (singurul conector de aici care poate fi instalat invers) și a unui conector USB.

A existat o mică problemă cu indicatorul, sau mai degrabă cu conectorii pentru conectarea acestuia.
Kitul a uitat să includă o pereche de contacte duble (pini), acestea fiind folosite aici pentru a securiza partea opusă a indicatorului conectorului de semnal.

Dar după ce m-am uitat la pinout-ul conectorului de semnal, mi-am dat seama că unele contacte ar putea fi mușcate cu ușurință și folosite în locul celor lipsă.
Aș putea deschide sertarul biroului și aș scoate un astfel de conector de acolo, dar ar fi neinteresant și într-o oarecare măsură necinstit.

Lipim părțile prizei (așa-numitele feminine) ale conectorilor pe placă.

Placa are o ieșire a unui generator de 1KHz încorporat, vom avea nevoie de ea mai târziu, deși aceste două contacte sunt conectate între ele, încă lipim într-un jumper, va fi convenabil pentru conectarea cablului de semnal „crocodil”.
Este convenabil să folosiți plumbul mușcat al unui condensator electrolitic pentru jumper, acestea sunt lungi și destul de rigide.
Acest jumper este situat în stânga conectorului de alimentare.

Există, de asemenea, câțiva săritori importanți pe tablă.
Unul dintre ei, sunat JP3 trebuie scurtcircuitat imediat, asta se face cu o picatura de lipit.

Cu al doilea săritor, este puțin mai complicat.
Mai întâi trebuie să conectați multimetrul în modul de măsurare a tensiunii la punctul de testare situat deasupra lamei cipului stabilizator. A doua sondă este conectată la orice contact conectat la contactul comun al plăcii, de exemplu la un conector USB.
Este furnizată energie pe placă și este verificată tensiunea la punctul de testare, dacă totul este în ordine, atunci ar trebui să existe aproximativ 3,3 volți.

După acest săritor JP4, situat ușor în stânga și sub stabilizator, este de asemenea conectat folosind o picătură de lipit.

Pe partea din spate Placa are încă patru jumperi, nu trebuie să le atingeți, acestea sunt jumperi tehnologici pentru diagnosticarea plăcii și trecerea procesorului în modul firmware.

Să revenim la afișaj. După cum am scris mai sus, a trebuit să mușc câteva perechi de contacte să le aplice pentru a le înlocui pe cele lipsă.
Dar la asamblare, am decis să nu mușc perechile exterioare, ci de la mijloc, așa cum ar fi, și să o lipim pe cea exterioară, astfel încât ar fi mai dificil să confund ceva în timpul instalării.

Deși există o folie de protecție pe afișaj, aș recomanda acoperirea ecranului cu o bucată de hârtie atunci când lipiți conectorul, caz în care picăturile de flux care fierbe în timpul lipirii vor zbura pe hârtie și nu pe ecran.

Gata, poti aplica puterea si verifica :)
Apropo, una dintre diodele pe care le-am lipit mai devreme servește pentru a proteja electronicele de conexiunile de alimentare incorecte din partea dezvoltatorului, acesta este un pas util, deoarece placa poate fi arsă cu polaritatea greșită într-o secundă.
Placa indică o sursă de alimentare de 9 volți, dar este specificată o gamă de până la 12 volți.
În teste, am alimentat placa de la o sursă de 12 Volți, dar am încercat și de la două conectate în serie. baterii cu litiu, diferența a fost doar într-o luminozitate puțin mai mică a luminii de fundal a ecranului, cred că folosind un stabilizator de 5 Volți cu o cădere scăzută și scoaterea diodei de protecție (sau conectând-o în paralel cu sursa de alimentare și instalând o siguranță), poate alimenta cu ușurință placa de la două baterii cu litiu.
Alternativ, utilizați un convertor de putere de 3,7-5 volți.

Deoarece pornirea plăcii a avut succes, este mai bine să spălați placa înainte de a o configura.
Eu folosesc acetonă, deși este interzisă vânzarea, dar sunt mici rezerve ca opțiune, am folosit și toluen, sau, în cazuri extreme, alcool medical.
Dar placa trebuie spălată, nu trebuie să o „scălzi” în întregime, ci doar treci peste ea cu un tampon de bumbac de dedesubt.

La final, punem placa „pe picioare” folosind suporturile furnizate desigur, sunt puțin mai mici decât este necesar și atârnă puțin, dar este totuși mai convenabil decât să o punem pe masă, ca să nu mai vorbim de; faptul că știfturile pieselor pot zgâria blatul mesei și așa mai departe, nimic nu intră sub bord și scurtează nimic de sub ea.

Primul test este de la generatorul încorporat, pentru aceasta conectăm crocodilul cu un izolator roșu la jumperul de lângă conectorul de alimentare, nu este nevoie să conectăm firul negru nicăieri.

Aproape că am uitat, câteva cuvinte despre scopul întrerupătoarelor și butoanelor.
În stânga sunt trei comutatoare cu trei poziții.
Cel de sus comută modul de operare de intrare.
Pământat
Modul de funcționare fără a lua în considerare componenta constantă, sau AC, sau modul de funcționare cu o intrare închisă. Potrivit pentru măsurători de curent alternativ.
Mod de operare cu capacitate de măsurare DC, sau modul de operare cu intrare deschisă. Permite măsurători ținând cont de componenta de tensiune constantă.

Al doilea și al treilea comutator vă permit să selectați scara de-a lungul axei tensiunii.
Dacă este selectat 1 Volt, aceasta înseamnă că în acest mod o balansare a unei celule de scară pe ecran va fi egală cu o tensiune de 1 Volt.
În același timp, comutatorul din mijloc vă permite să selectați tensiunea și multiplicatorul inferior, prin urmare, folosind trei comutatoare, puteți selecta nouă niveluri fixe de tensiune de la 10 mV la 5 volți pe celulă.

În dreapta sunt butoanele pentru controlul modurilor de scanare și a modurilor de operare.
Descrierea butoanelor de sus în jos.
1. Când este apăsat scurt, pornește modul HOLD, adică. înregistrarea citirilor pe afișaj. când este lung (mai mult de 3 secunde), pornește sau dezactivează modul de ieșire digitală a datelor parametrilor semnalului, frecvența, perioada, tensiunea.
2. Buton pentru a mări parametrul selectat
3. Buton pentru a reduce parametrul selectat.
4. Buton pentru a parcurge modurile de operare.
Controlul timpului de baleiaj, interval de la 10 µs la 500 sec.
Selectați modul de funcționare al declanșatorului de sincronizare, Auto, normal și standby.
Modul de captare a semnalului de sincronizare printr-un declanșator, în partea din față sau din spate a semnalului.
Selectarea nivelului de tensiune al capturii semnalului de declanșare a sincronizării.
Derularea orizontală a formei de undă vă permite să vizualizați semnalul „în afara ecranului”
Setarea poziției verticale a oscilogramei ajută la măsurarea tensiunilor semnalului și atunci când oscilograma nu se potrivește pe ecran...
Butonul de resetare, pur și simplu repornind osciloscopul, după cum sa dovedit, este uneori foarte convenabil.
Lângă buton există LED verde, clipește când osciloscopul s-a sincronizat.

Toate modurile când dispozitivul este oprit sunt memorate și apoi pornește în modul în care a fost oprit.

Există și un conector USB pe placă, dar din câte am înțeles, nu este folosit în această versiune când este conectat la un computer, afișează că a fost detectat un dispozitiv necunoscut;
Există, de asemenea, contacte pentru flash-ul dispozitivului.

Toate modurile selectate de butoane sau comutatoare sunt duplicate pe ecranul osciloscopului.

Nu am actualizat versiunea de software, deoarece este cea mai recentă în acest moment 113-13801-042

Configurarea dispozitivului este foarte simplă; generatorul încorporat ajută la acest lucru.
Cel mai probabil atunci când este conectat la generatorul încorporat impulsuri dreptunghiulare veți vedea următoarea imagine, în loc de dreptunghiuri netede va exista fie un „colaps” al unghiului de sus/de jos, în jos sau în sus.

Acest lucru este corectat prin rotirea condensatoarelor de reglare.
Sunt doi condensatori, în modul 0.1 Volt reglam C4, în modul 1 Volt, respectiv, C6. În modul 10mV nu se face nicio ajustare.

Prin reglare este necesar să se obțină chiar și impulsuri dreptunghiulare pe ecran, așa cum se arată în fotografie.

M-am uitat la acest semnal cu un alt osciloscop, după părerea mea este suficient de „neted” pentru a calibra acest osciloscop.

Deși condensatorii sunt instalați corect, chiar și în această opțiune există o ușoară influență a șurubelniței de metal, atâta timp cât ținem vârful pe elementul reglabil, rezultatul este același, de îndată ce scoateți vârful, rezultatul se schimbă usor.
În această opțiune, fie strângeți-l cu mici schimbări, fie folosiți o șurubelniță (dielectrică) din plastic.
Am o astfel de șurubelniță cu un fel de cameră Hikvision.

Pe de o parte are un vârf în cruce, tăiat, special pentru astfel de condensatoare, pe de altă parte este drept.

Din moment ce acest osciloscop mai mult dispozitiv Pentru a studia principiile de funcționare, decât un dispozitiv cu adevărat cu drepturi depline, nu văd rostul efectuării unei teste complete, deși voi arăta și voi verifica principalele lucruri.
1. Am uitat complet, uneori când lucrez, în partea de jos a ecranului apare o reclamă a producătorului :)
2. Afișează valorile digitale ale parametrului semnalului, un semnal este furnizat de la generatorul de impulsuri dreptunghiular încorporat.
3. Acesta este zgomotul intrinsec al intrării osciloscopului Am văzut mențiuni despre acest lucru pe Internet, precum și faptul că noua versiune are un nivel de zgomot mai mic.
4. Pentru a verifica dacă acesta este într-adevăr zgomot din partea analogică și nu interferență, am trecut osciloscopul în modul cu o intrare scurtcircuitată.

1. Am schimbat timpul de măturare la 500 de secunde pe modul de diviziune, ca pentru mine, ei bine, acesta este într-adevăr pentru pasionații de sporturi extreme.
2. Nivelul semnalului de intrare poate fi modificat de la 10 mV per celulă
3. Până la 5 volți pe celulă.
4. Semnal dreptunghiular cu o frecvență de 10 KHz de la generatorul osciloscopului DS203.

1. Semnal dreptunghiular cu o frecvență de 50 KHz de la generatorul osciloscopului DS203. Se poate observa că la această frecvență semnalul este deja foarte distorsionat. 100KHz nu mai are prea mult sens.
2. Semnal sinusoidal cu o frecvență de 20 KHz de la generatorul osciloscopului DS203.
3. Semnal triunghiular cu o frecvență de 20 KHz de la generatorul osciloscopului DS203.
4. Semnal de rampă cu o frecvență de 20 KHz de la generatorul osciloscopului DS203.

Apoi, am decis să mă uit puțin la modul în care se comportă dispozitivul atunci când lucrează cu un semnal sinusoidal furnizat de la un generator analog și să-l compar cu DS203-ul meu.
1. Frecventa 1KHz
2. Frecventa 10KHz

1. Frecvența 100KHz, în designer nu puteți selecta un timp de baleiaj mai mic de 10ms, de aceea este singura modalitate :(
2. Și așa poate arăta un semnal sinusoidal cu o frecvență de 20 KHz, furnizat de la DS203, dar într-un mod diferit de divizor de intrare. Mai sus a fost o captură de ecran a unui astfel de semnal, dar trimis în poziția divizorului de 1 Volt x 1, aici semnalul este în modul 0,1 Volt x 5.
Mai jos puteți vedea cum arată acest semnal atunci când este alimentat la DS203

Semnal de 20KHz furnizat de la un generator analogic.

Fotografie comparativă a două osciloscoape, DSO138 și DS203. Ambele sunt conectate la un generator sinusoid analogic, frecvența 20KHz, ambele osciloscoape sunt setate la același mod de funcționare.

Relua.
Pro
Design educațional interesant
Placă de circuit imprimat de înaltă calitate, acoperire de protecție durabilă.
Chiar și un radioamator începător poate asambla setul.
Ambalaj bine gândit, am fost mulțumit de rezistențele de rezervă incluse.
Instrucțiunile descriu bine procesul de asamblare.

Contra
Semnal de intrare de joasă frecvență.
Au uitat să includă câteva contacte pentru atașarea indicatorului.
Ambalaj simplu.

Parerea mea. Să spun pe scurt, dacă aș avea un astfel de set de construcție în copilărie, probabil că aș fi foarte fericit, chiar și în ciuda neajunsurilor sale.
Pe scurt, am fost plăcut surprins de proiectant, consider că este o bază bună pentru acumularea de experiență în asamblare și punere în funcțiune dispozitiv electronic, și în experiența de lucru cu un dispozitiv foarte important pentru un radioamator - un osciloscop. Poate fi simplu, chiar și fără memorie și cu o frecvență joasă, dar este mult mai bine decât să te joci cu cardurile audio.
Desigur, nu poate fi considerat un dispozitiv serios, dar nu este poziționat ca atare, ci ca designer, mai mult decât orice.
De ce am comandat acest designer? Da, a fost doar interesant, pentru că tuturor ne plac jucăriile :)

Sper că recenzia a fost interesantă și utilă, aștept cu nerăbdare sugestii pentru opțiunile de testare :)
Ei bine, ca întotdeauna, materiale suplimentare, firmware, instrucțiuni, surse, diagramă, descriere -

Toată lumea a avut un moment în viața lor când își dă seama că „ Trebuie să cumpăr un osciloscop!". În practica mea, în cele mai multe cazuri a fost nevoie de un osciloscop pentru a observa forma semnalului (sau chiar a arăta prezența acestuia), în timp ce principalele măsurători și studii au fost efectuate pe alte dispozitive. Mulți oameni se vor certa cu mine acum, ce pot face pentru a fi mai convenabil pentru mine. Prin urmare, am decis să fac o sondă simplă de osciloscop. Nu va fi altfel caracteristici bune, Scopul principal este de a explica principiul de funcționare cât mai popular! La finalul articolului găsiți o arhivă cu toate sursele și materialele de care veți avea nevoie. Deci sa incepem...

Un semnal digital este o matrice de numere (în termeni simpli), fiecare număr este valoarea tensiunii la un moment dat. Eșantioanele sunt prelevate la o anumită frecvență, care se numește frecvență de eșantionare. Tradus din semnal analogicîn discret și este gestionat de ADC. Există microcircuite speciale care implementează această funcție, dar microcontrolerele sunt special echipate cu pini din care pot fi luate valori. Să deschidem datasheet pe Atmega8, acolo vedem fraza: 8 canale (sau 6 pentru pachetul PDIP) ADC pe 10 biți. Aceste. puteți conecta 8 semnale la fiecare dintre aceste canale și puteți elimina un semnal diferit de la fiecare! 10 biți înseamnă că în fiecare moment de timp tensiunea este codificată ca un număr de 2 cifre de 10 cifre. Amintiți-vă acest fapt.

Acum, ADC-ul nostru nu înțelege tensiunea negativă, măsoară de la 0-GND la AREF. Pragul înalt poate fi setat în registrul ADMUX ca sursă internă = 2,56 V, sau poate fi egal cu tensiunea de pe pinul AVCC (ceea ce se face de obicei). Tot în ADLAR (vezi figura de mai jos) poți seta ordinea în care este completat rezultatul.

Adresa MUX 0x0000 corespunde intrării ADC0 și continuă în același mod (dacă nu înțelegeți, consultați fișa de date de la pagina 199).

Acum, porniți ADC. ADC poate funcționa în 2 moduri. Primul este modul Conversație unică, în acest mod lansăm comanda „Măsoară!” măsoară și se oprește (dar asta este atât de figurat). Al doilea este o lansare constantă (Free Running), unde configuram totul, îl pornim și funcționează și eliminăm constant valorile. Al doilea mod este mai potrivit pentru sarcina noastră, dar este mai dificil să controlăm măsurarea, așa că îl vom folosi pe primul.

Modul ADC este configurat în registrul ADCSRA.

Ultimul lucru rămas este înregistrarea rezultatului ADCH - MSB ADCL - LSB. Nu voi vorbi despre ele, totul este vizibil și clar în imagine.

Asta e tot cu teorie! Acum să scriem programul! Pentru a depana și a antrena ADC, vom asambla circuitul în Proteus. Vom face următoarele:

Măsurați nivelul de intrare;

Ieșiți nivelul în cod binar (folosind 8 LED-uri).

Pentru a face acest lucru, vom lucra în modul ADLAR=1 și vom citi doar cei mai importanți biți ai ADCH (adică pierdem cei 2 biți mai puțin semnificativi, se pierde acuratețea, dar în limite acceptabile pentru mine). Programul a fost scris în AVR Studio.

Int main(void) ( DDRD=0xFF; ADMUX = 0b01100000; // Setați pragul superior pentru tensiunea AVCC, furnizați 3,3V //ADLAR=1 și scoateți ADC din pinul ADC0 ADCSRA = 0b10001101; // Setați Modul ADC, activați Modul unic, eliminați ADC-ul de la intrarea ADC0 _delay_us(10 while(1) (ADCSRA |= 0x40;//Porniți ADC while((ADCSRA & 0x10)==0);//; așteptați finalizarea PORTD=ADCH;//ieșiți rezultatul) )

Haideți să vedem ce se întâmplă. Când sinusul crește de la 0 la 3,3, vedem cum valoarea crește la maxim, dar când sinusul intră în partea negativă, avem un 0 stabil.

Pentru a rezolva această problemă, trebuie să ne ridicăm semnalul cu 1,6 V (jumătate din întreaga gamă), adică este necesar să adăugați jumătate din puterea semnalului și să slăbiți semnalul în sine de 2 ori, astfel încât valoarea la intrare să nu depășească limitele noastre de 0-3,3 V. DAR! Deoarece articolul este educativ, iar principalul lucru aici este să vă explic totul, să simplificăm totul! Pentru a testa funcționarea dispozitivului nostru vom folosi ieșirea de la placa de sunet(și computerul rulează un generator de semnal), așa că pur și simplu aruncăm un rezistor de 470 ohmi între +3 V și intrarea ADC. Acest lucru ne va oferi offset-ul dorit.

Drept urmare, am digitizat semnalul. Rămâne doar să îl afișați pe ecran.

Pentru proiectul meu am ales un ecran de la nokia1100, de ce? Da, pentru că tocmai l-am găsit în orașul meu + există un layout pentru el în Proteus. Putem folosi și altele, principalul lucru este că avem deja datele (am învățat cum să le obținem!).

Nu voi descrie modul de inițializare a ecranului (există atât de multe informații disponibile pe Internet, nu vreau să mă repet + am inclus cât mai multe comentarii în codul sursă), ci voi da pur și simplu textul de programul cu comentarii:

#include "nokia1100.h" // Include biblioteca NOKIA1100 unsigned int n=(0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01); unsigned int deltaU=4,deltaT=0; buffer int nesemnat; int flag=0; void LCD_Signal(int index,int znachenie,int deltaU)(//funcție pentru afișarea unui pixel într-o coloană znachenie=znachenie/deltaU; unsigned int h; for(unsigned int i=0;i<8;i++){ nlcd_GotoXY(index,7-i); h=1; for(unsigned int j=0;j<8;j++){ if(i*8+j==znachenie){h=0; nlcd_SendByte(DATA_LCD_MODE,n[j]);} } if(h) nlcd_SendByte(DATA_LCD_MODE,0x00); } } void function_buttons(){//обработка кнопок while(PINB==0x01) flag=1; while(PINB==0x02) flag=2; if(flag==1)deltaU+=2; if(flag==2) deltaT+=10; } int main(void) { nlcd_Init();//инициализация дисплея _delay_us(10); ADMUX =0b01100000;//Настроили АЦП от 0 до AVCC на который мы подаем 3,3 В ADCSRA = 0b10001100;//Настраиваем режим АЦП, вход настраиваем так же на ADC0 while(1) { DDRB=0x00; PORTB=0x00; for(int i=0;i<96;i++){ ADCSRA |= 0x40;//Включаем АЦП while((ADCSRA & 0x10)==0);//Ждем завершения buffer[i]=ADCH;//Записываем в буфер _delay_us(deltaT);//задержка для уменьшения частоты дискритизации } for(int i=0;i<96;i++){//Выводим буфер на экран function_buttons(); LCD_Signal(i,buffer[i],deltaU); } } }

Fișierele incluse sunt în arhiva articolului!

Deoarece ADC-ul integrat în microcontroler este destul de lent, s-a decis să se utilizeze un ADC extern AD9280 de mare viteză. WG12864A (128*64) este folosit ca afișaj. Firmware-ul este scris în C folosind compilatorul MikroC pro pentru AVR 5.60.

Caracteristicile osciloscopului:

Impedanță de intrare 100 kOhm;

Frecvența maximă de eșantionare 9 MHz;

Frecventa minima 25 Hz;

Frecventa maxima 500 kHz;

Tensiune minima +/- 0,25 V;

Tensiune maxima +/- 25 V;

Tensiune de alimentare 9 V;

În partea dreaptă a ecranului, sunt afișate valoarea tensiunii de amplitudine, valoarea tensiunii rms, frecvența în kHz, tipul de sincronizare și divizorul. ATMEGA32 funcționează la o frecvență crescută de 26,601712 MHz. Cuarț care cade l cu un dandy. Pentru o funcționare stabilă, ATMEGA32 este alimentat de o tensiune crescută de 5,4 V. În acest scop, un stabilizator este plasat în borna negativă. iar 7805 este lipit 2 diode Schottky cu o cădere de 0,2 V fiecare Dacă ATMEGA32 nu va fi lucrează stabil pe 26.601712 MHz, puteți instala quartz la 20 MHz sau instalați un oscilator extern la 32 MHz. La alte frecvențe decât 26,601712 MHz, este necesar să modificați frecvența în setările proiectului și să selectați alte constante pentru calcularea frecvenței. Stabilizatorul 7805 trebuie amplasat pe radiator. Folosit ca conector de intrare h sunet 3,5 mm. Cipul ICL7660 face negativ tensiune -5,4 V, care este necesară pentru alimentarea amplificatorului operațional și pentru mutarea semnalului alternativ în domeniul pozitiv. Am folosit LM358 ca amplificator operațional, l-a alimentat cu o tensiune de 6,5 V de la dioda zener a . LM358 extrem de distorsionant nu semnal la frecvențe peste 20 La Hz Impulsurile dreptunghiulare la frecvențe înalte pot fi văzute în fotografie.

Amplificatorul operațional trebuie utilizat cu o frecvență de 10 MHz. Poate că lm833 va face. Dacă amplificatorul operațional este șin-to-rail, atunci îl puteți alimenta de la 5,4 V. De exemplu, MCP6H92.

Gamele sunt comutate printr-un comutator cu trei poziții - 1:1 (25 V); 1:4 (10 V); 1:10 (2,5 V).

Există 5 taste folosite pentru a controla osciloscopul. Tastele sus/jos sunt folosite pentru a seta amplitudinea. Tastele stânga/dreapta sunt concepute pentru a schimba frecvența vibrațiilor O rock ADC. Tasta centrală este folosită pentru a intra în meniu.În primul paragraf selectați tipul de afișare a oscilogramei: prin puncte sau pe linii. În al doilea paragraf, divizorul este setat în funcție de comutatorul intervalului de tensiune. Este necesar pentru afișarea corectă a tensiunii. În al treilea paragraf, selectați tipul de sincronizare: din câte pot , de-a lungul declinului frontului, trece prin zero.

Pentru a configura osciloscopul, trebuie să setați contrastul dorit de afișare cu un rezistor variabil și să setați linia la zero (fără semnal de intrare), după ce a crescut anterior amplitudinea cadrului. Fotografia prezintă un osciloscop cu cabluri vechi.

Versiunea actualizată a schemei și a semnului V2

Actualizarea schemei și a sigiliilor V3

Distribuie la:

Caracteristici.

Acum câteva luni, în timp ce navigam pe internet, am dat peste un osciloscop pe un microcontroler pic18f2550 și afișaj grafic pe controlerul ks0108. Acesta a fost locul lui Steven Cholewiak. Nu am văzut niciodată un osciloscop pe un singur microcontroler. Acest lucru a fost inspirator pentru mine și am decis să fac ceva similar, dar în c. Cea mai bună soluție pentru mine a fost să folosesc Winavr, se bazează pe compilatorul avr-gnu disponibil public și funcționează excelent cu avr studio 4. Biblioteca grafică pe care am folosit-o a fost creată de mine special pentru acest proiect. Nu este pentru uz general. Dacă doriți să îl includeți în codul dvs., va trebui să îl modificați pentru a se potrivi nevoilor dvs. Frecvența maximă pe care o poate afișa acest osciloscop este de 5 kHz pentru o undă pătrată. Pentru alte semnale (sinus, triunghi) - 4 kHz.

Descriere
Tensiunea de alimentare a circuitului este de 12V. Folosind convertoare, este convertit la 8,2 V pt ic1 și 5V pentru ic2 și ic3. Acest circuit poate măsura tensiunea de la -2,5 V la +2,5 V sau de la 0 V la +5 V în funcție de starea comutatorului s1 (AC sau DC). Folosind un divizor 1:10 puteți măsura de 10 ori tensiunea. În plus, folosind s2 puteți împărți în continuare tensiunea de intrare la 2.

Programare atmega32.
avr_osciloscop.hex- firmware pentru microcontroler. Când se afișează firmware-ul, setați biții de siguranță ai microcontrolerului să fie tactați de la un cuarț extern. După ce ați dezactivat firmware-ul, asigurați-vă că ați dezactivat jtag! Dacă nu faceți acest lucru, veți vedea ecranul inițial când îl porniți, iar când mergeți la ecranul osciloscopului, veți vedea din nou ecranul inițial.

Calibrare
Doar două lucruri necesită calibrare. Acestea sunt rezistențe variabile p1 și p2. p1 este necesar pentru a muta fasciculul în centrul ecranului, iar p2 este necesar pentru a regla contrastul afișajului.

Utilizare.
Puteți muta fasciculul în sus sau în jos pe ecran apăsând butonul s8 sau respectiv s4. O tensiune de 1 V corespunde unei diviziuni de pe afișaj. Cu s7 și s3 puteți crește sau micșora viteza de măsurare. Prin apăsarea butonului s6 puteți îngheța ecranul.

Placă de circuit imprimat (101x160mm) și aspectul componentelor.