Guest User

Untitled

a guest
Oct 29th, 2019
179
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <SPI.h>
  2. #include <RFID.h>
  3. /* Vengono definiti PIN del RFID reader*/
  4. #define SDA_DIO 10 // 53 per Mega
  5. #define RESET_DIO 9
  6. #define delayRead 1000 // Time of delay
  7. #define delayLed 2000
  8. #define ledVerde 3
  9. #define ledRosso 4
  10. /* Viene creata una istanza della RFID libreria */
  11. RFID RC522(SDA_DIO, RESET_DIO);
  12.  
  13. String codiceAutorizzato = "975A18D36";
  14. String codiceS****** = "975A18D36";
  15. String codiceG****** = "E38AB873A2";
  16. String codiceA****** = "B9FDA8638F";
  17. String codiceP****** = "34F05C831B";
  18. String codiceCarta = "938D641A60";
  19.  
  20. void setup()
  21. {
  22. Serial.begin(9600);
  23. /* Abilita SPI*/
  24. SPI.begin();
  25. /* Viene inizilizzato RFID reader */
  26. RC522.init();
  27. /*Serial.println("Setup");*/
  28. pinMode(ledVerde,OUTPUT);
  29. pinMode(ledRosso,OUTPUT);
  30. }
  31.  
  32. void loop()
  33. {
  34. /* Temporary loop counter */
  35. byte i;
  36. // Se viene letta una tessera
  37. if (RC522.isCard())
  38. {
  39.  
  40. RC522.readCardSerial();
  41. String codiceLetto ="";
  42. //Serial.println("Codice delle tessera letto:");
  43.  
  44. for(i = 0; i <= 4; i++)
  45. {
  46. codiceLetto+= String (RC522.serNum[i],HEX);
  47. codiceLetto.toUpperCase();
  48. }
  49. //Serial.println(codiceLetto);
  50. if (codiceLetto.equals(codiceS******)){
  51. Serial.println("S");
  52. accendiLed(ledVerde);
  53. }
  54. if (codiceLetto.equals(codiceG******)){
  55. Serial.println("G");
  56. accendiLed(ledVerde);
  57. }
  58. if (codiceLetto.equals(codiceA******)){
  59. Serial.println("A");
  60. accendiLed(ledVerde);
  61. }
  62. if (codiceLetto.equals(codiceP******)){
  63. Serial.println("P");
  64. accendiLed(ledVerde);
  65. }
  66. if (codiceLetto.equals(codiceCarta)){
  67. Serial.println("C");
  68. accendiLed(ledVerde);
  69. }
  70.  
  71.  
  72.  
  73. delay(delayRead);
  74. }
  75.  
  76.  
  77.  
  78.  
  79. }
  80. // Questa funzione verifica se il codice Letto è autorizzato
  81. boolean verificaCodice(String codiceLetto){
  82. if(codiceLetto.equals(codiceAutorizzato)){
  83. return true;
  84. }else{
  85. return false;
  86. }
  87. }
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95. /*
  96. String codiceAutorizzato = "975A18D36";
  97. String codiceS****** = "975A18D36";
  98. String codiceG****** = "3200D36";
  99. String codiceA****** = "B9FDA8638F";
  100. String codiceP****** = "4200638F";
  101.  
  102. String codiceCarta = "938D641A60";
  103.  
  104. if(codiceLetto.equals(codiceS******)){
  105. Serial.println("S******");
  106.  
  107. */
  108.  
  109.  
  110. // Questa funzione permette di accendere un LED per un determinato periodo
  111. void accendiLed(int ledPin){
  112. digitalWrite(ledPin,HIGH);
  113. delay(delayLed);
  114. digitalWrite(ledPin,LOW);
  115. }
RAW Paste Data