Я учусь анализировать частоту и данные шины SPI с помощью цифрового запоминающего осциллографа начального уровня. Я использую BK Precision 2542B для измерения выхода тактовых импульсов и линий MOSI от Netduino, который использует микроконтроллер ARM.
На этом изображении у меня есть часы на канале 1 (желтый) и MOSI на канале 2 (синий). Триггер настроен на использование канала 1, используя триггер с нарастающим фронтом 1.44V. Амплитуда тактовой волны составляет около 3,3 В.
Триггерный индикатор находится в центре дисплея по горизонтали, но у меня есть импульс слева от него. Я ожидал, что первый импульс часов начнется в месте запуска. Я знаю, что цифровой запоминающий осциллограф позволяет вам видеть события до и после запуска, но я запутался, почему первый импульс не там, где я думал.
Мое понимание запуска неверно, или я просто использую странную область?
Редактировать: ширина импульса составляет 300 мкс, повторяется с интервалом в 2 мс, и у меня есть значение удержания триггера 500 мкс. Регулировка удержания не изменила тот факт, что один импульс предшествует триггеру.
Изменить 2:
После дополнительного анализа сигнала, в том числе с использованием аналогового осциллографа, я думаю, что я определил, что иногда длительность импульса составляет около 350 мкс вместо 300 мкс. Это может быть сбой в коде, генерирующем кадры.
Я обнаружил, что время задержки 352 мксек даст ожидаемый результат, но время от времени дополнительный импульс предшествует триггеру.
Я записал несколько кадров, чтобы показать, что импульс отсутствует и присутствует:
Если я установлю горизонтальную временную базу достаточно долго, чтобы увидеть длительность импульсов, между ними всегда будет не менее 1,7 мс:
Поэтому, хотя я думаю, что ведущий импульс является результатом «сбоя» источника, я все еще не уверен, как удержание триггера> 360 мкс все же дает неожиданный ведущий импульс.