ืืืืจ ืขื ืืื ืืืฆืืจ ืืงืจ ืืืื ื ืืชื ืืชืื ืืช ืืืืฉืืจ ืกืื ื ืืื. ืืืฉืืจ ืืื ืืืฆื ืืช ืืฉืืืืฉ ืฉืื ืื ืืืืืืืฆืื ืืืชืืช ืืื ืืฉืืขืืจืื ืืขืฉืืื ืืืืขื ืืืืฉื ืืืืช ืืกืคืจ.
ืืขืืื, ืืืจืืจืช ืืืื, ืชืืื ืืช Sonoff Basic ืขืืืืช ืขื ืืคืืืงืฆืื ืกืืืืจืืช ืืจื ืฉืืจืืช ืขื ื ืกืื ื; ืืืืจ ืืฉืื ืื ืืืืฆืข, ืื ืืื ืืจืืงืฆืื ื ืืกืคืช ืขื ืืืฉืืจ ืื ืชืชืืคืฉืจ ืืืคืืคื.
ืกืขืืฃ I. ืืืืืจ Sonoff ืืฉืืจืืช MGT24
ืฉืื 1: ืฆืืจ ืืื ืืงืจื
ืืจืฉืื ืืืชืจ
ืื ืืกื
ืืื ืืืฆืืจ ืืื ืืงืจื ืืืืฉืืจ ืืืฉ, ืืืฅ ืขื ืืคืชืืจ "+".
ืืืืื ืืืฆืืจืช ืคืื ื
ืืืืจ ืืฆืืจืช ืืืืื ืืช, ืืื ืชืืคืืข ืืจืฉืืืช ืืืืื ืืืช ืฉืื.
ืืืจืืืกืืื "ืืืืจืืช" ืฉื ืืคืื ื ืฉื ืืฆืจ, ืืฆื ืืช ืืฉืืืช "ืืืื ืืืฉืืจ" ื"ืืคืชื ืืจืฉืื"; ืืขืชืื, ืืืืข ืื ืืืืจืฉ ืืขืช ืืืืจืช ืืืฉืืจ Sonoff.
ืืืืื ืืฉืื ืืช
ืฉืื 2. ืืืืง ืืืืฉ ืืช ืืืืฉืืจ
ืฉืืืืฉ ืืืื ืืฉืืจืืช
ืฉืื 3. ืืืืจืช ืืืฉืืจ
ืืคืขืืื ืืฉืื ืืืืฉืืจ, ืืืืจ ืฉืื ืืจืืช ื ืืืงืช, ืืืฅ ืขื ืืืคืชืืจ ืืืืืง ืืืชื ืืืืฅ ืขื ืฉืื ืืจืืช ืืชืืืื ืืืืื ืืขืช ืืขืช ืืืืคื ืฉืืื.
ืืจืืข ืื ืชืืคืืข ืจืฉืช Wi-Fi ืืืฉื ืืฉื "PLC Sonoff Basic", ืืืจ ืืช ืืืืฉื ืฉืื ืืจืฉืช ืื.
ืืกืืจ ืขื ืืืืื LED
ืืืืื LED
ืืฆื ืืืฉืืจ
ืืืืื ืืคืื ืชืงืืคืชื
ืืื ืืืืืจ ืืจืืืืจ
ืืืจื ืืจืฆืืคืืช
ื ืืฆืจ ืืืืืจ ืขื ืื ืชื
ืืืื ืชืงืืคืชืืื ืืืืืืื
ืืฆื ื ืงืืืช ืืืฉื Wi-Fi
ืึผึธืืึผื
ืืื ืกืคืง ืืื
ืคืชืื ืืคืืคื ืืื ืืจื ื ืืืื ืืช ืืืงืกื "192.168.4.1" ืืฉืืจืช ืืืชืืืช, ืขืืืจ ืืืฃ ืืืืจืืช ืืจืฉืช ืฉื ืืืืฉืืจ.
ืืื ืืช ืืฉืืืช ืืืืคื ืืื:
- "ืฉื ืจืฉืช" ื"ืกืืกืื" (ืืื ืืงืฉืจ ืืช ืืืืฉืืจ ืื ืชื ื-Wi-Fi ืืืืชื ืฉืื).
- "ืืืืื ืืืฉืืจ" ื"ืืคืชื ืืจืฉืื" (ืืื ืืืฉืจ ืืช ืืืืฉืืจ ืืฉืืจืืช MGT24).
ืืืืื ืืืืืจืช ืคืจืืืจื ืจืฉืช ืฉื ืืืืฉืืจ
ืฉืืืจ ืืช ืืืืืจืืช ืืืคืขื ืืืืฉ ืืช ืืืืฉืืจ.
ืืื
ืฉืื 4. ืืืืืจ ืืืืฉื ืื (ืืืคืฆืืื ืื)
ืืงืืฉืื ืื ืืืืืช ืชืืืืช ืืขื ืืจืืขื ืืืืฉื ื ืืืคืจืืืจื ds18b20. ืืื
ืกืขืืฃ II. ืชืื ืืช ืืืืืืื
ืฉืื 1: ืฆืืจ ืกืงืจืืคืืื
ืืฉืืฉ ืืกืืืืช ืชืื ืืช
ืืืกืคืชื ืืืืงืื ืืืืืืื ืืืชืืื ืืงืจืืื ืฉื ืคืจืืืจืื ืฉื ืืืฉืืจืื. ืื ืคืจืืืจ ื ืืืฉ ืืคื ืฉื. ืขืืืจ ืคืจืืืจืื ืฉื ืืืฉืืจืื ืืจืืืงืื, ื ืขืฉื ืฉืืืืฉ ืืฉืืืช ืืืจืืืื: "parameter@device".
ืจืฉืืื ื ืคืชืืช ืฉื ืืคืฉืจืืืืช
ืชืจืืืฉ ืืืืื ืืืคืขืื ืืืืืื ืืืืืจืืช ืฉื ืืขืืืก (1 ืืจืฅ):
ืืืืื ืืกืงืจืืคื ืืืกื ืืจื ืืช ืืคืขืืื ืฉื ืฉื ื ืืืฉืืจืื ื ืคืจืืื. ืืืืืจ, ืืืืกืจ ืฉื ืืืฉืืจ ืืืขื ืืืืจ ืขื ืคืขืืืช ืืืืกืจ ืฉื ืืืืฉืืจ ืืืจืืืง.
ืชืจืืืฉ ืืชืจืืืกืื (ืืื ืืืกืืจืืืก):
ืืื ืืืฆืืจ ืกืงืจืืคืืื ืืืจืืืื ืืืชืจ, ืืชื ืืืื ืืืฉืชืืฉ ืืืฉืชื ืื, ืืืืืืช, ืคืื ืงืฆืืืช (ืขื ืืจืืืื ืืื) ืืืื ืื ืืืจืื. ืื ื ืื ืืชืืจ ืืช ืื ืื ืืคืืจืื ืืื; ืืฉ ืืืจ ืื ืืจืื ืืจืฉืช.
ืฉืื 2: ืกืืจ ืืชืกืจืืืื
ืืชืกืจืื ืคืืขื ืืจืฆืืคืืช, ืืืจืืข ืฉืืื ืืืืข ืืกืืคื, ืืื ืืชืืื ืืืืฉ. ืืืงืจื ืื, ืืฉื ื ืฉื ื ืืืืงืื ืฉืืืืืื ืืืฉืืืช ืืื ืืช ืืช ืืกืงืจืืคื, "ืขืืืื" ื"ืืฉืืื".
ืืืืง "ืืฉืืื" ืืฉืืฉ ืืืฉืืืืช ืฉื ืืืคืืืช ืฉื ืืื ืื ืืืงืจื ืฉื ืืื. ืืืืง ืื ืฉืืืจ ืืงืคืื ืืช ืขื ืืจืืื ืืืื, ืืืืกื ืืช ืคืขืืืช ืืืืฉืืจ ืืืื.
ืืืืง "ืืฉืืื" ืืฉืืฉ ืืขืืืืืื ืฉื ืืื (ืื ืคืืืช), ืืืื ืืื ื ืืืกื ืืช ืืืฆืืข ืชืืืืืื ืืืจืื ืืืืฉืืจ.
ืื ืืชืกืจืื ืขืฆืื ืืืื ืืืืื ืืื ืกืืคืืช, ืฉืืืฃ ืฉืื ืืื ื ืืืื "ืืฉืืื", ืืืชืืจืืื ืืืื ืืืืคื ืขืฆืืื ืืคืกืงื ืงืฆืจื.
ืื ืืืกื ืืช ืืืืืจืื ืฉืืืงืฆืชื ื ืืืจื, ืืืชืืจืืื ืืคืกืืง ืืืฆืข ืกืงืจืืคื ืจืขื ืฉืืื (ืืืืืจ ืขื ืคืื ืงืฆืืืช ืจืงืืจืกืืืืืช).
ืฉืื 3: ืืืชืืจ ืืืืื ืืกืงืจืืคืืื
ืืื ืื ืคืืช ืืืืื ืืกืงืจืืคื ืฉืืืจ ื ืืขื ืืืืฉืืจ, ืืชื ืืืื ืืืคืขืื ืืขืงื ืืืจ ืชืืื ืืช ืฆืขื ืืืจ ืฆืขื. ืื ืืืื ืืืืืช ืฉืืืืฉื ืืืืชืจ ืืืฉืจ ืืืชื ืืืืช ืฉื ืืชืกืจืื ืืชืืจืจื ืืฉืื ื ืืื ืฉืืชืืืื ืืืืืจ. ืืืงืจื ืื, ืืืขืงื ืืืคืฉืจ ืืืืืจ ืืืฆืื ืืืืืจืืช ืืช ืืงืืจ ืืืขืื ืืืชืงื ืืช ืืฉืืืื ืืกืงืจืืคื.
ืชืจืืืฉ ืืืืฉืื ืคืงืืืจื ืืืฆื ื ืืคืื ืืืืื:
ืืื ื ืืคืื ืืืืืื ืคืฉืื ืืืื ืืืืจืื ืืฉืืืฉื ืืคืชืืจืื ืขืืงืจืืื: "ืืชืื", "ืฆืขื ืืื ืงืืืื" ื"ืขืฆืืจ" (ืืืื ืื ื ืฉืื ืื ืืืฆื ื ืืคืื "ืื ืืกื" ื"ืืฆืืื"). ืื ืืกืฃ ืืืขืงื ืฉืื ืืืจ ืฉืื, ื ืืชื ืืืืืืจ ื ืงืืืช ืขืฆืืจื ืืื ืืืืง (ืขื ืืื ืืืืฆื ืขื ืืืืืง).
ืืื ืืืฆืื ืืช ืืขืจืืื ืื ืืืืืื ืฉื ืคืจืืืจืื (ืืืืฉื ืื, ืืืกืจืื) ืืฆื, ืืฉืชืืฉ ืืืืืง "ืืืคืก".
ืืื
ืืืืจ ืืกืงืจื ืื. ืื ืืฉ ืืชืืช ืืืืกื ืืื ืืข?
ืขื ืื ืช ืฉืืกืงืจืืคืืื ืืขืืื ืขื ืืืฉืืจ ืืืขื ืคืืชืื ืืชืืจืืื ืืชืื ื-assembler ืขื 38 ืืืจืืืช. ืืงืื ืืืงืืจ ืฉื Blockly ืืฉ ืืืืื ืงืื ืืืืื ืืืื ื ืืืืืจ ืืืืงืื ืืืืืืืืื ืืืืจืืืช ืืจืืื. ืืืืจ ืืื, ืชืืื ืืช ืืืกืืืืจ ืืื ืืืืจืช ืืงืื ืืชืื ืืืืขืืจืช ืืืืฉืืจ ืืฆืืจื ืืืฆืืข.
ืืืจืืืืงืืืจื ืฉื ืืืื ื ืืืจืืืืืืช ืื ืื ืคืฉืืื ืืืื ืืขื ืืชืืจ ืืืชื; ืืืื ืืจื ื ืชืืฆืื ืืืืจืื ืจืืื ืขื ืขืืฆืื ืืืืื ืืช ืืืืืจืืืืืืืช ืืคืฉืืืืช ืืืืชืจ.
ืืืจื ืืื ืื ื ืืงืฆื 1000 ืืชืื ืืขืจืืื ืฉื ืืืืฉื ืืืืืจืืืืื ืฉืื, ืืื ืืกืคืืง ืืื ืืืกืื. ืืืืื, ืจืงืืจืกืืืช ืขืืืงืืช ืืืืืืช ืืืฆืืช ืื ืขืจืืื, ืืื ืื ืกืืืจ ืฉืืืื ืืื ืฉืืืืฉ ืืขืฉื.
ืงืื ืืืชืื ืืืชืงืื ืืื ืื ืงืืืคืงืื. ืืืืืื, ืงืื ืืืชืื ืืืืฉืื ืืืชื ืคืงืืืจืืืื ืืื 49 ืืชืื ืืืื. ืืืื ืฆืืจืชื ืืืืืชืืช:
ืืื ืชืืื ืืช ืืืกืืืืจ ืฉืื:
shift -1
ldi 10
call factorial, 1
print
exit
:factorial
ld_arg 0
ldi 1
gt
je 8
ld_arg 0
ld_arg 0
ldi 1
sub
call factorial, 1
mul
ret
ldi 1
ret
ืื ืืฆืืจืช ืืืจืืื ืฉื ืืืืฆืื ืืื ืขืจื ืืขืฉื, ืืืจืืืกืืื "javascrit", ืืืืคื, ื ืืชื ืช ืืจืื ืืืืจ ืืืชืจ ืืืฉืจ ืืืืงืื ืืืืชืืื:
function factorial(num) {
if (num > 1) {
return num + factorial(num - 1);
}
return 1;
}
window.alert(factorial(10));
ืืืื ืืืฆืืขืื. ืืฉืืจืฆืชื ืืช ืกืงืจืืคื ืืืืง ืืคืฉืื ืืืืชืจ, ืงืืืืชื ืื ืืจืืืข ืฉื 47 ืงืืื-ืืจืฅ ืขื ืืกื ืืืืกืืืืกืงืืค (ืืืืืจืืช ืฉืขืื ืืขืื ืฉื 80 ืืื-ืืจืฅ).
ืื ื ืืืฉื ืฉืื ืชืืฆืื ืืืื, ืืคืืืช ืืืืืจืืช ืืื ืืื ืืืขื ืคื ืขืฉืจื ืืืืืืจืืช
ืืืืง ืืืืจืื
ืืกืืืื, ืืืื ืฉืืฉืืืืฉ ืืกืงืจืืคืืื ืืืคืฉืจ ืื ื ืื ืจืง ืืชืื ืช ืืช ืืืืืืื ืฉื ืืคืขืืื ืฉื ืืืฉืืจ ื ืคืจื, ืืื ืื ืืืคืฉืจ ืืืืจ ืืกืคืจ ืืืฉืืจืื ืืื ืื ืื ืืื, ืฉืื ืืืฉืืจืื ืืกืืืืื ืืฉืคืืขืื ืขื ืืชื ืืืืชื ืฉื ืืืจืื.
ืื ื ืื ืืฆืืื ืฉืืฉืืื ืฉื ืืืจื ืืืืกืื ืกืงืจืืคืืื (ืืฉืืจืืช ืืืืฉืืจืื ืขืฆืื, ืืื ืืฉืจืช) ืืคืฉืืช ืืช ืืืขืืจ ืฉื ืืืฉืืจืื ืฉืืืจ ืขืืืืื ืืฉืจืช ืืืจ, ืืืฉื ืืคืื ืืืชื, ืืื
ืื ืืื, ืืฉืื ืืฉืืืข ืขืฆืืช ืืืืงืืจืช ืืื ื.
ืืงืืจ: www.habr.com