Przeczytaj
Sprawdź się
Prezentacja multimedialna
Ważne!
Biblioteki do pobrania znajdziesz poniżej. Pamiętaj, żeby sprawdzić, czy są to najaktualniejsze ich wersje.
Z pomocą Arduino Uno oraz serwomechanizmu zbudujemy nasz pierwszy zamek na hasło.
Zostanie również przedstawiona wersja do zlutowania. W wersji tej skorzystamy z Arduino Nano (z racji tego, że ma mniejsze wymiary i łatwo można go zamontować w gnieździe).
Polecenie 1
Dodaj wyświetlacz LCD do naszego zamka. Z racji tego, że nie mamy dostępnych wolnych pinów, skorzystaj z konwertera I2C.
Linia 1. kratka include otwórz nawias ostrokątny OneWire kropka h zamknij nawias ostrokątny.
Linia 2. kratka include otwórz nawias ostrokątny LiquidCrystal podkreślnik I2C kropka h zamknij nawias ostrokątny.
Linia 3. kratka include otwórz nawias ostrokątny Servo kropka h zamknij nawias ostrokątny.
Linia 4. kratka include otwórz nawias ostrokątny Keypad kropka h zamknij nawias ostrokątny.
Linia 5. kratka include otwórz nawias ostrokątny Password kropka h zamknij nawias ostrokątny.
Linia 7. kratka define LEDRed 13.
Linia 8. kratka define LEDGreen 12.
Linia 9. kratka define LEDBlue 11.
Linia 10. kratka define ServoPin 10.
Linia 12. Servo myservo średnik.
Linia 14. LiquidCrystal podkreślnik I2C lcd otwórz nawias okrągły 0x27 przecinek 16 przecinek 2 zamknij nawias okrągły średnik.
Linia 16. Password password znak równości Password otwórz nawias okrągły cudzysłów 1234 cudzysłów zamknij nawias okrągły średnik.
Linia 18. const byte ROWS znak równości 4 średnik.
Linia 19. const byte COLS znak równości 4 średnik.
Linia 21. char keys otwórz nawias kwadratowy ROWS zamknij nawias kwadratowy otwórz nawias kwadratowy COLS zamknij nawias kwadratowy znak równości otwórz nawias klamrowy.
Linia 22. otwórz nawias klamrowy apostrof 1 apostrof przecinek apostrof 2 apostrof przecinek apostrof 3 apostrof przecinek apostrof A apostrof zamknij nawias klamrowy przecinek.
Linia 23. otwórz nawias klamrowy apostrof 4 apostrof przecinek apostrof 5 apostrof przecinek apostrof 6 apostrof przecinek apostrof B apostrof zamknij nawias klamrowy przecinek.
Linia 24. otwórz nawias klamrowy apostrof 7 apostrof przecinek apostrof 8 apostrof przecinek apostrof 9 apostrof przecinek apostrof C apostrof zamknij nawias klamrowy przecinek.
Linia 25. otwórz nawias klamrowy apostrof asterysk apostrof przecinek apostrof 0 apostrof przecinek apostrof kratka apostrof przecinek apostrof D apostrof zamknij nawias klamrowy.
Linia 26. zamknij nawias klamrowy średnik.
Linia 28. byte rowPins otwórz nawias kwadratowy ROWS zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 5 przecinek 4 przecinek 3 przecinek 2 zamknij nawias klamrowy średnik.
Linia 29. byte colPins otwórz nawias kwadratowy COLS zamknij nawias kwadratowy znak równości otwórz nawias klamrowy 6 przecinek 7 przecinek 8 przecinek 9 zamknij nawias klamrowy średnik.
Linia 31. Keypad keypad znak równości Keypad otwórz nawias okrągły makeKeymap otwórz nawias okrągły keys zamknij nawias okrągły przecinek rowPins przecinek colPins przecinek ROWS przecinek COLS zamknij nawias okrągły średnik.
Linia 33. void setup otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 35. lcd kropka init otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 36. lcd kropka backlight otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 38. Serial kropka begin otwórz nawias okrągły 9600 zamknij nawias okrągły średnik.
Linia 40. myservo kropka attach otwórz nawias okrągły ServoPin zamknij nawias okrągły średnik.
Linia 41. myservo kropka write otwórz nawias okrągły 0 zamknij nawias okrągły średnik.
Linia 43. pinMode otwórz nawias okrągły LEDRed przecinek OUTPUT zamknij nawias okrągły średnik.
Linia 44. pinMode otwórz nawias okrągły LEDGreen przecinek OUTPUT zamknij nawias okrągły średnik.
Linia 45. pinMode otwórz nawias okrągły LEDBlue przecinek OUTPUT zamknij nawias okrągły średnik.
Linia 46. digitalWrite otwórz nawias okrągły LEDRed przecinek HIGH zamknij nawias okrągły średnik.
Linia 47. digitalWrite otwórz nawias okrągły LEDGreen przecinek LOW zamknij nawias okrągły średnik.
Linia 48. digitalWrite otwórz nawias okrągły LEDBlue przecinek LOW zamknij nawias okrągły średnik.
Linia 50. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 0 zamknij nawias okrągły średnik.
Linia 51. lcd kropka print otwórz nawias okrągły cudzysłów Podaj haslo dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 52. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 1 zamknij nawias okrągły średnik.
Linia 53. lcd kropka print otwórz nawias okrągły cudzysłów Zamkniete wykrzyknik cudzysłów zamknij nawias okrągły średnik.
Linia 55. keypad kropka addEventListener otwórz nawias okrągły OdczytKlawiatury zamknij nawias okrągły średnik.
Linia 56. zamknij nawias klamrowy.
Linia 58. void loop otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 59. keypad kropka getKey otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 60. zamknij nawias klamrowy.
Linia 62. void SprawdzamyHaslo otwórz nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 63. if otwórz nawias okrągły password kropka evaluate otwórz nawias okrągły zamknij nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 64. lcd kropka clear otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 65. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 0 zamknij nawias okrągły średnik.
Linia 66. lcd kropka print otwórz nawias okrągły cudzysłów Podaj haslo dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 67. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 1 zamknij nawias okrągły średnik.
Linia 68. lcd kropka println otwórz nawias okrągły cudzysłów Zamek otwarty wykrzyknik cudzysłów zamknij nawias okrągły średnik.
Linia 69. digitalWrite otwórz nawias okrągły LEDRed przecinek LOW zamknij nawias okrągły średnik.
Linia 70. digitalWrite otwórz nawias okrągły LEDGreen przecinek HIGH zamknij nawias okrągły średnik.
Linia 71. myservo kropka write otwórz nawias okrągły 90 zamknij nawias okrągły średnik.
Linia 72. zamknij nawias klamrowy else otwórz nawias klamrowy.
Linia 73. lcd kropka clear otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 74. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 0 zamknij nawias okrągły średnik.
Linia 75. lcd kropka print otwórz nawias okrągły cudzysłów Podaj haslo dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 76. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 1 zamknij nawias okrągły średnik.
Linia 77. lcd kropka println otwórz nawias okrągły cudzysłów Zle haslo wykrzyknik cudzysłów zamknij nawias okrągły średnik.
Linia 78. password kropka reset otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 79. zamknij nawias klamrowy.
Linia 80. zamknij nawias klamrowy.
Linia 82. void OdczytKlawiatury otwórz nawias okrągły KeypadEvent eKey zamknij nawias okrągły otwórz nawias klamrowy.
Linia 83. switch otwórz nawias okrągły keypad kropka getState otwórz nawias okrągły zamknij nawias okrągły zamknij nawias okrągły otwórz nawias klamrowy.
Linia 84. case PRESSED dwukropek.
Linia 85. lcd kropka clear otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 86. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 0 zamknij nawias okrągły średnik.
Linia 87. lcd kropka print otwórz nawias okrągły cudzysłów Podaj haslo dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 88. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 1 zamknij nawias okrągły średnik.
Linia 89. lcd kropka print otwórz nawias okrągły cudzysłów Wcisnieto dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 90. lcd kropka print otwórz nawias okrągły eKey zamknij nawias okrągły średnik.
Linia 91. switch otwórz nawias okrągły eKey zamknij nawias okrągły otwórz nawias klamrowy.
Linia 92. case apostrof asterysk apostrof dwukropek.
Linia 93. SprawdzamyHaslo otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 94. break średnik.
Linia 95. case apostrof kratka apostrof dwukropek.
Linia 96. password kropka reset otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 97. lcd kropka clear otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 98. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 0 zamknij nawias okrągły średnik.
Linia 99. lcd kropka print otwórz nawias okrągły cudzysłów Podaj haslo dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 100. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 1 zamknij nawias okrągły średnik.
Linia 101. lcd kropka println otwórz nawias okrągły cudzysłów Reset hasla wykrzyknik cudzysłów zamknij nawias okrągły średnik.
Linia 102. break średnik.
Linia 103. case apostrof D apostrof dwukropek.
Linia 104. digitalWrite otwórz nawias okrągły LEDGreen przecinek LOW zamknij nawias okrągły średnik.
Linia 105. digitalWrite otwórz nawias okrągły LEDRed przecinek LOW zamknij nawias okrągły średnik.
Linia 106. digitalWrite otwórz nawias okrągły LEDBlue przecinek HIGH zamknij nawias okrągły średnik.
Linia 107. myservo kropka write otwórz nawias okrągły 0 zamknij nawias okrągły średnik.
Linia 108. lcd kropka clear otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 109. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 0 zamknij nawias okrągły średnik.
Linia 110. lcd kropka print otwórz nawias okrągły cudzysłów Podaj haslo dwukropek cudzysłów zamknij nawias okrągły średnik.
Linia 111. lcd kropka setCursor otwórz nawias okrągły 0 przecinek 1 zamknij nawias okrągły średnik.
Linia 112. lcd kropka print otwórz nawias okrągły cudzysłów Zamkniete wykrzyknik cudzysłów zamknij nawias okrągły średnik.
Linia 113. delay otwórz nawias okrągły 500 zamknij nawias okrągły średnik.
Linia 114. password kropka reset otwórz nawias okrągły zamknij nawias okrągły średnik.
Linia 115. digitalWrite otwórz nawias okrągły LEDBlue przecinek LOW zamknij nawias okrągły średnik.
Linia 116. digitalWrite otwórz nawias okrągły LEDRed przecinek HIGH zamknij nawias okrągły średnik.
Linia 117. break średnik.
Linia 118. default dwukropek password kropka append otwórz nawias okrągły eKey zamknij nawias okrągły średnik.
Linia 119. zamknij nawias klamrowy.
Linia 120. zamknij nawias klamrowy.
Linia 121. zamknij nawias klamrowy.