ผมลองใช้โค๊ดจากเว็บนี้ครับ
https://github.com/miguelbalboa/rfid/tree/master/examples/DumpInfo
คือจุดประสงค์หลักของผมคืออยากทำให้แตะบัตรแล้วอาดูโน่ทำงานเป็นคีย์บอร์ด เพื่อกดรหัสใส่โปรแกรมในคอมน่ะครับ
ผมไม่มีความรู้ทางอิเล็กทรอนิกมากนัก ผมเรียนมาทางเขียนโปรแกรมน่ะครับ
ผมลองต่อกับ Arduino UNO R3 โดยต่อวงจรตามที่เขาระบุมาดังนี้ครับ
RST/Reset RST ช่องเลข 9
SPI SS SDA(SS) ช่องเลข 10
SPI MOSI MOSI ช่องเลข 11
SPI MISO MISO ช่องเลข 12
SPI SCK SCK ช่องเลข 13
ก็ทำงานได้ปกติ อ่านบัตรได้
ผมก็เลยลองต่อกับ Arduino LEONARDO เขาก็ระบุวงจรมาดังนี้
RST/Reset RST ช่อง RESET/ICSP-5
SPI SS SDA(SS) ช่องเลข 10
SPI MOSI MOSI ช่อง ICSP-4
SPI MISO MISO ช่อง ICSP-1
SPI SCK SCK ช่อง ICSP-3
แล้วแก้โค๊ด #define RST_PIN9 ไปเป็น 5
โปรแกรมก็ยังไม่สามารถอ่านบัตรได้
ผมสงสัยว่าช่อง ICSP 1 ถึง 6 มันมีเงื่อนไขหรือชุดคำสั่งพิเศษอะไรหรือเปล่าครับ ผมลองหาข้อมูลก็ยังไม่พบคำตอบ
ทบทวนวงจรหลายรอบ หลายวันก็ยังไม่สำเร็จ
ถ้าเป็นไปได้ช่วยแนะนำผมหน่อยครับ เรื่องเขียนโปรแกรมผมถนัดนะ แต่เรื่องวงจรและช่อง ICSP นี่ล่ะที่ผมไม่เข้าใจ
ขอบคุณครับ
ผมดูใน youtube เขาก็ไม่ได้ทำอะไรมาก แต่ผมทำไม่ผ่านจริง ๆ ช่วยผมด้วยนะครับ
https://www.youtube.com/watch?v=qlXvt6APvvA
ตัวอย่างเป็นโคดของ Arduino Uno ครับ ขาจะแตกต่างกับ Arduino Leonardo อยู่นิดหน่อย
ช่อง ISP ไม่มีอะไรครับเป็นแค่ขาต่อออกมา ช่องนี้เอาไว้สำหรับโปรแกรมผ่านเครื่องโปรแกรมครับ
โคดของ Arduino Uno อาจจะแตกต่างกับ Arduino Leonardo ด้วย ลองดูตัวอย่างสำหรับ Arduino Leonardo ที่นี่ครับ http://maker.swjtu.edu.cn/node/50