Stap 5: Parallax Lamp
1. draad zonde in digitale pin 3.
2. draad Zuid tot digitale pin 2.
3. download de NewSoftSerial bibliotheek http://arduiniana.org/libraries/newsoftserial/
4. upload de code aan de Arduino. Deze code zal het lezen van de RFID-kaarten:
#include < NewSoftSerial.h > char tags_buffer [12]; NewSoftSerial RFID = NewSoftSerial(rxPin,txPin); VOID Setup {} Serial.begin(9600); void loop {} ongeldig sendRead() {} ongeldig readTag() {} if(bytesread == 12) {} for (int i = 0; ik < 3; i ++) {} if(msg==tags_buffer) {} Case 1: Case 2:
#define rxPin 2
#define txPin 3
byte r = 0, g = 0, b = 0;
prog_char rode [PROGMEM] = "2F00E69DFF";
prog_char groen [PROGMEM] = "2F00E68BC6";
prog_char blue [PROGMEM] = "2F00E6C2D0";
PROGMEM const char * [colorTags_table] = {}
rood, groen, blauw};
RFID.begin(9600); / / RFID lezer Zuid pin aangesloten op seriële RX pin 9600 bps
}
sendRead();
readTag();
}
RFID.flush();
RFID.print("!RW");
RFID.print (0x0F, BYTE);
}
byte-code [12];
int bytesread = 0;
Koord msg;
while(bytesread<12) {/ / lees 10 cijferige code
Dit blokkeert en moet idealiter een timeout
Als (RFID.available()) {}
code [bytesread] = RFID.read();
bytesread ++;
}
Als (code[0]==0x0A) {}
Serial.Print ("TAG code is:");
for (int i = 1; ik < 11; i ++) {}
msg = msg + code [i];
}
strcpy_P (tags_buffer, (char *) pgm_read_word (&(colorTags_table[i])));
switch(i) {}
Case 0:
Serial.println("Red");
r = 255;
breken;
g = 255;
Serial.println("Green");
breken;
b = 255;
Serial.println("Blue");
breken;
}
}
}
}
}
}
}