ข้างบนคือข้อผิดพลาดที่โปรแกรมแจ้งมาครับ
ข้างล่างคือโค้ดที่ผมลองใช้กับบอร์ด RFID-RC522
โปรแกรมผมArduino 1.8.13
[code]Arduino: 1.8.13 (Windows 10), Board: "Arduino Uno"
Sketch uses 4268 bytes (13%) of program storage space. Maximum is 32256 bytes.
Global variables use 600 bytes (29%) of dynamic memory, leaving 1448 bytes for local variables. Maximum is 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x9c
Problem uploading to board. See
http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
[/code][code]#include "EEPROM.h"
#include "RfidDb.h"
RfidDb db = RfidDb(4, 0, 4);
uint32_t id1 = 0xFFFFFF01;
uint32_t id2 = 0xFFFFFF02;
uint32_t id3 = 0xFFFFFF03;
uint32_t id4 = 0xFFFFFF04;
uint32_t id5 = 0xFFFFFF05;
void setup() {
Serial.begin(9600);
while (!Serial) {
;
}
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
EEPROM.begin(db.dbSize());
#endif
EEPROM.put(0, 0);
db.begin();
Serial.println("Empty database");
dumpState();
Serial.print("Inserting id1 = ");
Serial.println(db.insert(id1, "AAA"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id2 = ");
Serial.println(db.insert(id2, "BBB"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id3 = ");
Serial.println(db.insert(id3, "CCC"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id4 = ");
Serial.println(db.insert(id4, "DDD"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id5 = ");
Serial.println(db.insert(id5, "EEE"));
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id5");
db.remove(id5);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id1");
db.remove(id1);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id3");
db.remove(id3);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id2");
db.remove(id2);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id4");
db.remove(id4);
dumpState();
dumpContains();
dumpContains24();
}
void loop() {
// put your main code here, to run repeatedly:
}
void dumpState() {
uint8_t count = db.count();
Serial.print("count = ");
Serial.print(count);
Serial.print(" [");
uint32_t id;
char name[db.maxNameLength()];
for (int i = 0; i < count; i++) {
if (db.getId(i, id)) {
Serial.print(id);
if (db.getName(i, name)) {
Serial.print(":");
Serial.print(name);
}
if (i < count - 1) {
Serial.print(", ");
}
}
}
Serial.println("]");
}
void dumpContains() {
Serial.print("Contains id1 = ");
Serial.println(db.contains(id1));
Serial.print("Contains id2 = ");
Serial.println(db.contains(id2));
Serial.print("Contains id3 = ");
Serial.println(db.contains(id3));
Serial.print("Contains id4 = ");
Serial.println(db.contains(id4));
Serial.print("Contains id5 = ");
Serial.println(db.contains(id5));
}
void dumpContains24() {
Serial.print("Contains (24 bit) id1 = ");
Serial.println(db.contains(id1));
Serial.print("Contains (24 bit) id2 = ");
Serial.println(db.contains(id2));
Serial.print("Contains (24 bit) id3 = ");
Serial.println(db.contains(id3));
Serial.print("Contains (24 bit) id4 = ");
Serial.println(db.contains(id4));
Serial.print("Contains (24 bit) id5 = ");
Serial.println(db.contains(id5));
}
[/code]
นำเข้าข้อมูลข้อมูลใน Arduino Uno R3 แล้วขึ้น Eror ควรทำอย่างไรครับ รบกวนช่วยๆผมหน่อยครับ ขอบคุณครับ
ข้างล่างคือโค้ดที่ผมลองใช้กับบอร์ด RFID-RC522
โปรแกรมผมArduino 1.8.13
[code]Arduino: 1.8.13 (Windows 10), Board: "Arduino Uno"
Sketch uses 4268 bytes (13%) of program storage space. Maximum is 32256 bytes.
Global variables use 600 bytes (29%) of dynamic memory, leaving 1448 bytes for local variables. Maximum is 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x9c
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x9c
Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
[/code][code]#include "EEPROM.h"
#include "RfidDb.h"
RfidDb db = RfidDb(4, 0, 4);
uint32_t id1 = 0xFFFFFF01;
uint32_t id2 = 0xFFFFFF02;
uint32_t id3 = 0xFFFFFF03;
uint32_t id4 = 0xFFFFFF04;
uint32_t id5 = 0xFFFFFF05;
void setup() {
Serial.begin(9600);
while (!Serial) {
;
}
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
EEPROM.begin(db.dbSize());
#endif
EEPROM.put(0, 0);
db.begin();
Serial.println("Empty database");
dumpState();
Serial.print("Inserting id1 = ");
Serial.println(db.insert(id1, "AAA"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id2 = ");
Serial.println(db.insert(id2, "BBB"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id3 = ");
Serial.println(db.insert(id3, "CCC"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id4 = ");
Serial.println(db.insert(id4, "DDD"));
dumpState();
dumpContains();
dumpContains24();
Serial.print("Inserting id5 = ");
Serial.println(db.insert(id5, "EEE"));
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id5");
db.remove(id5);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id1");
db.remove(id1);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id3");
db.remove(id3);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id2");
db.remove(id2);
dumpState();
dumpContains();
dumpContains24();
Serial.println("Removing id4");
db.remove(id4);
dumpState();
dumpContains();
dumpContains24();
}
void loop() {
// put your main code here, to run repeatedly:
}
void dumpState() {
uint8_t count = db.count();
Serial.print("count = ");
Serial.print(count);
Serial.print(" [");
uint32_t id;
char name[db.maxNameLength()];
for (int i = 0; i < count; i++) {
if (db.getId(i, id)) {
Serial.print(id);
if (db.getName(i, name)) {
Serial.print(":");
Serial.print(name);
}
if (i < count - 1) {
Serial.print(", ");
}
}
}
Serial.println("]");
}
void dumpContains() {
Serial.print("Contains id1 = ");
Serial.println(db.contains(id1));
Serial.print("Contains id2 = ");
Serial.println(db.contains(id2));
Serial.print("Contains id3 = ");
Serial.println(db.contains(id3));
Serial.print("Contains id4 = ");
Serial.println(db.contains(id4));
Serial.print("Contains id5 = ");
Serial.println(db.contains(id5));
}
void dumpContains24() {
Serial.print("Contains (24 bit) id1 = ");
Serial.println(db.contains(id1));
Serial.print("Contains (24 bit) id2 = ");
Serial.println(db.contains(id2));
Serial.print("Contains (24 bit) id3 = ");
Serial.println(db.contains(id3));
Serial.print("Contains (24 bit) id4 = ");
Serial.println(db.contains(id4));
Serial.print("Contains (24 bit) id5 = ");
Serial.println(db.contains(id5));
}
[/code]