Minijaturni 4-kanalni logički analizator na avr. Poboljšanje logičkog analizatora iz Kine. Vrsta tiskane pločice i položaj komponenti

Iako povremeno, postoji potreba pratiti što se događa na nekim logičnim linijama, a sinkrono na 4-8. Dugo sam želio imati logički analizator (u daljnjem tekstu LA) za te potrebe i konačno sam to uspio.
Ukratko, za nestrpljive - možete uzeti. U potpunosti odgovara navedenim karakteristikama, softver je sasvim upotrebljiv. Više detalja - ispod kroja :)

Što je logički analizator i čemu služi?

Ukratko, ovo je nešto poput vrlo grubog višekanalnog osciloskopa. Vrlo grubo - pokazuje samo dvije razine, 0 i 1, odnosno je li promatrani signal premašio zadanu razinu ili ne. Zato se i zove logična, svrha joj je promatranje logičkih signala, odnosno logičkih nula i jedinica.
To može biti potrebno, na primjer, prilikom otklanjanja pogrešaka neke vrste sučelja s nekoliko linija - rad s memorijom, sinkrona kontrola nečega, višežična sučelja itd. Također se koristi u obrnutom inženjeringu, kada trebate proučiti rad uređaja, utvrditi korišteni komunikacijski protokol, pa čak i dobiti ispis podataka koji se prenose, na primjer, putem sinkronog UART-a.
Mnogi zrakoplovi, osim što izravno snimaju signale, mogu ih dekodirati pomoću određenih protokola, iako to nije obvezno svojstvo zrakoplova. Osobito sofisticirani mogu čak i automatski odrediti protokol koji se koristi s dovoljno pouzdanja, ali to već ovisi o softveru koji je uključen u zrakoplov.

Dostava

Stigla je momentalno - naručila sam je 29. ožujka, a 11. travnja već je bila na mom odjelu. Stiglo je običnom poštom, bilo je zapakirano u standardnu ​​žutu vrećicu s mjehurićima. Ništa neobično :)

Specifikacije sa stranice prodavača

Osobitosti:
- malen i lagan
- maksimalna frekvencija uzorkovanja: 100MHz na 3 kanala, 50MHz na 6 kanala, 32MHz na 9 kanala, 16MHz na 16 kanala
- velika količina spremljenih uzoraka, podrška za kompresiju
- ugrađeni PWM generator
- USB2.0/3.0 kompatibilan
- moćan i jednostavan softver za korištenje
- podrška za automatsko online ažuriranje
Karakteristike:
- broj kanala: 16
- maksimalna frekvencija uzorkovanja: 100MHz
- širina pojasa mjerenja: 20MHz
- minimalna uhvaćena širina impulsa: 20ns
- maksimalna veličina spremljenih uzoraka: 10G/kanalu
- dopušteni ulazni napon: -50V / +50V
- ulazni otpor i kapacitet: 220KΩ, 12pF
- podesiva razina okidanja: -4V ~ +4V, korak: 0,01V
- broj kanala PWM generatora: 2
- Frekvencijski raspon PWM: 0,1 ~ 10MHz
- Korak podešavanja frekvencije PWM generatora: 10ns
- Korak podešavanja širine impulsa PWM generatora: 10ns
- Izlazni napon PWM generatora: +3.3V
- izlazni otpor PWM generatora: 50Ω
- potrošnja u stanju mirovanja: 100mA
- maksimalna potrošnja struje: 150mA
- dimenzije: 95mm * 55mm * 23mm
- podržani operativni sustavi: Windows XP, Vista, Windows 7/8/10(32/64bit)
- podržani standardni protokoli: UART/RS-232/485, I2C, SPI, CAN, DMX512, HDMI CEC, I2S/PCM, JTAG, LIN, Manchester, Modbus, 1-Wire, UNI/O, SDIO, SMBus, USB1. 1, PS/2, NEC infracrveni, paralelni, itd...

Oprema

Komplet se sastojao od dva paketa - jedan je sadržavao USB kabel, a drugi je sadržavao sam analizator sa svim njegovim dodacima:

Kabel izgleda jako dobro, debeo, ali dosta mekan. Nemam što procijeniti presjek strujnih žica u njemu, a to i nije važno s obzirom na deklariranu potrošnju analizatora. Ali njegova mekoća veliki je plus pri radu s tako malom i laganom kutijom.
Od bitnih potrepština bili su: sam analizator, tri češlja od po devet žica različitih boja, dva češlja od po dvije žice, 20 kopči, disk s programom i papirić s adresom s koje možete preuzeti najnoviji softver:


Evo povećeg papira:

Sam analizator je napravljen u lijepom kućištu potpuno originalnog dizajna (u usporedbi s dosadnim kockastim kutijama u koje Kinezi ukalupljuju sve što stignu). Iako se čini da je Gainta imala ovakvo jedno među standardnim kućištima... Ipak, izgleda jako dobro. Sve je urađeno vrlo pažljivo, nigdje nema nepotrebnih praznina, ništa nije iskrivljeno :)
Prednja natpisna pločica pokazuje naziv modela, daje kratke karakteristike i ilustrira svrhu pinova ulaznog konektora. Osim toga, postoji indikator koji pokazuje status analizatora - kada je u stanju mirovanja, lagano svijetli i gasi se, a tijekom uzorkovanja često trepće.
Na jednom kraju nalazi se 20-pinski ulazni konektor - 16 kanala, dva uzemljenja i dva izlaza PWM generatora. Na drugom kraju je USB konektor:





Komplet uključuje tri češlja od 9 žica i dva od dvije žice. Ako još možete nešto smisliti s dvožilnim - npr. jedan za masu, drugi za dva kanala ili za PWM generator, zašto onda TRI velika češlja nije jasno... Inače ne, jedan od njih rezervni je :)

Kada spojimo dva češlja s devet pinova, dobivamo svih 16 kanala i dva uzemljenja. Duljina žica na svim češljevima je 20 cm, sve žice završavaju termoskupljajućim “majkama” za spajanje kopči. Na svakom češlju jedna žica ima bijeli termoskupljaj - pretpostavlja se da je ovo brušena, da je teže zbuniti, ostale imaju crni termoskupljač:

Isječci - točno 20 komada. Odnosno, pomoću njih možete spojiti svih 20 pinova ulaznog konektora - 16 kanala, 2 uzemljenja i 2 PWM generatora. Malo je vjerojatno da će to ikada biti potrebno, ali to je plus za Kineze jer nisu pohlepni :) Boje kopči ne pate od posebne raznolikosti, za razliku od žica:


S druge strane, ako pokažete minimalnu brigu, možda nećete ništa zbuniti gledajući ne samo kopče, već i žice povezane s njima.
Uobičajene tetraedarske igle strše sa stražnje strane kopči, kao na IDC konektorima:


"Majke" žica prilično čvrsto pristaju na ove igle i ne pokazuju nikakvu želju da skoče; veza je prilično pouzdana.
Elementarni klip uređaj:




Nema brava ili zasuna, stražnja strana se jednostavno povuče i unutarnja ploča izlazi van nakon okretanja od 90 stupnjeva. Pin je jednostavno zalemljen, što je dobra vijest u smislu lakoće održavanja :)
Za spajanje na žicu potrebno je pritisnuti stražnju stranu, a minijaturna kopča izlazi iz izljeva i otvara se. Stražnji dio se oslobađa i pod djelovanjem opruge stezaljka se vraća natrag, zatvarajući se u isto vrijeme:




Pouzdano drži žicu, i prilično debelu, oko 1,5 mm, i tanku, oko 0,3 mm:




Općenito, ove kopče ne blistaju kvalitetom, ali su u većini slučajeva prilično funkcionalne.

Rad analizatora, softver

Prvo, moramo razjasniti jednu točku: ovaj analizator nema vlastitu memoriju, svi uzorci se odmah prenose na računalo, gdje se spremaju. Istina, u karakteristikama se spominje kompresija, tako da, najvjerojatnije, glupo ne prenosi 100 megabita po kanalu na frekvenciji uzorkovanja od 100 MHz. Međutim, na visokim frekvencijama vrlo je zahtjevan za kvalitetu USB kanala. U idealnom slučaju, korijensko čvorište na koje je analizator povezan ne bi trebalo posluživati ​​druge klijente. Na primjer, kod mene je radio punom brzinom samo u konektoru na prednjoj ploči računala. Ali na netbooku nikada nije mogao osigurati 50 MHz za 6 kanala, iako je već radio za 5 kanala, a osigurao je 100 MHz za tri kanala.

Dakle, softver. U početku nisam obraćao pažnju na papirić na kojem je bila adresa stranice sa softverom, pa sam izvadio eksterni DVD iz spremnika i pošteno pokušao instalirati program s njega. Program je instaliran, ali se drajveri nisu htjeli instalirati (Windows XP). Nakon pretraživanja na Internetu, otišao sam na ovo mjesto naznačeno na komadu papira i odatle preuzeo nešto noviju verziju programa. Iako se činilo da su upravljački programi u njemu isti, instalirali su se normalno iz nove verzije i analizator je oživio :)

Programsko sučelje je na prvi pogled (i na drugi, da budemo iskreni) vrlo jednostavno. U početku nije ni jasno kako u njemu uopće možete učiniti nešto korisno :) Ali kako ulazite dublje, počinje rasti poštovanje prema njemu :) Općenito, iz programa sam stekao sljedeći dojam: potpuno nenametljiv, ništa suvišno , ali sasvim dovoljno za većinu zadataka. Ima i sitnih mana, naravno, ali one ne kvare previše dojam.
Ovako izgleda prozor programa:


Brzim klikovima možete prilagoditi učestalost uzorkovanja i dubinu (broj) spremljenih uzoraka:


Odabir viših stopa uzorkovanja automatski će ograničiti broj dostupnih kanala.
U samim kanalima za svaki od njih možete odabrati naziv, lokaciju i okomitu veličinu. Za jedan od kanala možete postaviti stanje okidača - na rubu, na padu, na visokoj razini, na niskoj razini ili bez okidača. Ako je okidač prethodno instaliran na drugom kanalu, tamo će se resetirati, odnosno okidač se može instalirati na bilo koji kanal, ali samo na jedan.
U općim postavkama možete ukloniti nepotrebne kanale i postaviti granični napon, u odnosu na koji će se brojati nule i jedinice:

Imao sam pri ruci maramicu u kojoj su se našli samo SPI i USB pa sam ih odlučio pogledati. Snimke zaslona će pokazati već konfigurirane kanale, ali u početku nema podataka o signalima i kanali su jednostavno imenovani - Chanel 0, Chanel 1 itd.
Spojio sam prva dva kanala na USB, sljedeća 4 na SPI i pokrenuo analizator. Evo što sam ukupno dobio:


Ovo su sve 2 sekunde promatranja :) Sada morate spojiti dekodiranje. Odaberite željeni protokol s popisa:

I pojavljuje se prozor za postavljanje ovog protokola.
Za USB:


Za SPI:


Kao što vidite, SPI ima prilično bogate postavke koje vam omogućuju pregled ovog protokola u svim njegovim manifestacijama.
Nakon dodjele kanala signalima protokola, program nudi automatsko preimenovanje kanala prema nazivima signala, upravo to sam već učinio na snimkama zaslona. I sada, pri dovoljnom povećanju, iznad grafova će se prikazati podaci prema protokolu. Na primjer, ovdje je jedan od USB okvira:


Kao što vidite, program ne samo da prikazuje numeričke vrijednosti prenesenih bajtova, već i njihovo značenje unutar protokola - CRC, SYNC, ACK itd. Istina, postoje mjesta koja program i ja nismo razumjeli; čini se da brzina USB-a u nekim trenucima naglo usporava:

A ovdje je dio SPI razmjene:

Ovako će izgledati u datoteci:

Osim toga, možete spremiti ne uzorke, već dekodirane podatke protokola. Ovdje je, na primjer, dio spremljene CAN zamjene u mom automobilu (nažalost, nisam napravio snimke zaslona):
Vrijeme [s],Paket,Tip,Identifikator,Kontrola,Podaci,CRC,ACK 0.0002935s,0,DATA,0x0591,0x08,0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x00,0x284A,ACK 0.0016248s,1,DATA,0x 05D 1 , 0x02,0x10 0x00,0x0249,ACK 0.0023359s,2,DATA,0x0635,0x03,0x00 0x00 0xFD,0x0D93,ACK 0.0033871s,3,DATA,0x0470,0x08,0x40 0x01 0x00 0x 46 0x00 0x00 0x00 0x1F,0x5D2D,ACK 0.0046378 s,4,DATA,0x0531,0x04,0x01 0x40 0xF0 0xB1,0x40D3,ACK 0.005489s,5,DATA,0x05C1,0x04,0x00 0x00 0x00 0x20,0x0AA2,ACK 0.0063502s, 6, PODACI, 0x06 5F, 0x08, 0x01 0x5A 0x5A 0x5A 0x36 0x31 0x5A 0x43.0x3840,ACK 0.0075009s,7,DATA,0x0651.0x08.0x80 0x02 0x50 0xAF 0x38 0x57 0x00 0x00.0x50D4, ACK 0.008662 1s,8,DATA,0x0621,0x08,0x20 0x2C 0x69 0x18 0x81 0x64 0xFD 0x00,0x4FE1,ACK 0.0233258s,9,DATA,0x0291,0x05,0x00 0x00 0x00 0x00 0x00,0x1DE1,ACK 0.0333432s,10,DATA,0x03E1,0x08,0x20 0x00 0x30 0 x01 0xA2 0x00 0x84 0x00,0x50DB ,ACK 0.0432946 s,11,DATA,0x03C3,0x08,0xAB 0x00 0x00 0x00 0xA8 0xF0 0x00 0x64,0x0F7B,ACK 0.0444855s,12,DATA,0x040C,0x08,0x00 0x01 0x01 0x01 0x00 0 x00 0x00 0x00,0x290F,ACK 0,053637 s,13, DATA,0x0470,0x08,0x40 0x01 0x00 0x46 0x00 0x00 0x00 0x1F,0x5D2D,ACK 0.0548882s,14,DATA,0x0531,0x04,0x01 0x40 0x00 0x41,0x191A ,ACK 0. 0632503s,15,DATA,0x0291 ,0x05.0x00 0x00 0x00 0x00 0x00,0x1DE1,ACK 0.0666019s,16,DATA,0x0497,0x08,0x00 0x00 0x00 0x00 0x64 0x00 0x00 0x20,0x501A,ACK 0.0733 737s,17,DATA,0x015 1.0x04.0x00 0xE0 0xB0 0x50 .0x5718,ACK 0.0833265 s,18,DATA,0x02C1,0x06.0x00 0x00 0x00 0x00 0x06 0x00.0x5677,ACK 0.0843872s,19,DATA,0x0359,0x08.0xB8 0x01 0x00 0 x00 0x00 0x2B 0x40 0x00,0x4875,ACK 0.0856485s ,20,DATA, 0x035B,0x08,0x08 0xB4 0x0C 0xB5 0x0B 0xFF 0x02 0x80,0x157E,ACK 0.0868492s,21,DATA,0x0369,0x08.0x3F 0x00 0x00 0x00 0x00 0 x00 0x00 0x00,0x45C9,ACK 0.0881104s,22,DATA ,0x0381,0x06, 0x01 0x00 0x00 0x00 0x00 0x00,0x18D3,ACK 0.0892516s,23,DATA,0x0397,0x08,0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00,0 x4293,ACK 0.0905 824s,24,DATA,0x03B5,0x06,0x00 0x00 0x00 0x00 0x00 0x00 ,0x007C,ACK 0.0916936s,25,DATA,0x0457,0x03.0x01 0x40 0x00.0x6539,ACK 0.0925447s,26,DATA,0x04B9,0x06.0x00 0 x00 0x00 0x00 0x00 0x00.0 x11A3,ACK 0,0936154 s,27,DATA, 0x0400,0x08,0x0C 0x01 0x09 0x05 0xAC 0x00 0x00 0x00,0x3DDD,ACK

Što još imaš? Kada kursor pomičete preko grafikona kanala, automatski se prikazuju širina trenutnog impulsa, period, frekvencija i punjenje (relevantno za PWM). Možete prikazati dva ili tri markera i povući ih po grafikonu, i oni će biti privučeni najbližim frontovima i padovima. Informacije o točnom vremenu markera i vremenskom intervalu između njih bit će prikazane s desne strane:


Ovdje se oznake nalaze na početku USB okvira, koji, kao što je poznato, prate svaku milisekundu s prilično velikom točnošću, što analizator potvrđuje. Ili bolje rečeno, potvrđuje njegovu prilično dobru točnost :)

PWM generator

Pa, ovdje je sve jednostavno. Tu je, oba kanala, sve radi. Svaki kanal možete brzo uključiti i isključiti izravno u glavnom prozoru na vrhu klikom na odgovarajući natpis (PWM1 PWM2). Zeleno - aktivno, crveno - onemogućeno. Postavke generatora se pozivaju u zasebnom prozoru:


Ne znam ni sta vise da kazem o njemu :)

Utroba

Struktura je, kako pretpostavljam, klasična - usklađivanje ulaza, komparatori okidača, FPGA i kontroler s USB-om. Općenito sumnjam da je ovo klon iste Saleae :)








Druga strana ploče je potpuno prazna.
Sve je vrlo uredno, nema šmrclja, neopranog fluksa itd. Unutrašnjosti ne narušavaju sklad izgleda :)

Poanta

Svidio mi se uređaj. Sve što je u njemu navedeno radi. Softver je ostavio vrlo ugodan dojam. Da budem iskren, nisam ni očekivao takav posao od Kineza :) Postoje nedostaci, ali oni su manji - želio bih, na primjer, dodijeliti različite boje signalima. Ali ovo je više zajebancija.

Kada kupujem raznoraznu kinesku elektroniku za svoje "zanate", često se susrećem s problemom lošeg opisa rada,

Tema današnjeg članka je korištenje jeftinog kineskog logičkog analizatora kupljenog na Aliexpressu.

Što je logički analizator? Ovo je takav uređaj... za logičnu analizu))) Film s Robertom De Nirom odmah pada na pamet

Zašto je to potrebno? Pa, naravno, uključite se u logičku analizu))). Ili bolje rečeno, analizom logičkih razina različitih mikrokontrolera i njihovih periferija. Ono što se obično naziva obrnuti inženjering.

Karakteristike

  • Softverska kompatibilnost sa Saleae Logic 8
  • Broj digitalnih ulaza - 8
  • Dva indikatora - snaga i status logičkih ulaza
  • Ulazna impedancija 100KOhm, ulazni kapacitet 5pF
  • USB napajanje
  • Podržane stope uzorkovanja:
  • 24MHz, 16MHz, 12MHz, 8MHz, 4MHz, 2MHz, 1MHz, 500KHz, 250KHz, 200KHz, 100KHz, 50KHz, 25KHz;
  • Broj pohranjenih vrijednosti jednog mjerenja - 10000

S jedne strane nalazi se 10-pinski konektor i pinout na tijelu

Uz još jedan Mini USB za napajanje i povezivanje s računalom

Utroba

Unutar kućišta nalazi se ploča koja sadrži mikroprocesor s brzim USB sučeljem CY7C68013A tvrtke CYPRESS, EEPROM ATMLH432 i upravljački program sabirnice LVC245A tvrtke NXP.

Na ulazu analizatora nalaze se otpornici za ograničavanje struje od 100 Ohma, otpornici za povlačenje od 100 KOhm i kondenzatori od 5 pF. Sve je iskreno, kao u opisu.

Veza

Za spajanje analizatora, komplet uključuje 10 spojnih žica za pin kontakte. Odmah sam kupila ove štipaljke.

Kvaliteta stezaljki je vrlo osrednja, ali dobre stezaljke će koštati više od samog analizatora

Softver

To je možda i najzanimljivija stvar kod ovog analizatora. Dolazi s izvornim softverom tvrtke Saleae Logic.

Dostupne su verzije za OSX, Linux i Windows u 32 i 64 bita.
Saleae Logic 1.2.3 pod Windows 7 je radio s pola udarca, softver se pokrenuo, hardver je prepoznat, unatoč "Beta" verziji.

Zanimljive značajke u softveru tvrtke Saleae Logic

Okidač za snimanje logičkog slijeda na svakom kanalu

  • Za promjenu logičke razine na "0"
  • Za promjenu logičke razine na "1"
  • Za pozitivan impuls zadanog trajanja
  • Na negativan puls zadanog trajanja

Izračun statističkih očitanja na temelju trenutnog mjerenja

Protokoli za dekodiranje: Async Serial, I2C, SPI, Hide, 1-Wire, Atmel SWI, BISS C, CAN, DMX-512, HD44780, HDLC, HGMI CEC, I2S/PCM, JTAC, LIN, MDIO, Manchester, Midi, Modbus , PS/2 tipkovnica/miš, SMBus, SWD, Simple Parallel, UNI/O, USB LS i FS

Zapisivanje korištenjem protokola koji se može dekodirati

Osim toga, ovaj se analizator može fleširati softverom tvrtke USBee

Napravimo malo analize

Upravo sam smišljao spajanje ultrazvučnih senzora DYP-ME007Y, koji izgledaju potpuno identično, ali rade potpuno drugačije.

Ako se radi točno prema podatkovnoj tablici: kratki puls na "okidaču" pokreće ultrazvučni puls i udaljenost se mjeri trajanjem jeke. Zatim drugi i treći (s trepćućim LED-om) otprilike jednom svakih 100ms, bez ikakvih vanjskih udaraca, sami mjere udaljenost i šalju je brzinom od 9600 u obliku četiri bajta (uključujući i kontrolni zbroj). Saleae Logic omogućuje dekodiranje signala serijske sabirnice u niz bajtova. Senzori druge vrste rade savršeno s isključenim izlazom "TRIG", iako možda čekaju neku naredbu na ovom ulazu, ali čak ni čarobni uređaj to neće pokazati.

Dalje, htjeli ste pogledati PWM signal Atmegi 168? Uključio sam svih šest kanala koji podržavaju PWM na različitim razinama i bio sam iznenađen kad sam otkrio da se frekvencija dva PWM kanala razlikuje od ostala 4. Jesu li uključeni različiti mjerači vremena?

Što je na mojoj podatkovnoj sabirnici?

Čarobni uređaj i program normalno su dekodirali slijed izlaza na LED diode. Čak su se pojavile i boje LED dioda.

Nema problema niti s analizom I2C sabirnice. Softver se normalno nosio s dekodiranjem. Možete vidjeti pakete pisanja u registre kada je pokrenut upravljački program zaslona TM1637

RF prijemnik od 315 MHz spojen izravno na analizator primio je signal s radio prekidača i izdao Manchester kod. Nakon odabira brzine, Manchester kod se pametnim programom pretvara u niz bajtova.

Pitam se, što je s točnošću mjerenja vremenskih intervala? Nisam imao pri ruci točan generator impulsa, ali Arduino ton (1000) na 1000Hz

i ton (20000) na 20KHz daju prilično točan rezultat.

Kako bih testirao visoku frekvenciju, brzo sam sastavio generator na temelju NE555. Uspjeli smo iz njega izgurati 8 MHz. Analizator je normalno apsorbirao ovu frekvenciju. Nije ga bilo moguće testirati na 20 MHz, ali 8 je također vrlo dobar rezultat za tako jeftin hardver.

Kratak sažetak

Logički analizator je vrlo potrebna i korisna stvar za one koji se bave iskapanjem kineskih periferija za mikrokontrolere (nazovimo to lijepo - obrnuti inženjering)
Među prednostima ovog komada željeza želio bih napomenuti:

  • Privlačna cijena
  • Kompatibilan s prilično praktičnim softverom Saleae Logic
  • Ulazna zaštita u obliku LVC245A bus drivera
  • Male dimenzije

Nisam našao nikakve očite nedostatke u ovom komadu hardvera. Volio bih da sam prije kupio logički analizator - koliko bih vremena uštedio na toliko projekata. Bez sumnje, za neke, mogućnosti ovog dijela hardvera neće biti dovoljne. Postoji puno sofisticiranijih modela, ali cijena od 100-200 dolara čini ove uređaje znatno manje pristupačnima za radio amatere.

Hoćemo li još nešto analizirati?

1. Uvod:

Ova logična analiza Uređaj je dizajniran za snimanje, izdavanje i analizu različitih sekvenci impulsa i sekvencijalnih protokola sa zadanim periodom. Preuzeto zbog hardvera multiprogramer na FT232

2. Kratki opis

Analizator ima 7 ulazno/izlaznih kanala, koji su povezani s različitim uređajima koji se proučavaju prema nahođenju korisnika.

Kanali 1-5 odgovaraju ulazu/izlazu. Ovi kanali mogu biti izlazni ili ulazni ovisno o postavci kanala. Kanal 5 nije usmjeren ni na jedan konektor, ali ima kontaktnu pločicu na ploči.

Kanal 6 – samo ulaz. Ovaj kanal se koristi zajedno s kanalom 1 i služi za simulaciju dvosmjernog ulaza/izlaza, na primjer, kao u I2C sabirnici, odnosno, smjer prijenosa kanala mijenja se kako protokol radi. Izlazni podaci idu na izlaz 3, a ulazni podaci idu kroz kanal 6. Za više detalja pogledajte “Implementacija I2C protokola”.

Kanal 7 je samo izlaz. Ovaj kanal na programatoru implementiran je kao snažan izlaz od 12 V. Na primjer, korišten je kao napajanje za pozadinsko osvjetljenje pri radu sa zaslonom iz Nokie 6100 (pogledajte primjere korištenja)

Na lijevoj strani radnog prozora programa nalaze se postavke za portove analizatora - to su:

  • brzina prijenosa (BoudRate)
  • inverzija kanala (označite “ N.E.G."
  • smjer luke ( IN/OUT)
  • veličina izlaznog polja (dopuštena je veličina do 65kbit)

U središnjem dijelu prozora programa nalazi se grafički prikaz stanja kanala u obliku vremenskog dijagrama. A na dnu polja nalaze se dodatne informacije koje prikazuju nijanse pri korištenju različitih odabranih načina rada analizatora.

Na desnoj strani programskog polja nalaze se kontrole za simulirane protokole. Dostupno:

  • padajući izbornik za odabir protokola
  • 7 padajućih izbornika (po kanalu): odaberite dodjelu kanala i signal protokola
  • inverzija podataka protokola (ne treba brkati s inverzijom luka)
  • prozor za unos podataka (za postavljanje numeričkog niza protokola)

3. Upravljanje iunos podataka.

Lijevi klik miša postavlja kursor na ovo mjesto na ploči valnog oblika bez promjene stanja ovog bita.

Desni klik na ploči valnog oblika, postavlja pokazivač na ovu lokaciju i mijenja stanje bita na ovoj lokaciji.

Osim unosa podataka pomoću miša, možete ih unositi s tipkovnice. Nakon pritiska na tipku “0” ili “1”, umjesto kursora unosi se 0 odnosno 1. Također, radi praktičnosti, funkcija tipke “0” je duplicirana na tipku “2”, tj. kada pritisnete tipku “2” unosi se 0.

Unos podataka niza(samo za zapisnik). Slijed protokola može se unijeti u decimalnom (1 34 987), binarnom (0b100 0b101010 0b1111111111111) i heksadecimalnom (0xFA 0x 12C 0x 1a 2cb). Podaci se unose odvojeni razmacima. Također je moguće miješati formate podataka (123 0b1010 0x12aB).

Upisuje se podatak nakon čega slijedi povećanje adrese. Kada se dosegne granica polja, njegova veličina će se povećati. Maksimalna veličina niza podataka – 65 kbit

Unos podataka po datoteci. Za unos podataka po datoteci, morate stvoriti datoteku s bilo kojim nastavkom, na primjer, txt. Slobodan format.

Brojeve u datoteci možete odvojiti točkom, zarezom ili razmakom. Objašnjenja u datoteci odvojena su točkom i zarezom “;”.

Primjer sadržaja datoteke:

123 343, 234 ; evo objašnjenja iza točke i zareza

0x12F, 0b10101010; i tako dalje.

Driver za analizator.

Analizator koristi posebne funkcije FT232R, za koje morate instalirati poseban upravljački program FTD 2XX. Instaliranje običnog COM porta nije prikladno. Preporučljivo je uzeti upravljački program od proizvođača - na primjer.

4. Priključak analizatora:

Izgled analizatora prikazan je na slici 2.

J 1– kratkospojnik napajanja (Vcc). Ima 4 stanja: 1.8V, 3V, 5V i vanjsko napajanje

XT1– miniUSB. PC veza.

XT 2– konektor sučelja za povezivanje analizatora s ispitanikom. Ima 10 kontakata:

1 kanal 1 (ulaz/izlaz)
2 izlazna priključka za napajanje (Vcc) (ovisno o stanju kratkospojnika napajanja, napajanje će biti ulazno ili izlazno)
3 Cbus 4 se ne koristi. Ali možete emitirati frekvenciju 6, 12, 24 ili 48 MHz (za više detalja pogledajte "upotreba Cbus-a")
5 kanala 2 (ulaz/izlaz)
7 kanal 3 (ulaz/izlaz)
9 kanal 4 (ulaz/izlaz)
4,6,8,10 ukupno

XT3– konektor sučelja za povezivanje analizatora s ispitanikom. Ima 10 kontakata

1 izlazni priključci za napajanje (Vcc) (ovisno o stanju kratkospojnika napajanja, napajanje će biti ulazno ili izlazno).
3 kanal 3 (ulaz/izlaz)
5 kanala 4 (ulaz/izlaz)
7 kanal 6 (samo ulaz)
9 kanal 7 izlaz 12V signal!!!
2,4,6,8,10 ukupno

J2– skakač za 2 pozicije. Mijenja funkciju kanala 6.

položaj 1-2 promijenite kanal 6 s Vcc na 12V
položaj 2-3 promijenite kanal 6 s 0V na 12V
pozicija 1-2 koristi se u programatoru za generiranje MCLR signala kada bljeskaju PIC kontroleri.

Kanali 1-5 su zadani ulazi i nalaze se u trećem stanju (Z stanje). Kad je kanal postavljen na izlaz, emitirat će se samo tijekom odašiljanja.

Svaki kanal ima otpornike za ograničavanje struje od 300 ohma.

Kanal 6 je uvijek izlaz. Zadani status je "0".

5. Korištenje Cbus signala (pin 3 konektora XT2)

Ovaj signal se ne prikazuje u analizatoru jer je nije sinkrono s izlaznim signalima i ima frekvenciju višu od izlaznih impulsa. Nije omogućeno prema zadanim postavkama.

Frekvencije od 6, 12, 24 i 48 MHz mogu se poslati na ovaj pin. To se radi pomoću posebnog uslužnog programa MProg, koji možete uzeti

6. Kratak opis što učiniti kako biste poslali frekvenciju Cbusu:

  1. instalirajte uslužni program Mprog.
  2. odaberite traženje uređaja klikom na povećalo, ili u izborniku Uređaj->Skeniraj, nakon čega uslužni program pronalazi uređaj i prikazuje njegov PID itd.
  3. U kartici Tool odaberite funkciju Read and Parse, odnosno očitavamo trenutne postavke i prikazujemo ih na zaslonu.
  4. otvorite oznaku FT 232 R (ako se nije sam otvorio), nakon čega se otvaraju 2 polja. Obrnuti rs 232 signzl (ovo nas se ne tiče, budući da program analizatora upravlja tim signalima na svoj način) i polje I/O kontrole.
    Polje I/O Controls ima 4 podizbornika C1-C4.
  5. odaberite izbornik C4. Ovo su dodatne funkcije signala Cbus4. Od svih predloženih funkcija, zanimaju nas CLK6, CLK12, CLK24 i CLK48. Sve bi trebalo biti jasno iz naziva funkcija J . Preostale funkcije nemaju učinka (točnije, prilikom njihovog odabira nije moguće predvidjeti stanje ovog pina), jer su dizajnirane za rad u COM port modu.
  6. Kako bi FT232R koristio odabranu funkciju, morate spremiti projekt (bez toga neće raditi), ovako je napisan ovaj uslužni program.
  7. Nakon spremanja projekta na disk, možete reprogramirati naš FT232R. Gumb za munje je aktiviran. Nakon što ga pritisnete M prog će napisati naše postavke u čip.

7. Kako opisati i koristiti vlastiti protokol

Da biste stvorili opis protokola, morat ćete napisati vlastitu INI datoteku. Preporučam da kopirate jednu od postojećih datoteka i promijenite je. Uzmimo datoteku SPI_9BIT kao primjer. Objašnjenja u ovim datotekama moraju biti navedena u zasebnim redovima!!!

;Zaglavlje postavki u ovom odjeljku datoteke navodi specifične postavke protokola:


;broj redaka u protokolu. U ovom ih ima 4
num_lin = 4
;ispod redova su navedeni brojevima i naznačeni su njihovi nazivi
lin1 = MOSI
lin2 = MISO
lin3 = SCK
lin4 = SS
;broj prenesenih bitova
bitovi = 18
;dodati. informacije, bit će prikazane u prozoru s dodatnim informacijama.
upozorenje = kanal 6 je vezan za kanal 1 u hardveru. Baudrate se dijeli s 2, budući da se sat prenosi u 2 takta
;zaglavlje protokola. Niže će biti opisane sekvence korištene u protokolu.


SS = N N N N N N N N N N N N N N N N N N N
SCK = N O N O N O N O N O N O N O N O N O
MOSI = 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8
MISO = N N N N N N N N N N N N N N N N N N N N

U ovom odjeljku, broj bita 0 1 2 14 34, itd. je označen kao preneseni bit. Kao prenesenu 1 napišite O (od engleskog One), kao prenesenu 0 napišite N (tj. Null).

VAŽNO: Kada se opisuje protokol, može postojati razlika u broju bitova navedenih u num_lin i onih opisanih u odjeljku protokola.

Nakon što ste ispravili ili napisali INI datoteku, trebate dodati unos u datoteku protocol.lst. tako da program može pronaći i koristiti novi protokol.

8. Primjer korištenja analizatora za analizu I2C sabirnice

Prvo povezujemo analizator na I2C sabirnicu (testirani uređaj je nunchuck joystick iz Wii konzole), nisu potrebni vanjski elementi. Dijagram povezivanja prikazan je na slici 3. Ne vidim smisla u opisivanju protokola. Ovo je detaljno napisano na internetu.

Kao što je vidljivo iz dijagrama, za implementaciju se koriste 3 kanala (kanali 1,4,5), a I2C protokol je dvožilni. Zaključak je da analizator nema mogućnost mijenjanja smjera sabirnice tijekom prijenosa signala, pa se odvajanje ulaznog i izlaznog signala događa na tranzistoru (vidi dijagram). Dakle, kanal 1 je izlaz: šalje podatke u I2C. A kanal 5 je ulazni: prima podatke preko I2C.

Za konfiguraciju odaberite "I2C" u izborniku za odabir sučelja i postavite sljedeće potvrdne okvire i gumbe:

Kanal 1 NEG (inverzni izlaz) OUTSDA _OUT izlazni podaci

Kanal 4 OUTSCL signal sata

Kanal 5 IN SDA _IN ulazni podaci

9. Primjer korištenja analizatora za analizu sabirniceSPI (9malo)

Ovaj primjer pokazuje imitaciju serijskog protokola za upravljanje zaslonom iz Nokia6100. Shema spajanja zaslona na analizator prikazana je na slici 4. Od vanjskih elemenata potreban je samo otpornik za ograničenje struje za pozadinsko osvjetljenje zaslona. Posebna značajka je da SPI prijenos nije 8 bita, kao obično, već 9.

Za rad ovog protokola u analizatoru je kreiran poseban 9-bitni SPI.

Konfiguriranje analizatora i protokola signala.

Za konfiguraciju odaberite “SPI _9BIT” u izborniku za odabir sučelja i postavite sljedeće potvrdne okvire i gumbe:

Kanal 1 OUT; ovaj signal ćemo registrirati ručno. Nije u zapisniku

Kanal 2 OUT SS; signal odabira čipa

Kanal 3 OUT SCK ;protokolni sat

Kanal 4 OUT MOSI ;podatkovni signal

Budući da nemamo primljenih podataka, svi signali su konfigurirani kao izlaz i ne koristi se signal MISO protokola.

Također je potrebno postaviti kratkospojnik napajanja na položaj 3,3 V, jer će se uređaj napajati iz analizatora.

Arduino je jedinstveni mikrokontroler koji vam omogućuje stvaranje bilo kojeg uređaja, ograničenog samo maštom inženjera. Danas ćemo govoriti o jednom od ovih projekata i analizirati analizator antene na Arduinu, kao i sve nijanse s kojima ćete se morati suočiti prilikom lemljenja i programiranja.

Zapravo, analizator spektra na Arduinu je prilično jednostavan projekt, ali je idealan za početnike i one koji žele dodati ovaj uređaj u svoj alat. Pogledajmo što je to logički analizator na Arduinu i koje vas zamke čekaju prilikom dizajniranja i lemljenja.

Sklop logičkog analizatora baziran na Arduino MK

Prvo moramo dizajnirati što ćemo lemiti. Logički analizator jednostavan je instrument čiji je cijeli posao čitanje i analiza binarnog koda (digitalnog signala) koji se prenosi primjenom električne energije.

Drugim riječima, svakih 5 volti dovedenih u uređaj je jedinica, odsutnost toga je nula. Ovaj binarni kod koristi se u kodiranju podataka iu mnogim uređajima, uključujući one temeljene na Arduinu. Čitanje počinje, u pravilu, s jednim. A da biste provjerili svoj projekt binarnim kodiranjem, trebat će vam logički analizator.

Najlakši način je isprobati uređaj na I2C sabirnici, koja se do danas koristi u većini elektroničkih uređaja. Da bismo shvatili što trebamo dizajnirati, pogledajmo glavne karakteristike uređaja:

  1. 4 kanala za logičku analizu dolaznih signala.
  2. Varijabilnost frekvencija signala je do 400 kHz; ovaj raspon će pokriti većinu modernih uređaja, osim specijaliziranih.
  3. Ulazni napon trebao bi biti do +5 volti, kao što je već opisano, to je standard uzet kao jedinica (prisutnost signala).
  4. LED zaslon za prikaz informacija. Osobito sofisticirani programeri mogu kupiti nekoliko LED dioda i napraviti vlastiti zaslon dijagonale koja im je potrebna, ali za sve ostale će pisanje softvera za takav uređaj biti previše naporno i ispasti nepotreban korak. Stoga ćemo ovdje razmotriti verziju uređaja s LCD zaslonom.
  5. 4 baterije za napajanje, 1,2 V na maksimalni napon od 4,8 V.
  6. RADNA MEMORIJA. Preporučljivo je uzeti dvije varijante - velike brzine (3,6 ms po signalu) i niske brzine (36 s), ovo rješenje će vam omogućiti pokrivanje cijelog raspona signala.
  7. Upravljačka ploča ili par gumba.
  8. Bilo koja školjka za pričvršćivanje strukture. Možete ga ispisati na 3-D pisaču, možete uzeti nepotrebnu plastičnu kutiju ili uopće bez kućišta. Ovdje nećemo davati savjete, uređaj radi, da li sa školjkom ili bez, izbor je na vama.

Za napajanje morate odabrati baterije, jer 4 baterije od 1,5 V mogu oštetiti Arduino i spaliti ploču. Da ne spominjemo opasnost za LCD zaslon. Stoga nemojte štedjeti i uzmite kvalitetne komponente. Uostalom, kvaliteta konačnog proizvoda jednaka je parametru njegove najgore komponente.

Ne zaboravite dodati sklopku S1 u završni krug, koja će se koristiti za napajanje i isključivanje uređaja kako se baterije jednostavno ne bi ispraznile.

Također će biti potrebni posebni pull-up otpornici koji će eliminirati lažne podatke koji se mogu pojaviti zbog elektromagnetskog polja prstiju signalne sonde. Kao rezultat toga, šum i izobličenje na digitalnim ulazima bit će minimalni.

LED diodu možete uzeti po želji, potrebno je označiti prisutnost digitalnog signala, a može se potpuno zamijeniti softverom za LCD zaslon. Ovo rješenje je prikladno samo kao indikator snimanja digitalnih signala u memoriju, ali u svakom slučaju, uređaj ćete aktivirati ručno, tako da se takva indikacija, ako je potrebno, može ukloniti.

Preporučeni periferni uređaji za izradu logičkog analizatora temeljenog na Arduino mikrokontroleru

Iz svega navedenog već ste sastavili okvirni popis perifernih uređaja za kupnju, ali razjasnimo ovu točku. U logičkom analizatoru trebat će vam:

  1. Sam Arduino mikrokontroler. Nije bitno koji ćete odabrati, to će utjecati samo na konačnu veličinu uređaja. Softver za sve verzije izgleda isto. Korištena je ploča na gornjoj fotografiji.
  2. LCD zaslon. Ako imate stari telefon s tipkama, možete ga ukloniti i postaviti proizvodnju bez otpada.
  3. Otpornici raznih kapaciteta.
  4. Trenutni senzor.
  5. 4 baterije.
  6. LED ili dvije.
  7. Memorijska kartica, ali to nije obavezno.

Osim toga, naravno, trebat će vam lemilo, lem i drugi pribor. Bolje je unaprijed pronaći mjesto gdje ćete sve to sakupiti. A ako prvi put radite s lemilom, proučite pravila zaštite od požara i značajke njegovog rada kako ne biste ponovno lemili svaki dio 10 puta.

Programiranje Arduino MK pri implementaciji projekta “logičkog analizatora”.

Zahvaljujući popularnosti Arduina, na ovom MK-u već postoje gotove biblioteke i funkcije za logičke analizatore. Sve što trebate učiniti je odabrati onaj pravi i prepisati programski kod za svoj uređaj. Uostalom, ploče, senzori i ostali ulazi su različiti za svakoga, a da bi vaš uređaj radio bez problema morat ćete tuđi kod prilagoditi svojim potrebama. Ako se ne želite zamarati i imate iskustva s programiranjem u C++, možete koristiti bilo koje okruženje koje želite.

Kod za krug na gornjoj fotografiji mogao bi biti ovakav:

/************************************ 128 x 64 LCD logički analizator 6 kanala i 3Mb/s Autor Bob Davis koristi univerzalnu 8-bitnu grafičku biblioteku, http://code.google.com/p/u8glib/ Autorsko pravo (c) 2012., [e-mail zaštićen] Sva prava pridržana. ************************************************ ****/ #include "U8glib. h" // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 // U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // **** NAPOMENA **** Pomaknuo sam tri kontrolne igle !!! U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 1, 2, 3); int uzorak; int Ulaz=0; int Stari ulaz=0; int xpos=0; void u8g_prepare(void) ( u8g.setFont(u8g_font_6x10); u8g.setFontRefHeightExtendedText(); u8g.setDefaultForegroundColor(); u8g.setFontPosTop(); ) void DrawMarkers(void) ( u8g.drawFrame (0,0,128,64); u8g .drawPixel (20,1); u8g.drawPixel (40,1); u8g.drawPixel (60,1); u8g.drawPixel (80,1); u8g.drawPixel (100,1); u8g.drawPixel (20, 62); u8g.drawPixel (40,62); u8g.drawPixel (60,62); u8g.drawPixel (80,62); u8g.drawPixel (100,62); ) void draw(void) ( u8g_prepare(); DrawMarkers(); // čekamo okidač pozitivnog ulaza Input=digitalRead(A0); while (Input != 1)( Input=digitalRead(A0); ) // skupljamo analogne podatke u polje // Ne petlja je oko 50% brža! Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC; Sample=PINC ; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak =PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; Uzorak=PINC; // prikaz prikupljenih analognih podataka iz polja for(int xpos=0; xpos<128; xpos++) { u8g.drawLine (xpos, ((Sample&B00000001)*4)+4, xpos, ((Sample&B00000001)*4)+4); u8g.drawLine (xpos, ((Sample&B00000010)*2)+14, xpos, ((Sample&B00000010)*2)+14); u8g.drawLine (xpos, ((Sample&B00000100)*1)+24, xpos, ((Sample&B00000100)*1)+24); u8g.drawLine (xpos, ((Sample&B00001000)/2)+34, xpos, ((Sample&B00001000)/2)+34); u8g.drawLine (xpos, ((Sample&B00010000)/4)+44, xpos, ((Sample&B00010000)/4)+44); u8g.drawLine (xpos, ((Sample&B00100000)/8)+54, xpos, ((Sample&B00100000)/8)+54); } } void setup(void) { pinMode(A0, INPUT); pinMode(A1, INPUT); pinMode(A2, INPUT); pinMode(A3, INPUT); pinMode(A4, INPUT); pinMode(A5, INPUT); // assign default color value if (u8g.getMode() == U8G_MODE_R3G3B2) u8g.setColorIndex(255); // RGB=white else if (u8g.getMode() == U8G_MODE_GRAY2BIT) u8g.setColorIndex(3); // max intensity else if (u8g.getMode() == U8G_MODE_BW) u8g.setColorIndex(1); // pixel on, black } void loop(void) { // picture loop // u8g.firstPage(); do { draw(); } while(u8g.nextPage()); // rebuild the picture after some delay delay(100); }

Ne zaboravite preuzeti biblioteke za rad s Arduinom. Također uzmite u obzir da izlaz ide na LCD zaslon. Kada završite s pisanjem softvera, jednostavno ga učitajte na ploču pomoću posebnog USB adaptera.

Može se dogoditi da zbog načina prikaza informacija na LCD zaslonu nemate dovoljno trajne memorije uređaja. U ovom slučaju ima smisla kupiti flash pogon i pričvrstiti ga na sustav. Srećom, to se radi vrlo jednostavno, a sve što trebate je poseban adapter za vaš faktor fizičkog pogona.

Logički analizator nezamjenjiv je pomoćnik u otklanjanju pogrešaka u digitalnom sklopu. Pogledajmo osnovne tehnike za rad sa Saleae Logic Analyzer i njegovim kineskim analozima.

Za rad će nam trebati:

  • spojne žice (preporučam ovaj set);
  • maketa.

1 Specifikacije logičkog analizatora Saleae logički analizator

Logički analizator je alat za vremensku analizu digitalnih signala. Ovo je neizostavan, doista neophodan alat pri otklanjanju pogrešaka digitalne elektronike. Izvorni analizatori poznatih proizvođača koštaju puno novca. Takav uređaj možete kupiti od naših kineskih prijatelja za sitne novce. Stoga, ako ga još nemate, svakako ga kupite. Mogućnosti ovog malog uređaja su prilično impresivne.

U tablici su navedeni glavni parametri logičkog analizatora, moje kineske kopije analizatora tvrtke Saleae.

2 Instalacija upravljačkog programa za Saleae logički analizator

Srećom, za ovaj logički analizator - kinesku kopiju - prikladan je upravljački program iz originala. Idite na službenu web stranicu, preuzmite program za svoj operativni sustav i instalirajte ga. Upravljački programi bit će instalirani zajedno s programom. Usput, pregled mogućnosti programa u obliku uputa na engleskom priložen je na kraju ovog članka.

Ako imate kopiju druge tvrtke, na primjer, USBee AX Pro, tada će s velikom vjerojatnošću za to biti prikladni i upravljački programi proizvođača originalnog analizatora.

3 Primjeri rada s logičkim analizatorom

Za prvi eksperiment uzmimo USB-UART pretvarač na FTD1232 čipu. Spojimo analizator na USB priključak. Spojimo igle kanala 1 do 6 na igle USB-UART pretvarača. Uglavnom, najviše nas zanimaju samo dvije linije - Rx i Tx, samo s njima možemo proći. Pretvarač je identificiran u sustavu kao COM port. Pokrenimo bilo koji terminal (ovdje je, na primjer, dobar program za rad s COM priključkom) i spojimo se na priključak.


Spajanje USB-UART pretvarača na FTD1232 čipu na logički analizator

Pokrenite program Saleae Logic. Ako su upravljački programi za analizator ispravno instalirani, prikazat će se naziv programa Povezan- povezan. Recimo da ne znamo na kojem će kanalu biti signala, a na kojem neće, pa nećemo postaviti okidač za početak hvatanja signala. Samo kliknite na strelice velikog zelenog gumba Početak(Start) i stavite ga u polje Trajanje(Trajanje) recimo 10 sekundi. Ovo je vrijeme tijekom kojeg će logički analizator prikupljati podatke koji dolaze sa svih 8 kanala nakon pritiska na gumb "Start". Pokrećemo snimanje i istovremeno šaljemo neku poruku na COM port. Nakon 10 sekundi analizator će završiti prikupljanje podataka i prikazati rezultat u polju za prikaz signala. U ovom slučaju, signal će biti na samo jednom kanalu, koji je spojen na Tx (predajnik) pin USB-UART pretvarača.


Radi jasnoće, možete konfigurirati dekoder presretnuti podaci. Da bismo to učinili, u desnom stupcu nalazimo polje analizatori, kliknite ikonu plus - "Dodaj", označite vrstu - Asinkroni serijski. Pojavit će se prozor s upitom da odaberete postavke. U prvo polje unesite broj kanala na kojem imate podatke. Ostalo ostavimo kako jest. Nakon pritiska na tipku Uštedjeti(Spremi), plave oznake pojavit će se iznad odgovarajućeg polja kanala prikazujući vrijednosti bajtova koje su presretnute. Klikom na zupčanik u ovom dekoderu možete postaviti način prikaza vrijednosti - ASCII, HEX, BIN ili DEC. Ako ste poslali niz na COM port, odaberite ASCII mod i vidjet ćete tekst koji ste poslali na port.


Upravo tamo, u desnom stupcu programa Saleae Logic, možete dodati oznake presretnutim podacima, mjeriti kašnjenja i trajanja, postaviti sve vrste markera, pa čak i pretraživati ​​podatke za dekodirane protokole.

Spojimo logički analizator na USB-RS485 pretvarač na isti način. Postoje samo dvije podatkovne linije, tako da možete postaviti okidač za okidanje na rubu bilo kojeg od kanala: signal u RS-485 protokolu je diferencijalni i rubovi impulsa pojavljuju se istovremeno na svakom od kanala, ali u protufazi.


Pritisnite gumb "Start" u programu analizatora. Pomoću našeg terminala spojit ćemo se na USB-RS485 pretvarač i prenijeti neke podatke. Kada se okidač aktivira, program će početi prikupljati podatke i po završetku ih prikazati na ekranu.


Saleae Logic vam omogućuje izvoz spremljenih podataka u obliku slika i tekstualnih podataka, spremanje programskih postavki, komentara i dekodera kanala.

Posljednji primjer u ovom kratkom pregledu je snimljeni okvir podataka koji se prenosi preko serijskog SPI protokola. Kanal 2 prikazuje signal odabira podređenog, kanal 0 pokazuje taktne impulse, a kanal 1 prikazuje stvarne podatke od glavnog do podređenog.


zaključke

Logički analizator može biti vrlo koristan pri razvoju i konfiguraciji svih vrsta elektroničkih uređaja, pri pisanju softvera koji radi u sprezi s hardverom, pri radu s mikrokontrolerima, FPGA i mikroprocesorima, za analizu rada raznih uređaja i protokola za razmjenu podataka, te za mnoge druge aplikacije. Osim toga, prenosiv je i ne zahtijeva zasebno napajanje.

Preuzmite upute za korištenje programa za logički analizator Saleae

  • Preuzmite upute za korištenje programa za Saleae logički analizator s Depositfiles.com
  • Preuzmite upute za korištenje programa za Saleae logički analizator s File-upload.com
  • Preuzmite upute za korištenje programa za Saleae logički analizator s Up-4ever.com
  • Preuzmite upute za korištenje programa za Saleae logički analizator s Hitfile.com