การวิเคราะห์สัญญาณลอจิกด้วย logic analyzer

Wuttikorn Ponwitayarat
Chiang Mai Maker Club
2 min readApr 23, 2020

ในบทความนี้จะมาพูดถึงการวิเคราะห์สัญญาณลอจิกด้วย logic analyzer
ก่อนอื่นเราไปทำความรู้จักกับ logic analyzer กันก่อนดีกว่า.

logic analyzer คือเครื่องมือที่ใช้วัดสัญญาณดิจิตอลที่เกิดขึ้นในระบบ microprocessor เช่นเดียวกับ oscilloscope แตกต่างกันตรงที่ oscilloscope สามารถวัดสัญญาณที่เป็น analog ได้ด้วย แต่ความสามารถของ logic analyzer ทำอะไรได้มากกว่ากว่าที่คิดเพราะสามารถเห็นข้อมูลที่ส่งไปมาได้ดังภาพข้างบนเป็นการสื่อสารข้อมูลของ rs232 จะเห็นได้ว่ามีการส่งข้อมูลแบบเลขฐานสิบหกซึ่งตรงนี้ก็ขึ้นกับ Device ของเราด้วยแต่ส่วนมากจะเป็นเลขฐานสิบหก

โม้มาเยอะละลงมือการทำเลยดีกว่า…….
โดย logic analyzer ที่ใช้ในบทความนี้คือ Kingst Logic Analyzer LA1010

logic analyzer ตัวนี้สามารถวัดสัญญาณได้ 16 ช่อง ส่วนโปรแกรมที่ใช้วิเคราะห์มีชื่อว่า KingstVIS Virtual Instruments Studio โปรแกรมนี้รองรับทั้ง 3 OS เลยสามารถดาวน์โหลดได้ที่ http://www.qdkingst.com/en

การติดตั้งโปรแกรมก็ Next อย่างเดียวเลย

ในตัวอย่างนี้ผมจะวัดสัญญาณข้อมูลที่ส่งระหว่าง esp32 กับ sensor ที่สื่อสารโดยใช้ protocol rs232 ก่อนอื่นก็เอา CH1 ต่อกับ rx และ CH2 ต่อ tx (ต่อ rx, tx ตรงขาของ sensor ไม่ใช่ต่อตรงขาของ esp32) จากนั้นให้เปิดโปรแกรมที่ติดตั้งเมื่อกี๊แล้วกดปุ่มที่เหมือนปุ่ม play แล้วดูสัญญาณที่ส่งไปมาระหว่าง esp32 กับ sensor

จากรูปจะเห็นว่ามีข้อมูลที่ esp32 ส่งไปหา sensor ใน Channel 1 และข้อมูลที่ sensor ส่งกลับมาให้ esp32 ใน Channel 2 เมื่อขยายรูปสัญญาณจะเห็นว่ามีการส่งข้อมูลที่เป็นเลขฐานสิบหกหากัน ในส่วนนี้การแปลงเลขฐานสิบหกออกมาเป็นข้อมูลก็ขึ้นอยู่กับ datasheet ของ sensor อีกทีถ้า sensor ไม่มี datasheet ก็ต้องทำ reverse engineer ต่อไป.

สุดท้ายหวังว่าบทความนี้จะทำให้รู้จักเครื่องมือที่ใช้วิเคราะห์สัญญาณลอจิกไม่มากก็น้อยครับ.

logic analyzer มันมีอะไรมากกว่าที่คิดเพราะผมเคยทำ reverse engineer ด้วยเครื่องมือนี้มาแล้ว.

--

--