ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠ°ΡΠΎΠ² Π½Π° Π°ΡΠ΄ΡΠΈΠ½ΠΎ
Π£ΡΠΎΠΊ 18. ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ RTC ΡΠ°ΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ
Π ΡΡΠΎΠΌ ΡΡΠΎΠΊΠ΅ ΠΌΡ Π½Π°ΡΡΠΈΠΌΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ, Π½ΠΎ ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ RTC ΠΌΠΎΠ΄ΡΠ»Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ.
ΠΠ°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ:
ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
ΠΠΈΠ΄Π΅ΠΎ
Π‘Ρ Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ:
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ RTC ΠΈ LCD, Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠΊΠ°, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ Π²ΡΠ²ΠΎΠ΄Π°ΠΌ SDA, ΠΈ SCL.
RTC ΠΌΠΎΠ΄ΡΠ»Ρ Trema Π½Π° Π±Π°Π·Π΅ ΡΠΈΠΏΠ° DS1307 / LCD Π΄ΠΈΡΠΏΠ»Π΅ΠΉ Π½Π° Π±Π°Π·Π΅ ΡΠΈΠΏΠ° LCD1602 | Arduino Uno |
---|---|
GND | GND |
Vcc | +5V |
SDA (Serial DAta) | A4 |
SCL (Serial CLock) | A5 |
ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ: ΠΊΠ½ΠΎΠΏΠΊΠ° Β«SETΒ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 2, ΠΊΠ½ΠΎΠΏΠΊΠ° Β«UPΒ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 3 ΠΈ ΠΊΠΎΠΏΠΊΠ° Β«DOWNΒ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 4.
ΠΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΠΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Β«iarduino_RTCΒ» Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ, Ρ ΠΊΠ°ΠΊΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ Π΅ΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Trema Π½Π° Π±Π°Π·Π΅ ΡΠΈΠΏΠ° DS1307:
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Β«LiquidCrystal_I2CΒ» Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ LCD Π΄ΠΈΡΠΏΠ»Π΅Π΅ΠΌ LCD1602 IIC/I2C(ΡΠΈΠ½ΠΈΠΉ) ΠΈΠ»ΠΈ LCD1602 IIC/I2C(Π·Π΅Π»ΡΠ½ΡΠΉ) :
Π Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Β«iarduino_RTCΒ» Π΄ΠΎΡΡΡΠΏΠ½Ρ 9 ΡΠΈΡΠ»ΠΎΠ²ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ : seconds, minutes, hours, Hours, midday, day, weekday, month ΠΈ year, Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ gettime(). ΠΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΡ Π±ΡΠ΄ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠ°Π±ΠΎΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
Π‘Π°ΠΌΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΡΡ Π½Π° ΠΡΠ΄ΡΠΈΠ½ΠΎ Π£Π½ΠΎ
Π‘Π°ΠΌΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΡΠ°ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Arduino ΠΈ LCD (ΠΠ Π΄ΠΈΡΠΏΠ»Π΅ΠΉ) ΠΈΠ· ΡΠ΅Ρ ΡΡΠΎ ΠΌΡ ΠΊΠΎΠ³Π΄Π°-ΡΠΎ Π΄Π΅Π»Π°Π»ΠΈ. ΠΠ°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Arduino UNO, 16×2 ΠΠ-Π΄ΠΈΡΠΏΠ»Π΅ΠΉ ΠΈ Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠΠΈΠΊΠ°ΠΊΠΈΡ ΡΠ΅Π·ΠΈΡΡΠΎΡΠΎΠ², Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡΠΎΠ².
ΠΠΎΠΌΠΏΠ»Π΅ΠΊΡΡΡΡΠΈΠ΅
ΠΠ°ΡΠΈΠ½Π°Π΅ΠΌ Ρ Π΄Π΅ΡΠ°Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΈΡΡΠΎΠ²ΡΡ ΡΠ°ΡΠΎΠ² Π½Π° ΠΡΠ΄ΡΠΈΠ½ΠΎ Π£Π½ΠΎ:
Π§ΡΠΎ Π·Π° ΠΈΠ΄Π΅Ρ
Π Π°Π½Π΅Π΅ ΠΌΡ Π΄Π΅Π»Π°Π»ΠΈ ΠΎΠ΄ΠΈΠ½ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΡΠΈΡΡΠΎΠ²ΡΠΌΠΈ ΡΠ°ΡΠ°ΠΌΠΈ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠΎΠΊΠ°Ρ , ΠΈ Π½Π°ΡΠ»ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΡΠ΅ΡΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ. ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ ΠΊΠ°ΠΊ ΠΎΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄Ρ.
ΠΠ° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π²ΡΡΠ΅ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ ΠΊΠΎΠ΄ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½Ρ s Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ 1 ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΈ Π½Π΅ Π±ΠΎΠ»ΡΡΠ΅, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΠ»Π° loop<>.
Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ ΡΠ΅Π·ΠΈΡΡΠΎΡΡ ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡΡ ΠΌΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ.
ΠΠ½ΠΎΠΏΠΊΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π² ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ ATmega328P.
pinMode(hs, INPUT_PULLUP) ΠΈΠ·Π±Π΅Π³Π°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Pullup. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ INPUT_PULLUP ΡΠΈΡΠ°ΠΉΡΠ΅ Π² Π½Π°ΡΠ΅ΠΌ Π‘ΠΏΡΠ°Π²ΠΎΡΠ½ΠΈΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° ΠΡΠ΄ΡΠΈΠ½ΠΎ.
ΠΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΠΏΠΎΡΠ΅Π½ΡΠΈΠΎΠΌΠ΅ΡΡΠ° ΠΠ-Π΄ΠΈΡΠΏΠ»Π΅Ρ.
ΠΠΎΠ½ΡΡΠ°ΡΡΠ½ΠΎΡΡΡ ΠΠ-Π΄ΠΈΡΠΏΠ»Π΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠ³Π½Π°Π»Π° PWM (Π¨ΠΈΡΠΎΡΠ½ΠΎ-ΠΈΠΌΠΏΡΠ»ΡΡΠ½Π°Ρ ΠΌΠΎΠ΄ΡΠ»ΡΡΠΈΡ (Π¨ΠΠ, Π°Π½Π³Π». pulse-width modulation (PWM))) Arduino.
Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΈΡΠ°Π΅ΡΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠΌ Π¨ΠΠ (PWM) Arduino, ΠΏΠΎΡΡΠΎΠΌΡ Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΊΠ°ΠΊ Π²ΠΊΠ»/Π²ΡΠΊΠ» Ρ ΠΏΠΎΠΌΠΎΡΡΡ Arduino.
Π‘Ρ Π΅ΠΌΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΡΠΈΠ½ΡΠΈΠΏΠΈΠ°Π»ΡΠ½Π°Ρ ΡΡ Π΅ΠΌΠ° Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π‘Ρ Π΅ΠΌΠ° ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΡΡΡΠΈΡ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΡΠΈΡΡΠΎΠ²ΡΡ ΡΠ°ΡΠΎΠ² ΠΡΠ΄ΡΠΈΠ½ΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
ΠΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈΠ»ΠΈ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π½ΠΈΠΆΠ΅. ΠΠΎΠ΄ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠ±ΡΡΠ½ΠΎ ΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ ΠΈΠ· ΡΠΊΠ°ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, Ρ.ΠΊ. ΠΏΡΠΈ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π²ΡΡΠ²Π»ΡΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ.
Π’Π°ΠΊΠΆΠ΅ Π½Π΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ, ΡΡΠΎ ΠΌΡ Π² ΡΠ°ΠΌΠΎΠΌ Π½Π°ΡΠ°Π»Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ LiquidCrystal, ΠΊΠΎΡΠΎΡΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π½Π° Π½Π°ΡΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ
ΠΠ° ΡΡΠΎΠΌ ΠΏΠΎΠΊΠ° Π²ΡΡ, Π½Π°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠΎ Π²Π°ΡΠΈ ΡΠΈΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΡΡ ΠΡΠ΄ΡΠΈΠ½ΠΎ ΠΈΠ΄ΡΡ ΡΠΎΡΠ½ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ.
Π£ΡΠΎΠΊ 19. RTC ΡΠ°ΡΡ Ρ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠΎΠΌ
Π ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΡΠΎΠΊΠ΅ 18, ΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ»ΠΈ Trema RTC ΡΠ°ΡΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Ρ Trema ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ ΠΈ LCD I2C Π΄ΠΈΡΠΏΠ»Π΅Π΅ΠΌ ΠΊ arduino Uno, Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΡΠΊΠ΅ΡΡ, Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°ΡΡΠΈΡΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» ΠΏΠΎΠ»ΡΡΠΈΠ²ΡΠΈΡ ΡΡ ΡΠ°ΡΠΎΠ², Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΊ Π½ΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΡ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ°. Π ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΡΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΈ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ° Π²ΡΠ²Π΅Π΄Π΅ΠΌ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ «Func_alarm_action()», ΡΡΠΎΠ± ΠΡ ΡΠΌΠΎΠ³Π»ΠΈ Π»Π΅Π³ΠΊΠΎ Π΅Π³ΠΎ Π½Π°ΠΉΡΠΈ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΠΈ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ°, ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΠΆΠ°Π»ΡΠ·ΠΈ, Π²ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ ΠΌΡΠ·ΡΠΊΡ, Π²ΠΊΠ»ΡΡΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ΅Π»Π΅ ΡΠΎΡΡΠ΅Ρ ΠΈΠ»ΠΈ ΠΊΠΎΡΠ΅-ΠΌΠ°ΡΠΈΠ½Ρ ΠΈ Ρ.Π΄.
ΠΠ°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ:
ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
ΠΠΈΠ΄Π΅ΠΎ:
Π‘Ρ Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ:
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ RTC ΠΈ LCD, Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΡΠΎΠΊΠ°, ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ Π²ΡΠ²ΠΎΠ΄Π°ΠΌ SDA, ΠΈ SCL.
RTC ΠΌΠΎΠ΄ΡΠ»Ρ Trema Π½Π° Π±Π°Π·Π΅ ΡΠΈΠΏΠ° DS1307 / LCD Π΄ΠΈΡΠΏΠ»Π΅ΠΉ Π½Π° Π±Π°Π·Π΅ ΡΠΈΠΏΠ° LCD1602 | Arduino Uno |
---|---|
GND | GND |
Vcc | +5V |
SDA (Serial DAta) | A4 |
SCL (Serial CLock) | A5 |
ΠΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΎΠΊ: ΠΊΠ½ΠΎΠΏΠΊΠ° Β«SETΒ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 2, ΠΊΠ½ΠΎΠΏΠΊΠ° Β«UPΒ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 3 ΠΈ ΠΊΠΎΠΏΠΊΠ° Β«DOWNΒ» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 4.
ΠΡΠΌΠΌΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 5, Π° ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄ ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ 13 (Π΄ΡΠ±Π»ΠΈΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ Π² arduino).
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠ°Π±ΠΎΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ:
ΠΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
Π Π°Π±ΠΎΡΠ° ΠΊΠ½ΠΎΠΏΠΎΠΊ, Π²ΡΠ²ΠΎΠ΄ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΎΠΏΠΈΡΡΠ²Π°Π»ΠΈΡΡ Π² ΡΡΠΎΠΊΠ΅ 18, Π² ΡΡΠΎΠΌ ΡΡΠΎΠΊΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°Π±ΠΎΡΡ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ°:
Π ΡΡΠ½ΠΊΡΠΈΠΈ loop, ΠΏΠΎΡΠ»Π΅ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅ΠΉ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ: Π½Π΅ ΠΏΠΎΡΠ° Π»ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊ?
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΡ Π³ΠΎΡΠΎΠ²ΠΎ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:
Π Π°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Π² ΠΊΠΎΠ΄Π΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ°:
ΠΠ΅ΠΉΡΡΠ²ΠΈΡ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ° ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΡΡΠ½ΠΊΡΠΈΠΈ Func_alarm_action().
Π ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΌΡ Π²ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄, Π΄Π°Π»Π΅Π΅ ΠΏΠΎΠ΄Π°ΡΠΌ ΡΡΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΡ Π·Π²ΡΠΊΠΎΠ²ΡΡ ΡΠΈΠ³Π½Π°Π»Π° (Ρ ΡΠ°ΡΡΠΎΡΠΎΠΉ 2000ΠΡ, Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΈ ΠΏΠ°ΡΠ·ΠΎΠΉ 100ΠΌΡ), ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π²ΡΠΊΠ»ΡΡΠ°Π΅ΠΌ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄.
ΠΡΠ»ΠΈ ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π±ΡΠ΄ΠΈΠ»ΡΠ½ΠΈΠΊΠ° ΠΎΠ΄Π½ΠΎΠΊΡΠ°ΡΠ½ΠΎ, Π° Π½Π΅ ΠΊΠ°ΠΆΠ΄ΡΡ ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ, ΡΠΎ Π½Π°ΡΠ½ΠΈΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΡΠΎ ΡΠ±ΡΠΎΡΠ° ΡΠ»Π°Π³Π° VAR_alarm_FLAG2, ΠΏΡΠΈΡΠ²ΠΎΠΈΠ² Π΅ΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ false.
Π€ΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
ΠΡΠΊΡΠ΄Π° Π±Π΅ΡΡΡΡΡ Π²ΡΠ΅ΠΌΡ?
ΠΠ°ΡΠ½ΡΠΌ Ρ ΡΠΎΠ³ΠΎ, ΠΎΡΠΊΡΠ΄Π° Π²ΠΎΠΎΠ±ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π·Π½Π°Π΅Ρ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠ΅Π΄Ρ Ρ Π½Π΅Π³ΠΎ Π½Π΅Ρ ΡΠ°ΡΠΎΠ²! ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ΅Π½ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΠ°ΠΊΡΠΎΠ²ΡΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ, ΠΈΠ»ΠΈ ΠΊΠ²Π°ΡΡΠ΅Π²ΡΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ, ΠΈΠ»ΠΈ ΠΎΠ½ ΠΆΠ΅ ΠΊΠ²Π°ΡΡ. ΠΠ½ ΠΆΠ΅ oscillator, ΠΎΠ½ ΠΆΠ΅ clock. Clock ΠΏΠΎ-Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΈ ΡΡΠΎ ΡΠ°ΡΡ. ΠΠ°, Π½ΠΎ Π½Π΅ Π²ΡΡ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ =) ΠΠ²Π°ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ ΡΡΠ΄ΠΎΠΌ Ρ ΠΠ Π½Π° ΠΏΠ»Π°ΡΠ΅ (ΡΠ°ΠΊΠΆΠ΅ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΠ Π΅ΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΡΠ°ΠΊΡΠΎΠ²ΡΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ), Π½Π° ΠΡΠ΄ΡΠΈΠ½Π°Ρ ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎΠΈΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ Π½Π° 16 ΠΠΡ, ΡΠ°ΠΊΠΆΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° 8 ΠΠΡ. Π’Π°ΠΊΡΠΎΠ²ΡΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΡΡ Π²Π΅ΡΡ: ΠΎΠ½ βΠΏΠΈΠ½Π°Π΅Ρβ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠΎ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°ΠΊΡΠΎΠ²ΠΎΠΉ ΡΠ°ΡΡΠΎΡΠΎΠΉ, ΡΠΎ Π΅ΡΡΡ 16 ΠΠΡ ΠΊΠ²Π°ΡΡ ΠΏΠΈΠ½Π°Π΅Ρ ΠΠ 16 ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. ΠΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π·Π½Π°Ρ ΡΠ°ΡΡΠΎΡΡ ΠΊΠ²Π°ΡΡΠ°, ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΊΠΈΠ½ΡΡΡ Π²ΡΠ΅ΠΌΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΈΠ½ΠΊΠ°ΠΌΠΈ (16 ΠΠΡ = 0.0625 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Ρ), ΠΈ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. ΠΠΎ Π½Π° Π΄Π΅Π»Π΅ Π½Π΅ Π²ΡΡ ΡΠ°ΠΊ ΠΏΡΠΎΡΡΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΏΠΈΠ½ΠΊΠΈ ΡΠ°ΠΉΠΌΠ΅ΡΠ° ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠ΅ ΡΠ°ΠΉΠΌΠ΅ΡΡ-ΡΡΡΡΡΠΈΠΊΠΈ (Timer-counter). ΠΡΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π²Π½ΡΡΡΠΈ ΠΠ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΏΠΎΠ΄ΡΡΡΡΠΎΠΌ ΠΏΠΈΠ½ΠΊΠΎΠ² ΡΠ°ΠΊΡΠΎΠ²ΠΎΠ³ΠΎ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°. Π Π²ΠΎΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΡΡΡΡΠΈΠΊΡ ΠΈ ΡΠΏΡΠΎΡΠΈΡΡ, Π° ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΌ Π½Π°ΡΠΈΠΊΠ°Π»ΠΎ? Π ΡΡΡΡΡΠΈΠΊ Π΅ΠΌΡ ΡΠΊΠ°ΠΆΠ΅Ρ. Π Π²ΠΎΡ ΡΡΠΈΠΌ ΠΌΡ ΡΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Ρ ΠΡΠ΄ΡΠΈΠ½ΠΎ Π΅ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ. Π Arduino Π½Π° Π±Π°Π·Π΅ ATmega328 ΠΈΠΌΠ΅ΡΡΡΡ ΡΡΠΈ ΡΡΡΡΡΠΈΠΊΠ°, ΠΈ ΠΏΠΎΠ΄ΡΡΡΡΠΎΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΠ°ΠΉΠΌΠ΅Ρ ΠΏΠΎΠ΄ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ 0. ΠΡΠΈΠΌ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ Π»ΡΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΡΡΡΠΈΠΊ, Π½ΠΎ ΡΠ°Π±ΠΎΡΠ°Ρ Π² Arduino IDE Π²Ρ ΡΡΠ°Π·Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΠ°ΠΊΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ, Ρ.ΠΊ. ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΡΠΊΠ΅ΡΡ Π² Arduino IDE Π²Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ Arduino.h, Π³Π΄Π΅ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π²ΡΠ΅ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΠ°Π΄Π΅ΡΠΆΠΊΠΈ
ΠΡΠΎΡΡΠ΅ΠΉΡΠ΅ΠΉ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠ°, ΠΈΡ Ρ Π½Π°Ρ Π΄Π²Π΅:
ΠΠ°Π΄Π΅ΡΠΆΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ:
Π Π²ΠΎΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π΅Π»Π°ΡΡ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π΄Π²Π° ΡΠ°Π·Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ. delayMicroseconds() ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ, Π½ΡΠΆΠ½ΠΎ ΡΡΠ°ΡΠ°ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ ( const ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠΈΡΠ»ΠΎ). ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Π½ΡΡ Π·Π°Π΄Π΅ΡΠΆΠ΅ΠΊ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠΌ ΠΈ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π² ΡΠΈΠΊΠ»Π°Ρ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ:
Π€ΡΠ½ΠΊΡΠΈΡ yield()
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Arduino ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΠ»ΠΈΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΡΠ½ΠΊΡΠΈΡ delay() Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π»Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, Π½ΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ»Π° Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΠΎΠΉ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ. ΠΠ°Π½Π½ΡΠΉ βΠΊΠΎΡΡΡΠ»Ρβ ΠΏΠΎΠ»ΡΡΠΈΠ» Π½Π°Π·Π²Π°Π½ΠΈΠ΅ yield() ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ: Π΅ΡΠ»ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΡ
ΡΠΎ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π²Π½ΡΡΡΠΈ Π½Π΅Ρ ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Π»ΡΠ±ΠΎΠΉ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ delay() Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅! ΠΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ ΠΎΡΡ ΠΈ ΠΊΠ°ΠΆΠ΅ΡΡΡ Π½Π΅Π»Π΅ΠΏΡΠΌ, Π½ΠΎ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±ΡΡΡΡΠΎ ΠΈ Π±Π΅Π· ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π»ΠΈΡΠ½ΠΈΡ ΠΊΠΎΡΡΡΠ»Π΅ΠΉ ΠΈ ΡΠ°ΠΉΠΌΠ΅ΡΠΎΠ² ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΡ ΡΡ Π·Π°Π΄Π°Ρ. Π§ΡΠΎ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΡΠ΄ΡΠΈΠ½ΠΎ β ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ°Ρ ΠΈ Π±ΡΡΡΡΠ°Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΏΡΠΎΡΠΎΡΠΈΠΏΠ°. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ: ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΌΠΈΠ³Π°ΡΡΠΈΠΉ ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄, Π½ΠΎ Ρ ΠΎΠΏΡΠΎΡΠΎΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ yield() ΠΈ ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Π΅Ρ ΠΎΡΠ½ΠΎΠ²Π΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΡΠΎΠΊΠΎΠ² ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠΊΠ΅ΡΡ.
Π€ΡΠ½ΠΊΡΠΈΠΈ ΡΡΡΡΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
ΠΠ°Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ, ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π΅ Ρ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π·Π°ΠΏΡΡΠΊΠ° ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°, ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Π°ΠΏΡΠ°ΠΉΠΌ (Π°Π½Π³Π». uptime). Π’Π°ΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Ρ Π½Π°Ρ Π΄Π²Π΅:
70 ΠΌΠΈΠ½ΡΡ), ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² 4 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄Ρ, ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ Π² 0. Π Π°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ ΡΠ°ΠΉΠΌΠ΅ΡΠ΅ Timer 0
Π’Π°ΠΉΠΌΠ΅Ρ Π½Π° millis()
ΠΡ ΡΠΏΡΠΎΡΠΈΡΠ΅, Π° ΠΊΠ°ΠΊ Π²ΡΠ΅ΠΌΡ ΡΠΎ ΡΡΠ°ΡΡΠ° ΠΠ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΌ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ? ΠΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ, ΡΡ Π΅ΠΌΠ° Π²ΠΎΡ ΡΠ°ΠΊΠ°Ρ:
Π’ΠΈΠΏ 1
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ βΡΠ°ΠΉΠΌΠ΅ΡΠ° Π½Π° millis()β Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π²ΠΎΡ ΡΠ°ΠΊ:
Π’ΠΈΠΏ 2
ΠΡΠΎΡΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΡΠ±ΡΠΎΡΠ° ΡΠ°ΠΉΠΌΠ΅ΡΠ° Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΠΈΡΠ°Π½ Π²ΠΎΡ ΡΠ°ΠΊ:
ΠΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΆΡΡΡΠΊΠΎ ΠΎΡΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄, ΡΠΎ Π΅ΡΡΡ Π½Π΅ βΡΡ ΠΎΠ΄ΠΈΡβ ΡΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ, Π΅ΡΠ»ΠΈ Π² ΠΊΠΎΠ΄Π΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΌΠ°Π»Π°Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΡΠ°Π±Π°ΡΡΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Π³Π΄Π° ΠΊΡΠ°ΡΠ½ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Ρ. ΠΠΈΠ½ΡΡΠΎΠΌ Π·Π΄Π΅ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΡΠ°ΠΉΠΌΠ΅Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΡ ΠΏΠ΅ΡΠΈΠΎΠ΄ β ΠΎΠ½ βΡΡΠ°Π±ΠΎΡΠ°Π΅Ρβ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· ΠΏΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅! ΠΠΎ ΠΈΠ· ΡΡΠΎΠΉ Π½Π΅ΠΏΡΠΈΡΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π΅ΡΡΡ Π²ΡΡ ΠΎΠ΄.
Π’ΠΈΠΏ 3
ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ, Π½Π° ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠ² Π½ΡΠΆΠ½ΠΎ βΠΎΠ±Π½ΠΎΠ²ΠΈΡΡβ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ°ΠΉΠΌΠ΅ΡΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΊ:
ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅
ΠΠΎΡΠ΅ΠΌΡ ΡΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈ Π½Π΅ Π»ΠΎΠΌΠ°Π΅ΡΡΡ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΡΡΠΈΡΠ°ΡΡ Ρ Π½ΡΠ»Ρ. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΈΡΠ°ΠΉΡΠ΅ Π² ΡΡΠΎΠΊΠ΅ ΠΏΡΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΊΠΎΠ³Π΄Π° ΠΌΠΈΠ»Π»ΠΈΡ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ ΠΈ ΡΠ°ΡΡΡΡ, Π° ΠΌΡ Π²ΡΡΠΈΡΠ°Π΅ΠΌ ΠΈΠ· Π½Π΅Π³ΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ β ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π½Π΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅, Π° Π²ΠΏΠΎΠ»Π½Π΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΡΠ±ΡΠΎΡΠ° ΡΠ°ΠΉΠΌΠ΅ΡΠ°. ΠΠΎΡΡΠΎΠΌΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ Π½Π΅ ΡΠΎ ΡΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠ΅ΡΠ΅Π·
50 ΡΡΡΠΎΠΊ, Π½ΠΎ ΠΈ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΌΠΎΠΌΠ΅Π½Ρ βΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡβ Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄Π°!
Π Π²ΠΎΡ ΡΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 10 ΡΠ°Π· Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΎΠΏΡΠΎΡΠΈΡΡ Π΄Π°ΡΡΠΈΠΊ, ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΈ Π΄Π²Π° ΡΠ°Π·Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈΡ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅ΠΉ. Π ΡΡΠΈ ΡΠ°Π·Π° Π² ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΌΠΈΠ³Π°ΡΡ Π»Π°ΠΌΠΏΠΎΡΠΊΠΎΠΉ. ΠΠΎΡΠ΅ΠΌΡ Π½Π΅Ρ? Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ².
ΠΠ°ΡΠΈΠ°Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ millis()
Π ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ ΡΠ°ΠΉΠΌΠ΅ΡΠ° Π½Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ 32-Ρ Π±ΠΈΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠΌΠ΅Ρ. ΠΠ΅ΡΡΠΌΠ° ΡΠ°ΡΡΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ! ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π½Π° Π±Π°Π·Π΅ ΡΡΡΡΡΠΈΠΊΠ° Π°ΠΏΡΠ°ΠΉΠΌΠ° millis() :
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΠΎΡΠ΅Π½Ρ ΠΊΡΡΡΠΎΠΉ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌβ¦ Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π½Π΅Π»ΡΠ·Ρ ΠΏΠΎ ΡΠ΅Π»ΠΎΠΌΡ ΡΡΠ΄Ρ ΠΏΡΠΈΡΠΈΠ½:
ΠΡΠ²ΠΎΠ΄: Π½ΠΈ Π² ΠΊΠΎΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΄Π°Π½Π½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ.
ΠΠΈΠ±ΠΎ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΎΠ½ Π½Π΅ ΡΡ ΠΎΠ΄ΠΈΡ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ (ΡΠ°Π·Π±ΠΈΡΠ°Π»ΠΈ ΡΠ°Π·Π½ΠΈΡΡ Π² Π³Π»Π°Π²Π΅ βΠ’Π°ΠΉΠΌΠ΅Ρ Π½Π° millis()β). Π Π°Π·Π½ΠΈΡΠ° Π½Π°ΠΏΠΎΠΌΠ½Ρ Π² ΡΠΏΠΎΡΠΎΠ±Π΅ ΡΠ±ΡΠΎΡΠ° ΡΠ°ΠΉΠΌΠ΅ΡΠ°.
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ: Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΌΠ°ΠΊΡΠΎΡ Π² ΡΠ°ΠΌΠΎΠ΅ Π½Π°ΡΠ°Π»ΠΎ ΠΊΠΎΠ΄Π° ΠΈ Π²ΡΠ·ΡΠ²Π°ΠΉΡΠ΅ Π΅Π³ΠΎ ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΡ
ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅: Π½Π΅Π»ΡΠ·Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΌΠ°ΠΊΡΠΎΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°Π·Π° Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈ ΡΠΎΠΌ ΠΆΠ΅ Π±Π»ΠΎΠΊΠ΅ ΠΊΠΎΠ΄Π°, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ΅ =) Π’ΠΎ Π΅ΡΡΡ Π²ΠΎΡ ΡΠ°ΠΊ Π½Π΅Π»ΡΠ·Ρ:
ΠΡΠ»ΠΈ ΠΎΡΠ΅Π½Ρ Π½ΡΠΆΠ½Π° ΡΠ°ΠΊΠ°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ β ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π²ΡΠ·ΠΎΠ² Π² ΡΠ²ΠΎΠΉ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°:
ΠΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π° ΠΏΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡΠΌ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ βΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°Π΅Ρβ ΠΌΠ°ΠΊΡΠΎΡ:
OLED ΡΠ°ΡΡ Π½Π° arduino
ΠΠ° Π΄Π½ΡΡ Ρ ΡΠ΅ΡΠΈΠ» ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΡΡ Π½Π° arduino Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π΄Π°ΡΡ, Π΄Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ ΠΈ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ Π²ΠΎΠ·Π΄ΡΡ Π° Π½Π° OLED Π΄ΠΈΡΠΏΠ»Π΅Π΅. Π§ΡΠΎ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ ΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ.
Π‘ΠΏΠΈΡΠΎΠΊ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²:
ΠΈ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΎΠ±Π½ΡΠΉ ΡΠΊΠ΅ΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΏΠ»Π΅Ρ ΠΈ ΡΠ°ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ
ΠΏΠΎΡΠ»Π΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠΊΠ΅ΡΡΠ° Ρ Π½Π°Ρ Π½Π° Π΄ΠΈΡΠΏΠ»Π΅Π΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΡΡΡΡ ΡΠ°ΡΡ ΠΊΠ°ΠΊ Π½Π° ΡΠΎΡΠΎ
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΠΌ Π²ΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ, Π½ΠΎ ΡΡΠΎ Π±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡΡΠΊΠΈΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΡ Π΄Π½Π΅ΠΉ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΡΠΊΠΈΠ΅ ΡΡΠΈΡΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΡΡΠΎΠΊΡ Π² ΡΠΊΠ΅ΡΡ
ΠΈ Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΡΠΎΠΊΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π½Π°ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΊΠΎΠ²ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π΄Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π΄Π½Ρ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅.
ΠΈ Π΅ΡΠ΅ Π·Π°ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΠΌ ΡΡΡΠΎΠΊΠΈ
ΡΡΠΎ Π±Ρ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΠΊΠ΅ΡΡΠ° Π½Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π·Π°Π½ΠΎΠ²ΠΎ Π²ΡΠ΅ΠΌΡ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π΄Π΅Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ Π½Π° Π½Π°ΡΠ΅ΠΌ Π΄ΠΈΡΠΏΠ»Π΅Π΅ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅.
ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠ΅ΡΡΡΠ°, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π² ΡΠΊΠ΅ΡΡ ΡΡΡΠΎΠΊΠΈ
ΠΠΎΡΠ΅ΠΌΡ Π½Π°Π΄ΠΏΠΈΡΠΈ Π² ΡΠΊΠ΅ΡΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π΅ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠΈΡΠ°ΠΉΡΠ΅ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π ΡΡΡΠΊΠΈΠ΅ ΠΈ ΡΠΊΡΠ°ΠΈΠ½ΡΠΊΠΈΠ΅ ΡΡΠΈΡΡΡ Π΄Π»Ρ OLED I2C Π΄ΠΈΡΠΏΠ»Π΅Ρ
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠΈ ΡΠ°ΡΠΈΠΊΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ Π½Π° ΡΠΎΡΠΎ.
ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠΌΡ Π±ΡΠ»ΠΎ Π»Π΅Π½Ρ ΠΏΡΠ°Π²ΠΈΡΡ ΡΠΊΠ΅ΡΡ, Π½ΠΈΠΆΠ΅ Π΅ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠΊΠ΅ΡΡ.
ΠΡ Π° ΡΠ΅ΠΏΠ΅ΡΡ, Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΡΠ΅ΠΌ Π½Π°ΡΠΈ OLED ΡΠ°ΡΡ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊ Π½ΠΈΠΌ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΡΠΈΡΡΠ²Π°ΡΡ Ρ Π΄Π°ΡΡΠΈΠΊΠ° ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ DS18B20.
ΠΠ»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ½ΠΊΠ° Ρ Π³ΡΠ°Π΄ΡΡΠ½ΠΈΠΊΠΎΠΌ Π½Π° OLED Π΄ΠΈΡΠΏΠ»Π΅Π΅ ΠΈ Π·Π½Π°ΡΠΊΠ° Π³ΡΠ°Π΄ΡΡΠ° Π²ΡΠ±Π΅ΡΠ΅ΠΌ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ Ρ ΡΠΈΡΡΠ½ΠΊΠΎΠΌ Π³ΡΠ°Π΄ΡΡΠ½ΠΈΠΊΠ° ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° ΡΠΎΡ ΡΠ°Π½ΠΈΠΌ Π΅Π΅ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ GIF Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ term.gif, ΠΈ ΡΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΠ΄Π΅Π»Π°Π΅ΠΌ Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΎΠΉ Ρ Π·Π½Π°ΡΠΊΠΎΠΌ Π³ΡΠ°Π΄ΡΡΠ° β ΡΠΎΡ ΡΠ°Π½ΠΈΠΌ Π΅Π΅ ΠΊΠ°ΠΊ grad.gif.
ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ Π΄Π²ΡΡ ΡΠ²Π΅ΡΠ½ΡΠΌΠΈ (Π±Π΅Π»ΡΠΉ ΠΈ ΡΠ΅ΡΠ½ΡΠΉ), Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ png, jpg, gif
Π£ ΠΌΠ΅Π½Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° term.bmp ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΡ 19Γ40 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ, Π° ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° grad.bmp 13Γ12 ΠΏΠΈΠΊΡΠ΅Π»Π΅ΠΉ. ΠΠΎΡΠΎΠΌ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΊΠΎΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π²Π΅ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΠ΅ΡΠ²ΠΈΡΠ° www.rinkydinkelectronics.com
Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π½Π°Ρ ΡΠ°ΠΉΠ» ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΆΠΌΠ΅ΠΌ Make File
ΠΠΌΠ΅ΠΌ Π½Π° Click here to download your file ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ ΡΠ°ΠΉΠ» grad.c Π² ΠΏΠ°ΠΏΠΊΡ Ρ Π½Π°ΡΠΈΠΌ ΡΠΊΠ΅ΡΡΠ΅ΠΌ, ΡΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΏΡΠΎΠ΄Π΅Π»ΡΠ²Π°Π΅ΠΌ Ρ Π΄ΡΡΠ³ΠΈΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π‘ΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ ΠΈ Π·Π°ΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠΊΠ΅ΡΡ. ΠΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ ΠΎΡΠΊΡΡΡΠΈΠΈ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ Π΅ΡΠ΅ Π΄Π²Π΅ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΠΊΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡ Π½Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
Π° ΠΏΠΎΡΠΎΠΌ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΠΌ Π½Π°ΡΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½Π΅ OLED Π΄ΠΈΡΠΏΠ»Π΅Ρ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΡΡΠΎΠΊΠΈ
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² Π½Π°Ρ ΡΠΊΠ΅ΡΡ Π½Π° Π΄Π²Π° ΡΠΈΠΊΠ»Π°. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠΈΠΊΠ»Π΅ Ρ Π½Π°Ρ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π²ΡΠ΅ΠΌΡ β Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π³ΠΎ void watch(); ΠΡΠΎΡΠΎΠΉ ΡΠΈΠΊΠ» Π±ΡΠ΄Π΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ void temp();
Π Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠΈΠΊΠ»Π΅ void loop(); ΠΏΡΠΎΠΏΠΈΡΠ΅ΠΌ Π΄Π»Ρ ΡΠΎΡΠ°ΡΠΈΠΈ ΡΠΈΠΊΠ»ΠΎΠ² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΡΠ΅ΠΊ ΠΊΠΎΠ΄Π°
Π ΡΠΈΠΊΠ»Π΅ void temp(); ΠΏΡΠΎΠΏΠΈΡΠ΅ΠΌ ΠΊΡΡΠΎΡΠ΅ΠΊ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΡΠΈΡΡΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ
Π ΡΠΈΠΊΠ»Π΅ void watch(); ΠΏΡΠΎΠΏΠΈΡΠ΅ΠΌ Π½Π°Ρ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
ΠΠΎΡΠ»Π΅ Π·Π°Π»ΠΈΠ²ΠΊΠΈ ΡΠΊΠ΅ΡΡΠ°, Π½Π°ΡΠΈ OLED ΡΠ°ΡΡ ΡΠ½Π°ΡΠ°Π»Π° Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π²ΡΠ΅ΠΌΡ, Π° ΠΏΠΎΡΠΎΠΌ ΡΠ΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΡ ΠΊΠ°ΠΊ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ Π² Π½Π°ΡΠ°Π»Π΅ ΡΡΠ°ΡΡΠΈ.