Saleae Logic 8 klon Priča o Arduinu i SBC uređajima u okviru SK LABS je ušla u treću godinu, tako da se može pretpostaviti da su mejkeri sakupili dovoljno znanja za realizaciju sopstvenih projekata. Prilikom rada u praksi se, pre ili kasnije, dešavaju momenti kada su sve komponente priključene onako kako treba, programski kod ne sadrži nikakve greške, ali projekat ne radi kako bi se to od njega očekivalo. U takvim situacijama se obično prvo poseže za starim dobrim multimetrom da bismo proverili da li su galvanski spojevi u redu. Oni koji imaju sreću da poseduju osciloskop mogu saznati više informacija, ali je poznato da su u pitanju relativno skupe naprave koje koriste uglavnom profesionalci. Postoje i donekle slični uređaji koji se nazivaju logičkim analizatorima, a njihova je namena da omoguće analizu podataka na digitalnoj magistrali podataka. Ovde moramo istaći da postoje modeli osciloskopa koji imaju mogućnosti slične digitalnim analizatorima, kao što postoje i logički analizatori koji mogu meriti analogne vrednosti. I dok osciloskopi uglavnom imaju dva ili četiri ulaza, njihov broj kod logičkih analizatora je znatno veći i pri tome uglavnom važi pravilo da je broj ulaza proporcionalan ceni uređaja. Cena vrhunskih modela se meri hiljadama dolara, a mi ovom prilikom obrađujemo jeftini dalekoistočni klon analizatora Saleae Logic 8, koji ima mogućnost istovremenog merenja osam digitalnih kanala. I dok za originalni model (Pro 700) treba izdvojiti 400 dolara, njegova „kosooka” varijanta košta celih šest dolara! Treba ipak naglasiti da je originalni uređaj dosta kvalitetniji i podržava semplovanje do brzine od 100 megaherca (Pro do 500 megaherca), dok njegov klon zadržava kompatibilnost na softverskom nivou, ali mu je maksimalna brzina semplovanja 24 megaherca. To je sasvim dovoljno za najveći broj primena kojima se ovde bavimo. Centralni deo sistema čini mikrokontroler Cypress CY7C68013A, koji je baziran na starom dobrom 8-bitnom jezgru Intel 8051 sa taktom od 24 megaherca i ima mogućnost povezivanja putem USB2.0 interfejsa. Ovo kolo u sebi ima 16 kilobajta RAM, dok je inicijalni program smešten unutar pratećeg I2C EEPROM čipa. Treće integralno kolo je 8-linijski primopredajnik (transceiver) NXP LVC245A, čija je funkcija da služi kao posrednik između mikrokontrolera i spoljašnjih linija podataka. Pošto je u pitanju jednostavan i jeftin dizajn, postoji veliki broj sličnih modela koji se uglavnom razlikuju u izgledu kućišta. Sa analizatorom možemo semplovati podatke na brzinama 24, 16, 12, 8, 4, 2, 1 megaherc, 500, 250, 200, 100, 50 i 25 kiloherca, što je dijapazon koji sasvim dobro odgovara potrebama rada sa mikrokontrolerima i interfejsima koje oni podržavaju.Uređaj se preko mini USB porta priključuje na računar, dok sa druge strane postoji konektor sačinjen od deset iglica od kojih osam predstavlja ulaze za merenje, dok su preostale dve namenjene povezivanju sa signalom kloka i uzemljenjem. Što se tiče kablova za povezivanje, koriste se žice sa tzv. dupont konektorima koji bar sa jedne strane moraju biti ženskog tipa. Za udobniji rad se toplo preporučuje nabavka kablova sa minijaturnom štipaljkom koju priključujemo na nožice konektora ili integralnih kola.Za prikazivanje očitanih podataka se koristi program koji besplatno preuzimamo sa sajta proizvođača originalnog modela (saleae.com/downloads). Softver omogućuje snimanje do deset milijardi semplova, što znači da pri maksimalnom taktu od 24 megaherca imamo na raspolaganju 417 sekundi zapisa. Moguće je raditi sa naponskim nivoima od 5, 3,3 i 2 volta, dok ćemo u slučaju rada sa nivoom od 1,8 volta (iako je podržano) često dobijati netačne rezultate. Ako nije bilo problema sa povezivanjem, program će na zelenom ekranskom tasteru ispisati „Start”, što znači da je spreman za semplovanje. Ukoliko povezivanje nije završeno sa uspehom, ulazimo u režim simulacije.Na panelu sa desne strane se nalazi blok pod nazivom Analyzers i klikom na „+” biramo jedan od 26 različitih protokola (režima očitavanja podataka). Mi smo u konkretnom slučaju izabrali režim SPI, koji kontroliše četiri linije: CS, MISO, MOSI i CLK. Moguće je istovremeno kombinovati različite interfejse dodajući ih u ovo polje, ali ih je nakon završetka rada pametno udaljiti. U zaglavlju reda je moguće odrediti tip okidača (trigger) koji će aktivirati operaciju semplovanja. Nakon isteka predviđenog vremena, pred nama se pojavljuje grafik tipičan za digitalna merenja. Dovođenjem kursora na mesto koje predstavlja prikaz digitalne jedinice ili nule, dobijamo podatke o širini signala, njegovoj frekvenciji i trajanju. Međutim, to je samo deo informacija koje nudi ovaj program. Ostale brojne parametre je moguće uključiti preko panela Annotations i njegove podopcije Measurement. Kada smo već kog tog panela, da ne zaboravimo i podopciju Bookmark preko koje možemo zabeležiti određene pozicije i kasnije se jednostavno vraćati na njih. To bi u grubim crtama bile najvažnije kontrole potrebne za rad sa programom. Kao i u drugim prilikama, potrebno je malo prakse da se savladaju osnovni principi i nakon čega sve ide lako.Iako pruža relativno zadovoljavajuću funkcionalnost, originalni Saleae program nije jedina opcija za korisnike uređaja koji opisujemo. Alternativa mu je besplatni paket pod nazivom Sigrok, koji se može preuzeti sa adrese sigrok.org/wiki/Downloads. Reč je o multiplatformskom softveru namenjenom za upotrebu sa velikim brojem uređaja različitih proizvođača. Podržan je rad sa mnoštvom multimetara, analizatora spektra, izvora napona, osciloskopa, logičkih analizatora, merača zvuka, temperature, osvetljenja, vaga i mnoštva drugih naprava. Kao sastavni deo paketa dolazi program Zadig čija je funkcija da olakša instaliranje potrebnih drajvera. Dosta često će se dešavati da priključeni hardver neće hteti da radi sa originalnim drajverom. U takvim situacijama je potrebno pokrenuti Zadig i iz padajuće liste izabrati uređaj koji je priključen, pa zatim preko Up/Down polja izabrati potrebni drajver. Ukoliko je padajuća lista prazna, potrebno je u meniju Options aktivirati opciju List All Devices. Nakon izbora uređaja, u polju sa Up/Down selektorom biramo drajver WinUSB i u okviru drop-down ekranskog tastera selektujemo opciju Install WCID Driver. Prilikom sledećeg starta programa, uređaj bi trebalo da se automatski prepozna. Inače, u našem slučaju uopšte nije funkcionisao ručni izbor analizatora preko menija Connect to Device, ali su glavobolje takvog tipa cena koju često plaćamo kod rada sa ekstremno jeftinim uređajima. Onima koji to uspeju, potrebno je u padajućem meniju izabrati stavku pod nazivom fx2lafw (generic driver for FX2 based LAs), a zatim izvršiti skeniranje priključenih uređaja preko ekranskog tastera za tu namenu.Centralni deo paketa je aplikacija PulseView, koja je namenjena prikazivanju podataka u obliku grafika. Nakon pokretanja nas dočekuje prozor koji prikazuje kako osam digitalnih, tako i četiri analogne linije. Nepotrebne linije je moguće udaljiti da bi se postigla kompaktnost. Korišćenje je jednostavno, prvo izaberemo broj semplova i njihovu frekvenciju, a zatim klikćemo na ekranski taster Run koji će prikupiti podatke sa uređaja. I ovde imamo na raspolaganju deset milijardi semplova, ali je realizacija dosta bolja, pošto na jednostavan način možemo dovesti u korelaciju broj semplova i vremensko trajanje. Nakon završetka semplovanja, klikom na piktogram žute i zelene boje, izaberemo protokol koji želimo da analiziramo, a broj ponuđenih opcija je apsolutno za svaku pohvalu. Sledeći korak se sastoji u dodeljivanju izmerenih linija signalima protokola. Na primer, kada analiziramo I2C magistralu, potrebno je programu označiti na kojim data linijama se nalaze SCL i SDA signali. To se postiže putem dijaloga koji se pojavljuje klikom na liniju koja označava protokol. Ova opcija omogućava dobijanje sjajnih dijagrama koji kombinuju tajming i vrednost sa linija podataka. Detaljnije informacije o podešavanjima i upotrebi je moguće pronaći na lokaciji sigrok.org/doc/pulseview/unstable/manual.html. Tu ćete, između ostalog, pročitati da u slučaju korišćenja nekvalitetnih USB kablova teško možemo očekivati dobre rezultate pri semplovanju na frekvenciji od 24 megaherca. Prilikom naizmenične upotrebe originalnog Saleae programa i PulseViewa, dolazi do zbrke sa drajverima, ukoliko radi jedan, drugi neće. Prilikom rada sa Saleae softverom, u svojstvima drajvera u Device Manageru na tabu General, kod polja Manufacturer treba da stoji Sealae LLC. Ukoliko posle toga drajver prilikom starta originalne aplikacije „sleti”, potrebno ga je ponovo instalirati.Oba programa imaju svoje pozitivne i negativne strane. Originalni je urađen kvalitetnije, ali mu nedostaju neke stvari koje ima PulseView. Tu pre svega mislimo na broj podržanih protokola za analiziranje, kao i na prikaz podataka u okviru protokola. PulseView je sa druge strane prilično bagovit i dosta opcija mu još nije implementirano, ali to kompenzuje svojom funkcionalnošću i zato mu dajemo prednost. Nažalost, nijedan od njih ne poseduje izuzetno korisnu mogućnost definisanja šablona okidača koji bi dozvoljavali aktivaciju semplovanja u trenutku kada se na magistrali pojavi definisani skup vrednosti. Opisani logički analizator je veoma koristan i treba da se nađe pri ruci svakome ko radi sa elektronikom. Pošto „pravi” logički analizatori spadaju u skupe uređaje, cena ovog modela je takva da i amateri mogu da koriste mogućnosti ovih aparata. Nakon određenog vremena provedenog u analizi podataka sa pratećim programima, korisnici stiču uvid u funkcionisanje interfejsa na nivou hardvera, što omogućuje njihovo efikasnije programiranje, analizu i lakše otkrivanje grešaka. Igor S. RUŽIĆ | | |