Преглед на бюджетен китайски логически анализатор Изобретения
Здравейте, скъпи радиолюбители. В тази публикация ще разгледаме анализатора, който, както знаете, е един от най-необходимите инструменти в арсенала на радиолюбител. Това видео е заснето по телевизионния канал Payalnyk. Авторът на видеото ще говори за едно малко, но незаменимо в много случаи устройство - логически анализатор. По своите функции той е клонинг на известния логически анализатор Saleae Logic, който може да бъде закупен в онлайн магазини. Едно време се купуваше за около 5-6 долара. Това е миниатюрен 8-канален логически анализатор с максимална честота на семплиране от 24 MHz.
Към днешна дата компанията Saleae пусна доста нови модели логически анализатори, включително линия, в която е възможно да се превключват логическите нива, т.е. възможно е да се работи с логически нива от 1,8 V.
Също така беше възможно да се улови аналогов сигнал, но с ниска честота на дискретизация. По време на придобиването на този клонинг линията Saleae имаше всичко, ако не се лъжа, 2 логически анализатора: 8-канален и 16-канален. И сега имам 8-канален анализатор в ръцете си, тоест неговият клонинг. Комплектът съдържаше 10 такива проводника с дължина около 25 см с конектори като IDC и PLS контакти. И веднага поръчах такъв набор от малки сонди, така че да е удобно веднага да хванете или краката на компонентите, или в други случаи, когато такива контакти не могат да се използват.
И, разбира се, новата версия на софтуера на компанията Saleae, която има значително по-големи възможности от старите версии, беше голям стимул, може да се каже, за създаването на това ревю. И голяма част от този преглед ще бъде посветена на прегледа на софтуера, тъй като всъщност няма какво специално да се каже тук. Тъй като този логически анализатор е базиран на компютър, неговата схема е достатъчнапросто Има само един контролер, чиято задача е да прехвърля данни към USB в реално време. И обвързването е минимално. Сега ще ви покажа по-отблизо. Случаят се разглобява доста просто и сега имаме такава носна кърпичка пред нас. Както казах, тук няма нищо особено. Mini-USB конектор, 24 MHz кварц, самия контролер с минимално окабеляване. Тук издърпващите резистори, а резисторите са в серия, са защитни.
От задната страна също има EPROM чип, връзка за захранване и стабилизатор 3.3 V, като за свързване е запоен IDC конектор. За разлика от оригиналната версия, китайците, разбира се, спестиха много от хардуерната част. Първо, това е липсата на защитни диоди на входовете. В оригиналната версия е. Има и предпазител, SMDshny струва, за захранване. И най-голямата разлика е използването на многослойна печатна платка. Има и двупластова дъска. Нека да сглобим устройството и да започнем да разглеждаме софтуерната част. Така че това е стара версия на приложението, 1.1.15. Анализаторът не е свързан с нас и сега можем да използваме програмата в режим на симулация. Но повече за това по-късно. Да започнем с настройките, няма толкова много от тях. Първият е размерът на буфера, тоест броят на пробите, които можем да видим вляво от първия тригер. По подразбиране е 10 милиона, но можем да го променим от 1 на 1000. И да активираме дълъг запис, до 1 трилион проби. Но тук има предупреждение, че ще отнеме много памет. След това настройка на интерфейса и проверка за актуализации, настройка за 16-канален анализ. И тук можем да посочим папка с допълнителни плъгини, анализатор на протоколи. Настройки за улавяне, брой проби от 1 милион до 10 милиарда и честота на семплиране от 25 kHz до 24 MHz.
Първото неудобство е, че не можете просто да вземете канала с мишката и да го плъзнете на правилното място.Дори щракването с десния бутон не отваря никакви свойства. Менюто със свойства на канала е отляво. Ако преместите мишката вляво от спусъка, се появява малък бутон. И тук имаме опции за канал скриване на канал, скриване на всички канали по-долу, показване, преместване надолу. Доста неблагодарна задача, особено ако трябва да преместите няколко канала. Така че тук е по-лесно да се свържете веднага в правилния ред, отколкото по-късно през менюто, отнема много време, за да се движите.
Настройките на спусъка са много скромни, имаме или нарастващ фронт, или падащ фронт. Можем да поставим допълнителни условия за други канали. Сега синхронизацията ще започне в момента, когато има спад на нулевия канал, на първия канал в този момент ще има високо логическо ниво, на втория ще бъде ниско, а на третия канал ще бъде високо . Вече се поддържат протоколи. Не са много от тях, но има SPI и V2C, най-популярните интерфейси в микроконтролерите. Добавете SPI - и стигнете до настройките. Тук посочваме кой сигнал към кой канал е свързан. И настройваме свойствата на протокола, кой бит е първи, броя на битовете на пакет, до 64, 8 по подразбиране, полярност, фаза на часовниковия сигнал и кое е активното състояние на Enable, ниско или високо. Ние запазваме и програмата ни предлага да преименуваме каналите. Ние сме съгласни. И нека използваме симулация. На други канали последователността от символи е хаотична, тъй като към тях не са присвоени протоколи. Увеличаване, активиране, часовников сигнал, изходни данни, входни данни. Последният байт не е кодиран, тъй като в този момент Enable е висок, тоест предаването не е активно за нас. И над всеки байт е неговата стойност. Можем да променим настройките в коя система е по-добре да се показва. По-удобно ми е в двоичен код, ето нашите байтове в двоичен код. Вдясно е прозорецът за измерване, тоест можем да видим, когато задържим курсораширина на импулса, период и честота. Можем да добавим снаждане и да покажем байт.
Има и възможност за задаване на указатели, но те работят доста странно. Тоест не става за бърза навигация. Поставили сме два курсора, искаме да погледнем друг байт и не можем бързо да отидем до него. Ако отново натиснем T1, програмата ще предложи отново да настроим курсора. Не е много удобно, но както е. Новата версия на програмата е 1.1.34 beta. Този интерфейс ми харесва много повече. Всичко е по-хомогенно, по-добре нарисувано и накрая можете просто да го вземете и да плъзнете канала на правилното място с мишката. Или дори няколко канала. И да не се изкачвате през менюто, както в предишната версия, което също се има предвид в тази версия. Можете също така да промените вертикалния мащаб на канала. Щракването с десен бутон също извежда меню. Продължителността на заснемането вече се задава не само в проби, но и по време, в милисекунди или секунди. Нека сложим 10 секунди, 4 MHz, честота на семплиране. Както можете да видите, в новата версия нашият китайски анализатор беше открит без проблеми. Добавени са много нови протоколи, както можете да видите. Няма да изброявам всичко, но тук има дори USB 1.1, PS/2, JTAG и дори HD44780. Сега можете да отстраните грешки в дисплея. Ще покажа по-нататъшна работа на реално устройство. добавете SPI протокола, нямаме входни данни. И протокола, по подразбиране всички настройки. Нека скрием празните канали и направим останалите по-големи. Скрийте каналите, изберете всички, увеличете мащаба... Настройките за синхронизиране са разширени в тази версия. Въпреки че са далеч от професионалните логически анализатори, това все пак е крачка напред. В допълнение към синхронизирането на нарастващия и спадащия фронт, има възможност за синхронизиране на ширината на импулса, както положителен, така и отрицателен. Сега няма да ни трябва.Нека зададем синхронизацията на нарастващия фронт. Да проверим настройките, 10 s, честота 4 MHz. Натиснете старт и изчакайте събитието от тригера. Събитието се случи, да направим няколко колета... Мисля, че ще е достатъчно. Ето го първия ни пакет. По някаква причина нямаше разпознаване на изпратените данни. Много странно... Ще трябва да проверите в предишната версия на програмата. Това може да се дължи на бета версията. Ето ги, нашите часовникови импулси. И накрая, блокиращ импулс, който извежда данни към изходите на регистъра. Да проверим другите колети... Да, всичко останало е наред. Нека го настроим на двоичен дисплей... Да видим какво ще се случи с първия пакет към старата версия на програмата. Натиснете Старт и изчакайте събитието от тригера. Да, първият колет... Той също не беше кодиран. Много съжелявам. Другите ще ги проверим. Вече виждам... Да, всичко е наред.
Сега за новите кифли. Появи се разделът с анотации. Тук можем да добавим отметка, чифт маркери, точно както в предишната версия, или измерение. Чрез добавяне на отметка ние просто запазваме текущата позиция на екрана и можем лесно да се върнем при навигация. Чифт маркери, същите като в предишната версия, но работят, разбира се, много по-добре. Първо, можем да поставим няколко чифта. И второ, отново има възможност да се движите през тях, което е доста удобно. Първата двойка, втората... Можем да използваме неограничен брой от тях. Можете също да добавите измервания. Какво е? Артикулът е доста полезен. Подобен на чифт маркери, но по-функционален. По същия начин задаваме началната и крайната точка и сега това измерване винаги се показва. В настройките можем да посочим необходимите показани стойности: средна честота, средно разстояние, брой на ръбовете, нарастващи и спадащи, брой положителни и отрицателни импулси, максимален тесен положителен, максимален широк положителен импулс.Също отрицателен, период, среден период и брой периоди. Измерването вече се показва върху сигнала, когато задържите курсора на мишката върху него. Въпреки че можем да персонализираме дисплея, както в предишната версия в страничната лента, този режим не ми харесва много. Много по-удобно е да направите всички измервания наведнъж, когато задържите курсора. От нови ролки е списък с декодирани данни. Можем да го използваме за бърза навигация. Има и търсене по този списък, но засега работи доста странно. Броят на знаците в ред е ограничен, тогава тази функция все още не е завършена. Тоест, нека се опитаме да намерим, да речем, 01 00 1111. Нищо. И ако няма интервали... Нищо също. И да се опитаме да влезем в целия ред... Това е, пак нищо. Надявам се да поправят това нещо в бъдещи версии, тъй като е доста полезно.
Малко неудобство е, че когато задавате продължителността на заснемане в проби, не можете да въведете 10 и да поставите буквата M, за да зададете 10 милиона проби. Необходимо е да въведете точно в числа, 10 000 000. Нека се опитаме да разгледаме някой по-бърз интерфейс, например I2S. Анализаторът вече е свързан към DAC и ще свържа всички канали по ред. CLOCK е BIT CLOCK, FRAME е WORD CLOCK, а DATA се разбират от само себе си. Тук няма сигнал, само MASTER CLOCK. Оставяме всички останали параметри по подразбиране, тъй като форматът на предаване е I2S. Ние пазим Отново скрийте ненужните канали. В момента възпроизвеждам файл с честота на дискретизация 44,1 kHz и битрейт 16 бита. Ето ги, нашите 44kHz на WORD CLOCK. BIT CLOCK, както виждаме, не много симетрични импулси. Но за нас са важни само моментите на падащи фронтове. И времето между тях винаги е едно и също. Така че няма проблем. И първи и втори канал на свой ред. Тъй като в настройките съм задал 24 бита на дума, а се възпроизвежда 16,тогава, естествено, последните битове се запълват с нули. Превключих на друг файл, 96 kHz с 24 бита. И така, 96, BIT CLOCK… Отново леко небалансирани импулси, но разстоянието между тях е винаги едно и също, така че няма проблем. И всяка дума вече има 24 реални бита.