พฤษภาคม 22, 2026

การเขียนโปรแกรมเพื่อตั้งค่าฟิลเตอร์ของอุปกรณ์เชื่อมต่อเครือข่าย CAN จาก Ixxat

การเขียนโปรแกรมเพื่อตั้งค่าฟิลเตอร์ของอุปกรณ์เชื่อมต่อจากเครือข่าย CAN นั้นค่อนข้างซับซ้อน ทาง TechSquare จึงได้ทำการค้นคว้าและสรุปข้อควรระวังต่าง ๆ ไว้ดังนี้

1. หากเราตั้งค่าฟิลเตอร์ของคอนโทรลเลอร์แล้ว การตั้งค่าของช่องสัญญาณจะไม่มีผล

2. ฟิลเตอร์ที่ถูกตั้งค่าระหว่าง initialize จะถูกแทนที่ด้วยการตั้งค่าใน set filter mode, set acceptance filter, add filter IDs และ remove filter IDs

3. ฟิลเตอร์มีทั้งหมด 4 แบบ

– lock: ไม่รับข้อความใดเลย

– pass: รับทุกข้อความบนเครือข่าย

– inclusive: ก่อนอื่นเราต้องทำความเข้าใจการตั้งค่า acceptance code และ acceptance mask เสียก่อน เพื่อให้ง่ายในการทำความเข้าใจ เราจะใช้ standard ID (11 bit) โดย mask และ code นั้นจะมีความยาว 12 bit เนื่องจาก bit แรก (LSB) จะเป็นบิตสำหรับรีโมทเฟรม (RTR) เพราะฉะนั้น mask = b000000000000 จะรับทุกข้อความทั้งข้อความปกติและ remote frame แต่หาก mask = b00000000001 และ code = b00000000001 จะรับเฉพาะ remote frame เช่นเดียวกันหาก mask = b00000000001 และ code = b00000000000 จะรับเฉพาะ data frame อีก 11 บิตหน้าจะเป็นบิตสำหรับค่า ID จริง ๆ เช่น หากเราต้องการรับเฉพาะ data frame ที่มี ID เป็นเลขคี่เราต้องตั้ง mask = b00000000011 และ code = b00000000010 เป็นต้น หลังจากนั้นเราสามารถใช้ฟังก์ชั่น Add IDs หรือ Remove IDs เพื่อเพิ่ม IDs เพิ่มเติมเข้าไปยังฟิลเตอร์ ยกตัวอย่างเช่น หากเราตั้ง mask = b111111111111 และ code = b000000000000 แล้ว add frame 2 และ 5 ฟิลเตอร์จะรับเฉพาะ data frame ID 0, 2 และ 5 เท่านั้น

– exclusive: ก่อนอื่นเราต้องทำความเข้าใจการตั้งค่า acceptance code และ acceptance mask เสียก่อน เพื่อให้ง่ายในการทำความเข้าใจ เราจะใช้ standard ID (11 bit) โดย mask และ code นั้นจะมีความยาว 12 bit เนื่องจาก bit แรก (LSB) จะเป็นบิตสำหรับรีโมทเฟรม (RTR) เพราะฉะนั้น mask = b00000000001 และ code = b00000000001 จะคัดทิ้ง remote frame ทั้งหมด หลังจากนั้นเราสามารถเพิ่ม IDs ที่ต้องการคัดทิ้งด้วยฟังก์ชั่น Add IDs หรือ Remove IDs ยกตัวอย่างเช่น หากเราตั้ง mask = b00000000001 และ code = b00000000001 แล้ว add frame 2 และ 5 ฟิลเตอร์จะคัดทิ้งทุก remote frame และ data frame ID 2 และ 5

หวังว่าบทความข้างต้นจะช่วยให้ท่านสามารถตั้งค่าฟิลเตอร์ของอุปกรณ์เชื่อมต่อเครือข่าย CAN จาก Ixxat ได้ตรงตามความต้องการ ท่านสามารถติดต่อทีมงาน เทคสแควร์ เพื่อติดต่อสอบถามข้อมูลเพิ่มเติมเกี่ยวกับการใช้งานผลิตภัณฑ์จากเชื่อมต่อเครือข่าย CAN และ LIN จาก Ixxat และ PEAK

error: Content is protected...