Огляд бюджетного китайського логічного аналізатора » Винаходи

Здрастуйте, шановні радіоаматори. У цій публікації розглянемо аналізатор, який, як відомо, один з найнеобхідніших інструментів в арсеналі радіоаматора. Це відео знято на каналі Паяльник TV. Автор ролика розповість про маленькому, але незамінний у багатьох випадках приборчику — логічному аналізаторі. Він за своїми функціями є клоном відомого логічного аналізатора Saleae Logic, який можна придбати в інтернет-магазинах. У свій час він був купену приблизно за 5-6 доларів. Це мініатюрний 8-канальний логічний аналізатор з максимальною частотою семплювання 24 Мгц.

На сьогоднішній день компанія Saleae випустила досить багато нових моделей логічних аналізаторів, у тому числі лінійку, в якій можливо перемикати логічні рівні, тобто, є можливість роботи з логічними рівнями 1,8 В.

Також з’явилася можливість захоплення аналогового сигналу, правда, з невисокою частотою дискретизації. На момент набуття цього клону в лінійці Saleae було все, якщо я не помиляюся, 2 аналізатора логічних це 8-канальний і 16-канальний. І ось у мене в руках 8-канальний аналізатор, тобто, його клон. В комплекті було 10 таких проводів довжиною десь 25 см, з такими роз’ємами, які на IDC і PLS контакти. І відразу я замовив такий наборчик невеликих щупів, щоб було зручно відразу подцепиться або до ніжок компонентів, або в інших випадках, коли такі контакти неможливо використовувати.

І великим, звичайно, стимулом, можна сказати, до створення цього огляду стала нова версія програмного забезпечення від компанії Saleae, яке має помітно більшими можливостями перед старими версіями. І велика частина цього огляду буде присвячена саме оглядом програмного забезпечення, так як, власне, тут особливо нічого розповідати. Так як цей логічний аналізатор на основі ПК, і схема його досить проста. Тут лише один контролер, завдання якого — в реальному часі передавати дані на USB. І обв’язка мінімальна. Зараз я покажу ближче. Корпус розбирається досить просто, і перед нами тепер лежить така хустки. Як я говорив, нічого особливого тут немає. Роз’єм mini-USB, кварц 24 МГц, сам контролер з мінімумом обв’язки. Тут підтягуючі резистори, і резистори послідовно стоять, захисні.Огляд бюджетного китайського логічного аналізатора » Винаходи

Із зворотного боку так само микросхемка EPROM, розв’язка по харчуванню, і стабілізатор 3,3 В, і IDC роз’єм припаяний для підключення. На відміну від оригінальної версії, китайці, звичайно, на апаратній частині значно заощадили. По-перше, це відсутність захисних діодів по входах. В оригінальній версії це є. Також там присутній запобіжник, SMDшный варто, по харчуванню. І найбільша відмінність – це застосування багатошарової друкованої плати. Тут же плата двошарова. Зберемо прилад і приступимо до огляду програмної частини. Отже, це стара версія програми, 1.1.15. Аналізатор у нас не підключений, і зараз ми можемо скористатися програмою в режимі симуляції. Але про це пізніше. Почнемо з налаштувань, їх не так багато. Перше це розмір буфера, тобто, то кількість семплів, яке ми можемо побачити лівіше першого спрацьовування тригера. За замовчуванням 10 мільйонів, але можемо змінити від 1 до 1000. І активувати довгу запис, до 1 трильйона семплів. Але тут попередження, що це займе багато пам’яті. Далі, налаштування інтерфейсу та перевірки оновлень, налаштування для 16-канального аналізу. І тут ми можемо вказати папку з додатковими плагінами, аналізатором протоколів. Налаштування захоплення, кількості зразків, від 1 мільйона до 10 мільярдів, і частота семплювання, від 25 кГц до 24 МГц.

Перша незручність – це те, що не можна просто взяти мишкою і перетягнути канал на потрібне місце. Навіть клацання правою кнопкою не відкриває ніяких властивостей. Меню властивостей каналу знаходиться лівіше. Якщо підвести мишку лівіше тригера, з’являється маленька кнопочка. І тут у нас параметри каналу приховати канал, приховати всі канали нижче, показати, пересунути вниз. Досить невдячне заняття, особливо якщо необхідно пересунути кілька каналів. Так що тут простіше підключити відразу в потрібному порядку, ніж потім через менюшку, це дуже довго, пересувати.

Установки тригера вельми скромні це у нас або висхідний фронт, або спадаючий фронт. Для інших каналів ми можемо задати додаткові умови. Зараз синхронізація запуститься в момент, коли на нульовому каналі буде спадаючий фронт, на першому каналі в цей момент буде високий логічний рівень, на другому низький, і на третьому високий. Тепер підтримувані протоколи. Їх не дуже багато, але зате є SPI Іі V2C, найпопулярніші в мікроконтролерах інтерфейси. Додаємо SPI – і потрапляємо в налаштування. Тут вказуємо, до якого каналу підключений який сигнал. І налаштовуємо властивості протоколу який біт перший, кількість біт на посилку, до 64, 8 стандартно, полярність, фаза тактового сигналу, і яке активний стан Enable, низька або висока. Зберігаємо, і програма пропонує нам перейменувати канали. Погоджуємося. І скористаємося симуляцією. На інших каналах хаотична послідовність символів, так як ніяких протоколів на них не призначено. Збільшуємо масштаб, Enable, тактовий сигнал, що виходять дані, вхідні дані. Останній байт не докодируется, так як в цей момент Enable високий, тобто, не активна у нас передача. І над кожним байтом його значення. Можемо змінити налаштування, в якій системі краще відображати. Мені зручніше в двійковій, ось наші байти в двійковій системі. Праворуч вікно вимірювань, тобто, наводячи курсор, ми бачимо ширину імпульсу, період і частоту. Можемо додати шпаруватість, і показувати байт.

Також є можливість встановити вказівники, але працюють вони досить дивно. Тобто, для швидкої навігації це не годиться. Ми поставили два курсору, хочемо іншого байт якийсь подивитися, і ніяк швидко перейти до нього не можемо. Якщо знову натиснемо на Т1, то заново програма запропонує встановити курсор. Не дуже зручно, але як є. Нова версія програми 1.1.34 бета. Цей інтерфейс мені подобається набагато більше. Все більш однорідно, краще намальовано, і нарешті-то можна просто взяти – і мишкою перетягнути канал в потрібне місце. Або навіть кілька каналів. А не лазити через меню, як в попередній версії, яка в цій версії також на увазі. Можна змінити також вертикальний масштаб каналу. І правим клацанням теж з’являється меню. Тривалість захоплення тепер встановлюється не тільки в зразках, але і по часу, в мілісекундах або в секундах. Поставимо 10 секунд, 4 МГц, частота семплювання. Як бачите, в новій версії наш китайський аналізатор визначився без проблем. Додалося чимало нових протоколів, як ви бачите. Не буду все перераховувати, але ось навіть USB 1.1, PS/2, JTAG, і навіть HD44780. Тепер можна налагоджувати дисплей. Подальшу роботу я покажу на реальному пристрої. додамо протокол SPI, вхідних даних у нас немає. І протокол, за замовчуванням всі налаштування. Приховаємо порожні канали, і зробимо побільше залишилися. Приховати канали, виділимо всі, збільшуємо масштаб…
Налаштування синхронізації в цій версії розширилися. Хоча раніше їм далеко до професійних логічних аналізаторів, але все одно, це вже якийсь крок вперед. Крім синхронізації по висхідному і спадающему фронту, є можливість синхронізації по ширині імпульсу, як позитивного, так і негативного. Зараз нам це не знадобиться. Встановимо синхронізацію по висхідному фронту. Перевіримо налаштування, 10 с, частоту 4 МГц. Натискаємо старт, і чекаємо події від тригера. Подія сталася, зробимо кілька посилок… Думаю, вистачить. Ось наша перша посилка. Чомусь тут не сталося розпізнавання даних, що відправляються. Дуже дивно… Треба буде перевірити в попередній версії програми. Можливо, це пов’язано з бета-версією. Ось вони, наші тактові імпульси. І в кінці защелкивающие імпульс, який виводить дані на виходи регістра. Перевіримо інші посилки… Так, у решти все в порядку. Налаштуємо на двійкове відображення… Давайте подивимося, що з першою посилкою до старої версії програми. Натискаємо Старт і чекаємо події від тригера. Так, перша посилка… Теж не докодировалась. Дуже шкода. Інші перевіримо. Вже бачу… Так, все в порядку.

Тепер про нових булочками. З’явилася вкладка анотацій. Тут ми можемо додати закладку, пару маркерів, так само, як в попередній версії, або вимір. Додаючи закладку, ми просто зберігаємо поточну позицію екрана і при навігації можемо легко повернутися. Пара маркерів, так само, як і в попередній версії, але працює, звичайно, набагато краще. По-перше, ми можемо поставити кілька пар. І по-друге, знову ж, є можливість навігації по ним, досить зручно. Перша пара, друга… Ми можемо необмежену кількість їх використовувати. Також можна додати вимірювання. Що це таке? Штука досить корисна. Схоже на пару маркерів, але більш функціональний. Так само встановлюємо початкову та кінцеву точку, і тепер це вимір у нас завжди відображається.
У налаштуваннях можемо вказати необхідні відображаються величини середня частота, середня шпаруватість, кількість фронтів, висхідних і низхідних, кількість позитивних і негативних імпульсів, максимально вузький позитивний, максимально широкий позитивний імпульс. Також негативний, період, середній період і кількість періодів. При наведенні курсору тепер зверху сигналу відображається вимірювання. Хоча ми можемо налаштувати відображення як і в попередній версії в бічній панелі, цей режим мені не дуже подобається. Набагато зручніше відразу всі вимірювання при наведенні курсору. З нових булочок — це список декодованих даних. Можемо використовувати його для швидкої навігації. Також доступний пошук за цим списком, але поки працює він досить дивно. То кількість символів в рядку обмежена, то цю функцію поки ще не доробили. Тобто, спробуємо знайти, припустимо, 01 00 1111. Нічого. А якщо без пробілів… Теж нічого. І спробуємо повністю ввести рядок… Все, знову нічого. Сподіваюся, у наступних версіях вони цю штуку профиксят, так як це досить корисно.

Невелика незручність – те, що при встановленні тривалості захоплення в зразках не можна ввести 10 і поставити букву М, щоб встановити 10 мільйонів семплів. Обов’язково треба ввести саме цифрами, 10 000 000. Спробуємо подивитися який-небудь більш швидкісний інтерфейс, наприклад, I2S. Аналізатор зараз підключений до ЦАПу, і я підключу по порядку всі канали. CLOCK – це BIT CLOCK, FRAME – WORD CLOCK, і DATA — пояснювати не потрібно. Тут немає сигналу, тільки MASTER CLOCK. Всі інші параметри залишаємо за замовчуванням, так як формат передачі I2S. Зберігаємо. Приховаємо непотрібні канали знову. Зараз у мене відтворюється файл з частотою дискретизації 44,1 кГц і розрядністю 16 біт. Отже, ось вони, наші 44 кГц на WORD CLOCK. BIT CLOCK, як ми бачимо, не дуже симетричні імпульси. Але нам важливо тільки моменти спадаючих фронтів. І час між ними завжди однакове. Так що ніяких проблем. І по черзі перший і другий канали. Так як в налаштуваннях у мене встановлено 24 біта на слово, а відтворюється 16, то, природно, останні біти заповнені нулями. Я переключився на інший файл, 96 кГц з розрядністю 24 біта. Отже, 96, BIT CLOCK… Знову трошки несиметричні імпульси, але відстань між ними завжди однакова, так що ніяких проблем. І вже в кожному слові реальних 24 біта.

Поділитися з друзями:
Відповіді на питання