ΠΠΎΠ³Π΄Π° ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ D2 Π²ΡΠ·ΠΎΠ²Π΅Ρ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠ΅, ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°-ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ (setFlag) ΠΏΡΠΎΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΡΠ»Π°Π³, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ loop. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅, ΡΡΠΎ Π² ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΠΉ Π½Π΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ delay ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π΅ΠΉ. ΠΠΎΡΡΠΎΠΌΡ ΡΡΠ½ΠΊΡΠΈΡ loop Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ»Π°Π³ ΠΈ, Π΅ΡΠ»ΠΈ ΠΎΠ½ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½, Π²ΡΠ·Π²Π°ΡΡ ΡΡ ΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΡ doSomething, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»Π°ΡΡ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ Narcoleptic. ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ»Π°Π³ ΡΠ±ΡΠ°ΡΡΠ²Π°Π΅ΡΡΡ, ΠΈ Arduino Π²Π½ΠΎΠ²Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ½Π΅ΡΠ³ΠΎΡΠ±Π΅ΡΠ΅Π³Π°ΡΡΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ.
ΠΠΎ Π²Π΅Π»ΠΈΡΠΈΠ½Π΅ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠΎΠΊΠ° ΡΡΠΎΡ ΡΠΊΠ΅ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Narcoleptic, Ρ ΡΠΎΠΉ Π»ΠΈΡΡ ΡΠ°Π·Π½ΠΈΡΠ΅ΠΉ, ΡΡΠΎ Π²ΠΎ Π²ΡΠ΅ΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΡΠ²Π΅ΡΠΎΠ΄ΠΈΠΎΠ΄ ΠΌΠΈΠ³Π°Π΅Ρ, ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΡΡΠ΅Π±Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠΎΠΊΠ° Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠ±ΡΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ delay.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ²ΡΡ Π²ΡΡ ΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ
Π₯ΠΎΡΡ Π² ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ, Π·Π΄Π΅ΡΡ Π½Π΅Π»ΠΈΡΠ½Π΅ Π±ΡΠ΄Π΅Ρ Π΄Π°ΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΡΠΎΠ²Π΅Ρ ΠΏΠΎ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ.
ΠΠ° ΡΠΈΡ. 5.4 ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½Π° ΡΡ Π΅ΠΌΠ° Π΄Π°ΡΡΠΈΠΊΠ° ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΡΠΎΡΠ΅Π·ΠΈΡΡΠΎΡΠ° (ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ) ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΊ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌΡ Π²Ρ ΠΎΠ΄Ρ Arduino, ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅ΡΡΠ΅ΡΡΡ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π΄Π°Π½Π½ΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΡΠΎΡΠ΅Π·ΠΈΡΡΠΎΡ ΡΠ΅ΡΠ΅Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ ΡΠΎΠΊ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ 5 Π. ΠΡΠ»ΠΈ ΠΏΡΠΈ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ ΠΎΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ 500 ΠΠΌ, ΡΠΎ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π·Π°ΠΊΠΎΠ½Ρ
Π ΠΈΡ. 5.4. ΠΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡΠΎΡΠ΅Π·ΠΈΡΡΠΎΡΠ°
ΠΠΌΠ° ΠΏΡΠΎΡΠ΅ΠΊΠ°ΡΡΠΈΠΉ ΡΠΎΠΊ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ I = V/R = 5 Π/(1000 ΠΠΌ + + 500 ΠΠΌ) = 3,3 ΠΌΠ.
ΠΠΌΠ΅ΡΡΠΎ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ 5 Π Π½Π° ΠΏΠ»Π°ΡΠ΅ Arduino ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ Π²ΡΡ ΠΎΠ΄ (ΡΠΈΡ. 5.5) ΠΈ ΠΏΠΎΠ΄Π°Π²Π°ΡΡ Π½Π° Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π΅Π½Ρ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ HIGH ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ ΠΎΠ΄Π°, Π° Π·Π°ΡΠ΅ΠΌ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ Π½Π° Π½Π΅ΠΌ ΡΡΠΎΠ²Π΅Π½Ρ LOW. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΎΠΊ 3,3 ΠΌΠ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΠ΅ΠΊΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΡΠ΅Π½Ρ ΠΊΠΎΡΠΎΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΊΠ° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΡΠ΅Π½ΠΈΠ΅, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ½ΠΈΠ·ΠΈΡΡ ΠΎΠ±ΡΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ.
ΠΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΊΠ΅ΡΡ:
// sketch_05_07_light_sensing
const int inputPin = A0;
const int powerPin = 12;
void setup()
Π ΠΈΡ. 5.5. ΠΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ½Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ
{
Β Β pinMode(powerPin, OUTPUT);
Β Β Serial.begin(9600);
}
void loop()
{
Β Β Serial.println(takeReading());
Β Β delay(500);
}
int takeReading()
{
Β Β digitalWrite(powerPin, HIGH);
Β Β delay(10); // ΡΠΎΡΠΎΡΠ΅Π·ΠΈΡΡΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ
Β Β int reading = analogRead(inputPin);
Β Β digitalWrite(powerPin, LOW);
Β Β return reading;
}
ΠΡΠΎΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΎΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ. ΠΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΡΡΠΎΠ²ΠΎΠ³ΠΎ Π²ΡΡ ΠΎΠ΄Π° ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΏΠΎΠ»Π΅Π²ΡΠΌ ΡΡΠ°Π½Π·ΠΈΡΡΠΎΡΠΎΠΌ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌ ΠΈ Π²ΡΠΊΠ»ΡΡΠ°ΡΡΠΈΠΌ ΠΌΠΎΡΠ½ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ ΡΠ»Π΅ΠΊΡΡΠΎΡΠ½Π΅ΡΠ³ΠΈΠΈ Π² Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
Π Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΡΡΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΊΡΡΠΎΡΠ½Π΅ΡΠ³ΠΈΠΈ:
β’ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π² ΡΠ΅ΠΆΠΈΠΌ ΡΠ½Π΅ΡΠ³ΠΎΡΠ±Π΅ΡΠ΅ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ;
β’ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΠΈΡΠ°Π½ΠΈΡ Arduino ΠΏΠΎΠ½ΠΈΠΆΠ΅Π½Π½ΠΎΠ΅ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅;
β’ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡ ΡΠ°ΠΊΡΠΎΠ²ΡΡ ΡΠ°ΡΡΠΎΡΡ Arduino.
6. ΠΠ°ΠΌΡΡΡ
ΠΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² ΠΈΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ°ΠΌΠΈ, Π½ΠΎ Π² Arduino Uno Π΅Π΅ Π²ΡΠ΅Π³ΠΎ 2 ΠΠ±Π°ΠΉΡ. Π’ΠΎ Π΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π² ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ ΡΠ°Π· ΠΌΠ΅Π½ΡΡΠ΅, ΡΠ΅ΠΌ Π² ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±ΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΠ°ΡΠΈΠΈ ΠΌΡΡΠ»ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ΄Π΅ΡΡ Π½Π΅Ρ ΠΌΠ΅ΡΡΠ° Π΄Π»Ρ ΡΠ°ΡΡΠΎΡΠΈΡΠ΅Π»ΡΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΌ ΡΡΡΠ°Π΄Π°Π΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ².
ΠΠΈΡΠ°ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π²Π°ΠΆΠ½ΠΎ, Π½ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π·Π° ΡΡΠ΅Ρ ΡΡΠ»ΠΎΠΆΠ½Π΅Π½ΠΈΡ ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π΅Π½ΠΈΡ. ΠΠ°ΠΆΠ΅ ΠΏΡΠΈ ΡΠ°ΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΡΠ΅ΡΡΡΡΠ°Ρ , ΠΊΠ°ΠΊ Π² Arduino, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΊΠ΅ΡΡΠ΅ΠΉ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ Π΄Π°Π»Π΅ΠΊΠΈ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΡΠ΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΠ΅Π³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° (ΠΠΠ£). ΠΠ΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ Π½Π΅Ρ Π²Π°ΡΠΊΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ, ΡΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΡΠΊΠ΅ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ ΠΌΠ°ΡΡΡ Π΄Π°Π½Π½ΡΡ .
ΠΠ°ΠΌΡΡΡ Π² Arduino
Π‘ΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ Π² Arduino ΠΈ Π² ΠΎΠ±ΡΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΡ ΠΠΠ£ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ΅Π»Π΅ΠΉ. ΠΠ° ΡΠΈΡ. 6.1 ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ Π² ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°.
ΠΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΎΠ½ ΡΠ½Π°ΡΠ°Π»Π° ΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π΅Π΅ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Ρ ΠΆΠ΅ΡΡΠΊΠΎΠ³ΠΎ Π΄ΠΈΡΠΊΠ° Π² ΠΠΠ£, Π° Π·Π°ΡΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΡΡ ΠΊΠΎΠΏΠΈΡ. ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΠΠ£. ΠΠ»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π½Π° ΡΠΈΡ. 6.2 ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ Π² Arduino, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°. Π‘Π°ΠΌΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π΅ΠΉΡΡΠ²ΡΠ΅Ρ, Π½Π°Ρ ΠΎΠ΄ΡΡΡ Π²ΠΎ ΡΠ»Π΅Ρ-ΠΏΠ°ΠΌΡΡΠΈ. ΠΠ½Π° Π½Π΅ ΠΊΠΎΠΏΠΈΡΡΠ΅ΡΡΡ Π² ΠΠΠ£.
Π ΠΈΡ. 6.1. ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ Π² ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅
Π ΠΈΡ. 6.2. ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΠΌΡΡΡ Π² Arduino
ΠΠΠ£ Π² Arduino ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΡ Π΄Π°Π½Π½ΡΡ , ΠΈΠΌΠ΅ΡΡΠΈΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠ΅ΠΉΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. ΠΠΠ£ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ½Π΅ΡΠ³ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΡΡ, ΡΠΎ Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΠ½ΠΎ ΠΎΡΠΈΡΠ°Π΅ΡΡΡ. Π§ΡΠΎΠ±Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ Π½Π°Π΄ΠΎΠ»Π³ΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΏΠΈΡΠ°ΡΡ ΠΈΡ Π² ΠΠ‘ΠΠΠΠ£. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠΊΠ΅ΡΡ ΡΠΌΠΎΠΆΠ΅Ρ ΡΡΠΈΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ°.
ΠΡΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΊ Π³ΡΠ°Π½ΠΈΡΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Arduino ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΡΠ°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΠΠ£ ΠΈ, Π² ΠΌΠ΅Π½ΡΡΠ΅ΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ, ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π²Π½ΡΡΡΠΈ ΡΠ»Π΅Ρ-ΠΏΠ°ΠΌΡΡΠΈ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² Arduino Uno ΠΈΠΌΠ΅Π΅ΡΡΡ 32 ΠΠ±Π°ΠΉΡ ΡΠ»Π΅Ρ-ΠΏΠ°ΠΌΡΡΠΈ, ΡΡΠΎΡ ΠΏΡΠ΅Π΄Π΅Π» Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ Π½Π΅ΡΠ°ΡΡΠΎ.
Π£ΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΌΠ° ΠΠΠ£
ΠΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ, ΡΡΠΎΠ±Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΌ ΠΠΠ£, ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΠΎΠ±ΡΠ΅ΠΌ ΠΏΠ°ΠΌΡΡΠΈ, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π‘Π°ΠΌΡΠΌ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ Π² Arduino C, Π±Π΅ΡΡΠΏΠΎΡΠ½ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏ int. ΠΠ°ΠΆΠ΄Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΏΠ° int Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ 2 Π±Π°ΠΉΡΠ°, Π½ΠΎ ΡΠ°ΡΡΠΎ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΈΡΠ΅Π» ΠΈΠ· Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ·ΠΊΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, ΡΠ΅ΠΌ β32 768β¦+32 767, ΠΈ Π½Π΅ΡΠ΅Π΄ΠΊΠΎ ΡΠΈΠΏΠ° byte Ρ Π΅Π³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ 0β¦255 Π΄Π»Ρ Π½ΠΈΡ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π²ΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠΈΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ ΡΠΈΠΏΠ° int, Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΡΡΠΏΠ΅Ρ ΠΎΠΌ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠ±Π°ΠΉΡΠΎΠ²ΡΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΡ.
Π’ΠΈΠΏΠΈΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΠΌΠΎΠ³ΡΡ ΡΠ»ΡΠΆΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Ρ Π½ΠΎΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΎΠ². ΠΠ½ΠΈ ΡΠ°ΡΡΠΎ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ Ρ ΡΠΈΠΏΠΎΠΌ int, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅:
// sketch_06_01_int
int ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13};
void setup()
{
Β Β for (int i = 0; i < 12; i++)
Β Β {
Β Β Β Β pinMode(ledPins[i], OUTPUT);
Β Β Β Β digitalWrite(ledPins[i], HIGH);
Β Β }
}
void loop()
{
}
ΠΠ°ΡΡΠΈΠ² ΡΠΈΠΏΠ° int Π±Π΅Π· Π²ΡΡΠΊΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π² ΠΌΠ°ΡΡΠΈΠ² Π±Π°ΠΉΡΠΎΠ². Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Ρ ΡΠΎΠΉ ΠΆΠ΅ ΡΠΊΠΎΡΠΎΡΡΡΡ, Π·Π°ΡΠΎ ΠΌΠ°ΡΡΠΈΠ² Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π² Π΄Π²Π° ΡΠ°Π·Π° ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΠΠΠ£ β ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»ΠΎΠ²ΠΎ const Π² Π½Π°ΡΠ°Π»ΠΎ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠ½Π°Ρ, ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΌΠ΅ΡΡΠ°Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π½Π΅ΠΉ ΠΈ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΠΠΠ£. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΡΠ°ΠΊ:
const byte ledPins[] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13};
ΠΠ΅ Π·Π»ΠΎΡΠΏΠΎΡΡΠ΅Π±Π»ΡΠΉΡΠ΅ ΡΠ΅ΠΊΡΡΡΠΈΠ΅ΠΉ
Π Π΅ΠΊΡΡΡΠΈΠ΅ΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΡΠ°ΠΌΠΎΠΉ ΡΠ΅Π±Ρ. Π Π΅ΠΊΡΡΡΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠΎΡΠ½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ. Π ΡΠ·ΡΠΊΠ°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ LISP ΠΈ Scheme, ΡΠ΅ΠΊΡΡΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΡΡ Π»ΠΈ Π½Π΅ ΠΏΠΎΠ²ΡΠ΅ΠΌΠ΅ΡΡΠ½ΠΎ.