Tôi đang học cách phân tích đồng hồ và dữ liệu xe buýt SPI bằng cách sử dụng máy hiện sóng lưu trữ kỹ thuật số cấp nhập cảnh. Tôi đang sử dụng BK Precision 2542B để đo đầu ra của các dòng đồng hồ và MOSI từ Netduino sử dụng vi điều khiển ARM.
Trong hình ảnh này, tôi có đồng hồ trên kênh 1 (màu vàng) và MOSI trên kênh 2 (màu xanh). Trình kích hoạt được đặt để sử dụng kênh 1, sử dụng trình kích hoạt cạnh tăng 1,44V. Biên độ sóng vuông của đồng hồ là khoảng 3,3V.
Chỉ báo kích hoạt nằm ở trung tâm của màn hình theo chiều ngang, nhưng tôi có một xung ở bên trái của nó. Tôi đã mong đợi xung đầu tiên của đồng hồ sẽ bắt đầu tại vị trí kích hoạt. Tôi biết rằng một máy hiện sóng lưu trữ kỹ thuật số cho phép bạn xem các sự kiện trước và sau kích hoạt, nhưng tôi bối rối tại sao xung đầu tiên không phải là nơi tôi nghĩ nó sẽ xảy ra.
Là sự hiểu biết của tôi về việc kích hoạt không chính xác, hoặc tôi chỉ đang sử dụng một phạm vi kỳ lạ?
Chỉnh sửa: Mạch xung rộng 300μs, lặp lại trong khoảng thời gian 2ms và tôi có một bộ kích hoạt giữ giá trị 500μs. Điều chỉnh giữ không thay đổi thực tế là một xung trước kích hoạt.
Chỉnh sửa 2:
Sau khi phân tích thêm về tín hiệu, bao gồm cả sử dụng máy hiện sóng tương tự, tôi nghĩ rằng tôi đã xác định rằng đôi khi thời lượng xung là khoảng 350μs thay vì 300s. Đây có thể là một trục trặc trong các khung tạo mã.
Tôi phát hiện ra rằng thời gian chờ là 352 giây sẽ tạo ra kết quả như mong đợi, nhưng cứ sau một xung lại xuất hiện trước kích hoạt.
Tôi đã ghi lại một số khung hình để hiển thị xung cả vắng mặt và hiện tại:
Nếu tôi đặt cơ sở thời gian theo chiều ngang đủ dài để xem thời lượng của xung, thì luôn có ít nhất 1,7ms giữa chúng:
Vì vậy, trong khi tôi nghĩ rằng xung dẫn đầu là kết quả của một "trục trặc" từ nguồn, tôi vẫn không chắc chắn làm thế nào một kích hoạt giữ lại> 360μs vẫn tạo ra xung dẫn bất ngờ.