
Khi board đầu tiên không chịu nói chuyện với cảm biến, câu hỏi đầu tiên của nhiều kỹ sư nhúng là: có nên mua một logic analyzer (máy phân tích logic) không? Câu trả lời phụ thuộc vào việc bạn cần nhìn bao nhiêu đường tín hiệu cùng lúc, tín hiệu nhanh đến đâu, và — điều hay bị bỏ qua — bạn có cần thấy điện áp analog của chính các đường đó hay không. Bài này so sánh logic analyzer rời với máy hiện sóng MSO (mixed-signal oscilloscope — máy hiện sóng tín hiệu hỗn hợp) theo từng tiêu chí mua hàng, đếm số kênh thật sự cần cho giao thức I2C, giao thức SPI và UART, rồi dùng dòng máy hiện sóng MSO PicoScope 3404D MSO và các model cùng dòng PicoScope 3000D làm ví dụ, với số liệu lấy từ bảng thông số của Pico Technology.
Trả lời nhanh
- Chỉ cần giải mã I2C, SPI, UART và xem vài đường số: một máy hiện sóng MSO với 16 kênh số là đủ, và bạn được thêm 2–4 kênh analog để soi mức điện áp, nhiễu, sườn xung của cùng các đường đó.
- Bus chỉ có 2 dây (I2C, UART hai chiều): ngay cả máy hiện sóng thường cũng giải mã được trên kênh analog — chưa cần kênh logic.
- Cần nhiều hơn 16 đường số cùng lúc, hoặc lấy mẫu đồng bộ theo xung clock của mạch: đó là lúc logic analyzer rời đáng tiền.
Logic analyzer là gì, máy hiện sóng MSO là gì
Một logic analyzer chỉ quan tâm đến hai trạng thái: cao hay thấp so với một ngưỡng. Mỗi kênh là một bit; thiết bị ghi lại chuỗi bit của nhiều kênh song song rồi phần mềm dựng lại thành gói tin, lệnh, địa chỉ. Nó rẻ trên mỗi kênh và có thể có rất nhiều kênh, nhưng nó không cho bạn biết tín hiệu thật trông ra sao: một sườn xung méo, một mức thấp bị nâng lên 0,9 V vì điện trở kéo lên quá yếu, hay một gai nhiễu nằm sát ngưỡng đều bị quy về 0 hoặc 1.
Máy hiện sóng thì ngược lại: mỗi kênh analog ghi điện áp thật theo thời gian, nhưng số kênh ít (thường 2 hoặc 4). Máy hiện sóng MSO gộp cả hai vào một hộp: các kênh analog của máy hiện sóng cộng thêm một khối kênh số làm việc như logic analyzer, dùng chung một trục thời gian và một hệ trigger. Ở PicoScope 3000D MSO, khối số là 16 kênh chia thành hai cổng 8 kênh (D0–D7 và D8–D15), cắm qua đầu nối 20 chân bước 2,54 mm.
Điểm giá trị nhất của MSO không nằm ở chỗ “có thêm kênh”, mà ở chỗ tương quan thời gian: bạn thấy gói SPI giải mã được trên kênh số và, ngay bên dưới, gợn điện áp trên đường nguồn 3,3 V đo bằng kênh analog, cùng một lần chụp. Với logic analyzer rời và một máy hiện sóng riêng, bạn phải tự nối trigger giữa hai máy và tự căn trục thời gian.

So sánh theo tiêu chí mua hàng
Bảng dưới so sánh theo loại thiết bị, không theo hãng cụ thể. Cột MSO lấy số liệu của PicoScope 3000D MSO; cột logic analyzer rời mô tả đặc điểm chung của nhóm thiết bị này — thông số cụ thể khác nhau nhiều giữa các sản phẩm, nên hãy kiểm lại trên datasheet của thiết bị bạn định mua.
| Tiêu chí | Logic analyzer rời | Máy hiện sóng MSO (PicoScope 3000D MSO) |
|---|---|---|
| Kênh số | Thường nhiều kênh; là lý do chính để mua | 16 kênh (2 cổng × 8) |
| Kênh analog | Không có (một số model có kênh analog phụ tốc độ thấp) | 2 hoặc 4 kênh, băng thông 50–200 MHz tùy model |
| Thấy được lỗi mức điện áp, sườn chậm, nhiễu | Không — chỉ thấy 0/1 | Có, trên kênh analog |
| Giải mã giao thức | Có, tùy phần mềm | Có, trên cả kênh analog lẫn kênh số, trộn nhiều giao thức cùng lúc |
| Trigger theo mẫu bit (pattern) | Có | Có: pattern, edge, kết hợp pattern + edge, độ rộng xung, dropout, khoảng thời gian, logic |
| Lấy mẫu đồng bộ theo clock của mạch (state mode) | Nhiều model có | Bảng thông số 3000D không liệt kê; kênh số lấy mẫu theo đồng hồ nội |
| Dùng làm máy hiện sóng hằng ngày | Không | Có — kèm FFT, máy phát hàm/AWG, phép toán, kiểm tra mask |
Nếu công việc hằng ngày của bạn là debug firmware giao tiếp ngoại vi, đo nguồn, soi xung PWM và thỉnh thoảng giải mã bus, một thiết bị làm cả hai việc thường hợp lý hơn hai thiết bị mỗi cái làm một nửa. Nếu bạn làm FPGA hoặc bus song song rộng và hiếm khi cần nhìn điện áp, logic analyzer rời hợp lý hơn.
Giao thức I2C, SPI, UART thật sự cần bao nhiêu kênh
Trước khi so tiền, hãy đếm dây. Phần lớn các bus nối tiếp trên board vi điều khiển cần ít kênh hơn người ta nghĩ:
| Giao thức | Đường tín hiệu | Số kênh tối thiểu để giải mã | Ghi chú khi đo |
|---|---|---|---|
| UART | TX, RX | 1 (một chiều) hoặc 2 (hai chiều) | Không có clock — phải khai báo đúng baud rate, số bit dữ liệu, parity |
| Giao thức I2C | SCL, SDA | 2 | Đường open-drain, dùng điện trở kéo lên — sườn lên chậm là lỗi hay gặp, chỉ kênh analog thấy được |
| Giao thức SPI | SCLK, MOSI, MISO, CS | 3 nếu chỉ xem một chiều, 4 để xem đủ hai chiều | Mỗi thiết bị tớ thêm một đường CS; phải khai báo đúng chế độ clock (CPOL/CPHA) |
| I2C + SPI + UART trên cùng board | 2 + 4 + 2 | 8 | Vừa đủ một cổng số 8 kênh |
Từ bảng này rút ra hai điều. Thứ nhất, với I2C hoặc UART hai chiều, một máy hiện sóng 2 kênh thường (không MSO) đã giải mã được, vì PicoScope giải mã trên mọi kênh vào, cả analog lẫn số. Thứ hai, SPI đủ bốn dây đã vượt quá một máy 2 kênh — đây là chỗ bản MSO, hoặc một máy 4 kênh analog, bắt đầu cần thiết. Còn nếu bạn cần xem một bus dữ liệu song song 16 bit cộng các đường điều khiển, 16 kênh số sẽ không đủ, và logic analyzer rời trở thành lựa chọn đúng.
Cách cấu hình từng bước để bắt lỗi I2C, SPI, UART — đặt ngưỡng, trigger vào lần lỗi, đọc bảng gói tin — đã có trong bài bắt lỗi giao tiếp số bằng PicoScope 3000D MSO. Nếu bạn muốn hiểu cơ chế giải mã và các lỗi đặc trưng của từng bus, xem thêm giải mã bus nối tiếp trên máy hiện sóng: I2C, SPI, CAN-FD và LIN. Bài này chỉ tập trung vào câu hỏi mua gì.
Kênh số của PicoScope 3000D MSO làm được gì
Đây là các thông số của khối 16 kênh số, trích từ bảng thông số PicoScope 3000D (áp dụng cho mọi model MSO trong dòng):
| Thông số kênh số (chỉ bản MSO) | Giá trị |
|---|---|
| Số kênh | 16 (2 cổng × 8 kênh) |
| Tần số vào tối đa | 100 MHz (200 Mb/s) |
| Độ rộng xung nhỏ nhất phát hiện được | 5 ns |
| Lệch thời gian giữa các kênh | 2 ns, điển hình |
| Trở kháng vào | 200 kΩ ±2% song song 8 pF ±2 pF |
| Dải ngưỡng | ±5 V; hai bộ ngưỡng độc lập cho D0–D7 và D8–D15 |
| Chọn ngưỡng | TTL, CMOS, ECL, PECL, hoặc tự đặt |
| Biên độ vào tối thiểu | 500 mV đỉnh–đỉnh |
| Dải động đầu vào / bảo vệ quá áp | ±20 V / ±50 V |
Hai bộ ngưỡng độc lập có ý nghĩa thực tế: trên board có vi điều khiển 3,3 V nói chuyện với cảm biến 1,8 V, bạn đặt cổng D0–D7 theo mức 3,3 V và cổng D8–D15 theo mức 1,8 V, không phải dùng chung một ngưỡng thỏa hiệp. Trở kháng 200 kΩ song song 8 pF cũng đủ nhẹ để cắm thẳng lên đường I2C có điện trở kéo lên vài kΩ mà không làm thay đổi đáng kể sườn tín hiệu ở tốc độ thông thường.

Ngân sách lấy mẫu: kênh số không miễn phí
Chỗ dễ hiểu sai nhất khi chọn máy hiện sóng MSO là nghĩ rằng bật thêm kênh số không ảnh hưởng gì đến kênh analog. Ở PicoScope 3000D, tốc độ lấy mẫu thời gian thực được chia theo số “đơn vị” đang bật, trong đó mỗi cổng số 8 kênh tính như một kênh analog:
| Tổ hợp đang bật | Tốc độ lấy mẫu tối đa | Khoảng cách giữa hai mẫu |
|---|---|---|
| 1 kênh analog | 1 GS/s | 1 ns |
| Tối đa 2 (kênh analog hoặc cổng số) | 500 MS/s | 2 ns |
| Tối đa 4 (kênh analog hoặc cổng số) | 250 MS/s | 4 ns |
| Các tổ hợp còn lại (ví dụ 4 analog + 2 cổng số) | 125 MS/s | 8 ns |
Áp vào ba tình huống thường gặp:
- Giao thức I2C Fast-mode 400 kHz trên cổng D0–D7, cộng 1 kênh analog soi SDA: 2 đơn vị → 500 MS/s. Một chu kỳ clock 2,5 µs được lấy 1.250 mẫu — dư thừa.
- SPI trên cổng D0–D7, I2C trên cổng D8–D15, cộng 2 kênh analog cho nguồn và SCLK: 4 đơn vị → 250 MS/s. SPI clock 20 MHz có chu kỳ 50 ns, được 12,5 mẫu mỗi chu kỳ — vẫn đủ để giải mã.
- Bật hết 4 kênh analog và 2 cổng số trên model 34xxD MSO: 6 đơn vị → 125 MS/s, tức 8 ns giữa hai mẫu. SPI 20 MHz còn 6,25 mẫu mỗi chu kỳ, và nửa chu kỳ mức cao 25 ns chỉ còn khoảng 3 mẫu — lúc này nên tắt bớt kênh không cần.
Quy tắc thực hành: chỉ bật cổng số mà bus của bạn đang dùng, và giữ số đơn vị bật ở mức 4 trở xuống khi bus nhanh. Bộ nhớ đệm của máy (64 MS đến 512 MS tùy model) dùng chung cho mọi kênh đang bật, nên tắt kênh thừa còn giúp chụp được thời gian dài hơn ở cùng tốc độ lấy mẫu.

Khi nào vẫn nên mua logic analyzer rời
Để công bằng, có những tình huống máy hiện sóng MSO không phải lựa chọn đúng:
- Cần hơn 16 đường số cùng lúc. Bus dữ liệu song song 16 bit cộng địa chỉ và đường điều khiển, giao tiếp bộ nhớ song song, hoặc nhiều bus cùng lúc trên một board FPGA.
- Cần lấy mẫu đồng bộ theo clock của chính mạch (state mode) để xem giá trị trên bus tại đúng mỗi sườn clock, thay vì lấy mẫu theo đồng hồ nội của thiết bị đo.
- Tín hiệu số vượt 100 MHz — vượt tần số vào tối đa của kênh số trên 3000D MSO.
- Bạn đã có một máy hiện sóng tốt và chỉ cần thêm kênh số cho một dự án cụ thể; khi đó bổ sung thiết bị riêng có thể hợp lý hơn thay máy.
Ngược lại, nếu bạn chưa có máy hiện sóng, hoặc máy hiện tại chỉ có 2 kênh và không giải mã được, thì mua một logic analyzer rời vẫn để lại khoảng trống: bạn vẫn cần một máy hiện sóng cho mọi phép đo analog. Đó là lý do tiêu đề bài này nói “không cần mua thêm máy” — cho đại đa số công việc nhúng, một máy hiện sóng MSO thay được cả hai.
Chọn model PicoScope 3000D: bản thường hay bản MSO
Dòng PicoScope 3000D có 8 cấu hình analog, mỗi cấu hình có bản thường và bản MSO. Phần analog của hai bản giống nhau; khác biệt nằm ở bảng dưới:
| Điểm khác | Bản thường (ví dụ 3404D) | Bản MSO (ví dụ 3404D MSO) |
|---|---|---|
| Kênh số | Không | 16 kênh |
| Ngõ vào trigger ngoài EXT (BNC) | Có, mặt trước | Không |
| Ngõ ra máy phát hàm/AWG | BNC mặt trước | BNC mặt sau |
| Nguồn trigger | Kênh analog, EXT | Kênh analog, D0–D15 |
| Phụ kiện kèm máy (theo trang hãng) | Que đo 10:1/1:1, cáp USB 3.0 | Như bản thường, thêm cáp số TA136 và kẹp logic TA139 |
Và các cấu hình analog:
| Kênh analog | Băng thông | Thời gian lên | Bộ nhớ | Model thường / MSO |
|---|---|---|---|---|
| 2 | 50 MHz | 7,0 ns | 64 MS | 3203D / 3203D MSO |
| 2 | 70 MHz | 5,0 ns | 128 MS | 3204D / 3204D MSO |
| 2 | 100 MHz | 3,5 ns | 256 MS | 3205D / 3205D MSO |
| 2 | 200 MHz | 1,75 ns | 512 MS | 3206D / 3206D MSO |
| 4 | 50 MHz | 7,0 ns | 64 MS | 3403D / 3403D MSO |
| 4 | 70 MHz | 5,0 ns | 128 MS | 3404D / 3404D MSO |
| 4 | 100 MHz | 3,5 ns | 256 MS | 3405D / 3405D MSO |
| 4 | 200 MHz | 1,75 ns | 512 MS | 3406D / 3406D MSO |
Cách chọn nhanh:
- Chủ yếu I2C, UART, board vi điều khiển tốc độ vừa: bản 2 kênh MSO như PicoScope 3204D MSO — 2 kênh analog cho nguồn và một đường tín hiệu, 16 kênh số cho bus.
- Cần đo nguồn nhiều rail hoặc động cơ, cùng lúc giải mã bus: bản 4 kênh MSO như 3404D MSO hoặc 3405D MSO.
- SPI tốc độ cao, sườn xung nhanh, cần soi chất lượng tín hiệu số trên kênh analog: bản 200 MHz như PicoScope 3406D MSO, thời gian lên 1,75 ns.
- Chỉ giải mã bus 2 dây và cần ngõ vào trigger ngoài: bản thường là đủ, vì giải mã chạy được trên kênh analog.
Các model trong dòng PicoScope 3000D
Danh sách đủ 16 model của dòng và nhóm phụ kiện kênh số, để bạn so thông số và yêu cầu báo giá theo đúng mã:
| Cấu hình | Bản thường | Bản MSO (16 kênh số) |
|---|---|---|
| 2 kênh, 50 MHz | PicoScope 3203D | PicoScope 3203D MSO |
| 2 kênh, 70 MHz | PicoScope 3204D | PicoScope 3204D MSO |
| 2 kênh, 100 MHz | PicoScope 3205D | PicoScope 3205D MSO |
| 2 kênh, 200 MHz | PicoScope 3206D | PicoScope 3206D MSO |
| 4 kênh, 50 MHz | PicoScope 3403D | PicoScope 3403D MSO |
| 4 kênh, 70 MHz | PicoScope 3404D | PicoScope 3404D MSO |
| 4 kênh, 100 MHz | PicoScope 3405D | PicoScope 3405D MSO |
| 4 kênh, 200 MHz | PicoScope 3406D | PicoScope 3406D MSO |
Cáp số 20 chân, kẹp logic và kẹp SMD siêu nhỏ để thay thế hoặc bổ sung nằm trong nhóm que đo logic và pod MSO PicoScope. Toàn bộ thiết bị Pico do Techmaster phân phối có tại trang Pico Technology.
Giải mã được những giao thức nào
Theo bảng thông số PicoScope 3000D, phần mềm PicoScope 7 giải mã hơn 30 giao thức, trong đó có I²C, I³C BASIC, SPI (SDIO và MISO/MOSI), UART/RS-232, 1-Wire, CAN, CAN FD, CAN XL, LIN, FlexRay, SENT, PSI5, I²S, SMBus, PMBus, Modbus (ASCII và RTU), DMX512, DALI, USB 1.0/1.1, Ethernet 10Base-T và 100Base-TX, cùng bus song song (Parallel bus) — chức năng mà người ta thường mua logic analyzer để có. Nguồn giải mã có thể là bất kỳ kênh nào, analog hoặc số, trộn nhiều giao thức trong một lần chụp; hãng lưu ý khả năng thực tế phụ thuộc số kênh và băng thông của máy.
Một lưu ý về độ tin cậy của phép đo: khi kết quả giải mã và đo thời gian đi vào báo cáo kiểm tra sản phẩm hay hồ sơ chất lượng, máy hiện sóng cần được hiệu chuẩn định kỳ. Techmaster cung cấp dịch vụ hiệu chuẩn thiết bị đo theo ISO/IEC 17025. Nếu bạn đang cân nhắc một máy hiện sóng MSO để bàn thay vì dạng USB, tham khảo bài so sánh máy hiện sóng Keysight MSOX2014A để thấy các tiêu chí tương tự áp vào dòng máy để bàn.
Câu hỏi thường gặp
Máy hiện sóng MSO có thay được logic analyzer không?
Với phần lớn công việc nhúng — giải mã I2C, SPI, UART, CAN, xem vài đường điều khiển — có. PicoScope 3000D MSO có 16 kênh số, tần số vào tối đa 100 MHz và trigger theo mẫu bit. Logic analyzer rời vẫn đáng mua khi cần hơn 16 đường số cùng lúc hoặc cần lấy mẫu đồng bộ theo clock của mạch.
Giải mã giao thức I2C có cần bản MSO không?
Không bắt buộc. I2C chỉ có hai dây SCL và SDA, và PicoScope giải mã được trên kênh analog, nên bản thường 2 kênh đã giải mã được. Bản MSO có lợi khi bạn muốn giữ kênh analog để soi nguồn hoặc sườn tín hiệu trong lúc giải mã bus.
Giao thức SPI cần bao nhiêu kênh?
Bốn kênh để xem đủ hai chiều: SCLK, MOSI, MISO và CS; ba kênh nếu chỉ xem một chiều. Mỗi thiết bị tớ thêm một đường CS. Vì vậy SPI đủ bốn dây vượt quá máy 2 kênh analog, và phù hợp với bản MSO hoặc máy 4 kênh.
Bật kênh số có làm giảm tốc độ lấy mẫu không?
Có. Ở PicoScope 3000D, mỗi cổng số 8 kênh tính như một kênh analog trong ngân sách lấy mẫu: tối đa 2 đơn vị được 500 MS/s, tối đa 4 đơn vị được 250 MS/s, các tổ hợp lớn hơn còn 125 MS/s. Chỉ riêng một kênh analog mới đạt 1 GS/s.
Kênh số của PicoScope 3000D MSO đo được mức logic 1,8 V không?
Được. Dải ngưỡng là ±5 V, có thể chọn TTL, CMOS, ECL, PECL hoặc tự đặt, với hai bộ ngưỡng độc lập cho D0–D7 và D8–D15. Biên độ vào tối thiểu là 500 mV đỉnh–đỉnh, nên mức 1,8 V nằm trong khả năng đo.






