Почему моя форма сигнала начинается перед триггером?


10

Я учусь анализировать частоту и данные шины SPI с помощью цифрового запоминающего осциллографа начального уровня. Я использую BK Precision 2542B для измерения выхода тактовых импульсов и линий MOSI от Netduino, который использует микроконтроллер ARM.

Осциллограф Изображение

На этом изображении у меня есть часы на канале 1 (желтый) и MOSI на канале 2 (синий). Триггер настроен на использование канала 1, используя триггер с нарастающим фронтом 1.44V. Амплитуда тактовой волны составляет около 3,3 В.

Триггерный индикатор находится в центре дисплея по горизонтали, но у меня есть импульс слева от него. Я ожидал, что первый импульс часов начнется в месте запуска. Я знаю, что цифровой запоминающий осциллограф позволяет вам видеть события до и после запуска, но я запутался, почему первый импульс не там, где я думал.

Мое понимание запуска неверно, или я просто использую странную область?

Редактировать: ширина импульса составляет 300 мкс, повторяется с интервалом в 2 мс, и у меня есть значение удержания триггера 500 мкс. Регулировка удержания не изменила тот факт, что один импульс предшествует триггеру.

Изменить 2:

После дополнительного анализа сигнала, в том числе с использованием аналогового осциллографа, я думаю, что я определил, что иногда длительность импульса составляет около 350 мкс вместо 300 мкс. Это может быть сбой в коде, генерирующем кадры.

Я обнаружил, что время задержки 352 мксек даст ожидаемый результат, но время от времени дополнительный импульс предшествует триггеру.

Удерживающее значение

Я записал несколько кадров, чтобы показать, что импульс отсутствует и присутствует:

Ведущий пульс отсутствует Ведущий импульс присутствует

Если я установлю горизонтальную временную базу достаточно долго, чтобы увидеть длительность импульсов, между ними всегда будет не менее 1,7 мс:

Данные импульсов на 1 мс на дел

Поэтому, хотя я думаю, что ведущий импульс является результатом «сбоя» источника, я все еще не уверен, как удержание триггера> 360 мкс все же дает неожиданный ведущий импульс.


2
Проверьте свое меню триггера - возможно, вы запускаете при низком импульсе в течение => определенного времени, и это будет соответствовать снимку экрана, который вы показали. Попробуйте вместо этого активировать края.
Энди ака

У меня также есть область действия «начального уровня», Owon SDS7102, и она тоже иногда пропускает первый триггер. Поведение, кажется, зависит от временной базы / частоты дискретизации / настроек памяти и частоты сигнала. Может быть, на вас тоже могут повлиять настройки временной базы / частоты дискретизации?
AndrejaKo

1
Я видел, что прицелы за 18 000 долларов не могли развернуться и повторить за 5 мс. Довольно грустно, правда. По крайней мере, с интервалом в 2 с это не должно быть вашей проблемой.
Даррон

1
@darron Как оказалось, 2s были опечаткой - импульсы с интервалом 2 мс. Я думаю, что сфера перезапускает курок достаточно быстро, но другие факторы играют, как я уже упоминал, в обновлении вопроса.
Джелтон

Ответы:


3

Возможно, у вас включена какая-то фильтрация триггера или задержка. В противном случае обычный триггер с нарастающим фронтом должен был поймать первый импульс, а не ждать до второго. Внимательно просмотрите триггерное меню и отключите все, что называется «фильтр», «задержка», «задержка» и тому подобное.


Я редактировал вопрос. Поток данных повторяется каждые 2 мс, а не 2 с. Я гарантировал, что фильтрация не включена, и что задержка триггера немного длиннее, чем последовательность импульсов. Мой аналоговый (BK 2190B) прицел прекрасно срабатывает при первом тактовом импульсе. Цифровой, однако, всегда пропускает это. Я не уверен, что еще нужно делать, кроме как вернуть цифровой прицел, он кажется не очень способным.
Джелтон

3

Этот же сигнал срабатывает очень хорошо, используя Tektronix TDS3014, со значениями задержки срабатывания в диапазоне от 350 мкс до 1,5 мс или более.

Tek TDS3014 Результат

Поэтому я думаю, что ответ заключается в перекрестной проверке сигналов с несколькими областями, когда что-то выглядит неправильно.

Я так и не смог заставить BK 2542B правильно показывать часы, не пропустив ни первый импульс, ни показав случайные «сбои» или «мусор», делающие тактовые импульсы несчетными.


0

Чувак, шина SPI синхронизируется при падении тактовой частоты, а не при подъеме, поэтому все выглядит неуместно!

С уважением, Макс


Бьюсь об заклад, сфера не заботится о том, как синхронизируется SPI, все, что он видит, это сигнал A и сигнал B.
Дмитрий Григорьев

0

Ну, технически ваша сфера не сделала ничего плохого: вы хотели синхронизироваться по нарастающей частоте, и все ваши скриншоты есть. Никто не говорил вам, что это будет первый пульс . Если прицел начинает запись достаточно рано, триггер должен нажать на самый первый импульс, если нет - повезло, вы получите изображение # 2.

Я не могу понять, почему вы хотите, чтобы ваш триггер был на CLK, а не на сигнале SS. Падение фронта SS гарантирует, что вы находитесь в начале транзакции, а повышение CLK - нет.

РЕДАКТИРОВАТЬ: учитывая, что вы, кажется, всегда пропускаете ровно один импульс, в конце концов, это похоже на ошибку в области видимости. Тем не менее, посмотрите, помогает ли запуск по SS.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.