Arduino рдХреЗ рд▓рд┐рдП рдирдпрд╛ noLLite MR1132 рд░рд┐рд╕реАрд╡рд░ рдореЙрдбреНрдпреВрд▓

рдЫрд╡рд┐

рдпрд╣ рд▓реЗрдЦ Arduino рдФрд░ microcontrollers рдХреЗ рд▓рд┐рдП рдирдП nooLite рд╕рд┐рдЧреНрдирд▓ рд░рд┐рд╕реАрд╡рд░ рдореЙрдбреНрдпреВрд▓ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдЧрд╛ред рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ? рдЕрдм рддрдХ, рд╕реЗрдВрд╕рд░ рд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдФрд░ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдФрд░ рдЕрд░реБрдбрд┐рдиреЛ рдкрд░ рдиреЙрдпрд▓рд╛рдЗрдЯ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рд╕реЗ рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рдкреНрд░рд╕рд╛рд░рдг рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдкрд╛рдп рдирд╣реАрдВ рдереЗ , рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗрд╡рд▓ рд╡рд┐рд╢реЗрд╖ рдпреВрдПрд╕рдмреА рдПрдбреЗрдкреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрдВрдкреНрдпреВрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рдереАред

рдЕрдм, MR1132 рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде, рддрд╛рдкрдорд╛рди, рдЖрд░реНрджреНрд░рддрд╛, рдкреНрд░рдХрд╛рд╢ рдФрд░ рдЕрд░реБрдбрд┐рдиреЛ рдкрд░ рдЖрдкрдХреЗ рд╕реНрдХреЗрдЪ рдореЗрдВ рдиреЙрдпрд▓рд╛рдЗрдЯ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╡рд╛рдпрд░рд▓реЗрд╕ рд╕реЗрдВрд╕рд░ рд╕реЗ рдХрдорд░реЗ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рд╕реНрд╡рд┐рдЪ рджреНрд╡рд╛рд░рд╛ рдмрд┐рдЬрд▓реА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдЖрджреЗрд╢реЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред рдЬреЛ рдкрд╣рд▓реЗ рдЕрдиреБрдкрд▓рдмреНрдз рдерд╛ред

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ рдФрд░ рдПрдХ рд╡рд░реНрдХрд┐рдВрдЧ рд╕реНрдХреЗрдЪ рджреВрдВрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ MR1132 рдкрд░ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╛рдж рдХреЗ рд▓реЗрдЦреЛрдВ рдореЗрдВ рдореИрдВ рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдПрдХреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЛрдХрдкреНрд░рд┐рдп Arduino Mega Server рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдФрд░ рдЗрд╕ рдПрдХреАрдХрд░рдг рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реА рдЕрджреНрднреБрдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдБрдЧрд╛ред

рдореЙрдбреНрдпреВрд▓


MR1132 рдореЙрдбреНрдпреВрд▓ рдЕрдкрдиреЗ рднрд╛рдИ, MT1132 рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИ (рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Gimetays рдПрдХ , рджреЛ , рддреАрди рдкрд░ рд▓реЗрдЦреЛрдВ рдХрд╛ рдПрдХ рдЪрдХреНрд░ рд░рд╣рд╛ рд╣реИ )ред рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ MT1132 рдореЙрдбреНрдпреВрд▓ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдореАрдЯрд░ рд╣реИ, рдФрд░ MR1132 рдореЙрдбреНрдпреВрд▓ рдПрдХ рд░рд┐рд╕реАрд╡рд░ рд╣реИ рдФрд░ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдкреНрд░рднрд╛рд╡ рддрдм рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдПрдХ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдпрд╣ рд╣реИ рдХрд┐ MT1132 рдЯреНрд░рд╛рдВрд╕рдореАрдЯрд░ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╣реИ рдФрд░ 3.3 V рд╕реЗ рдФрд░ 5 V (рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ 3.3-рд╡реЛрд▓реНрдЯ рдирд┐рдпрдВрддреНрд░рдХ рдФрд░ 5-рд╡реЛрд▓реНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ) рдФрд░ рд░рд┐рд╕реАрд╡рд░ рджреЛрдиреЛрдВ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХреЗрд╡рд▓ 5 V рд╕реЗред рдпрд╣ рдЖрдкрдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рддреЗ рд╕рдордп рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рддрд╛рд░реНрдХрд┐рдХ рд╕реНрддрд░ рдХреЗ рд╕рдордиреНрд╡рдпрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдЫрд╡рд┐

рдХрдиреЗрдХреНрд╢рди MT1132 рдореЙрдбреНрдпреВрд▓ рдХреА рддрд░рд╣ рд╕рд░рд▓ рд╣реИ - рдЖрдкреВрд░реНрддрд┐ рд╡реЛрд▓реНрдЯреЗрдЬ, рдЬрдореАрди рдФрд░ рджреЛ рд╕рдВрдкрд░реНрдХ RX рдФрд░ TXред рдЖрд░рдЯреАрдПрд╕ рдХреЛ рдЖрдкреВрд░реНрддрд┐ рд╡реЛрд▓реНрдЯреЗрдЬ рддрдХ рдЦреАрдВрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд┐рдирд╛ рднреА рд╕рдм рдХреБрдЫ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдХрд╛рдо


рдореЙрдбреНрдпреВрд▓ 9600 рдХреА рдЧрддрд┐ рд╕реЗ рдПрдХ рд╕реАрд░рд┐рдпрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдирд┐рдпрдВрддреНрд░рдХ рд╕реЗ рдХрдорд╛рдВрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдмрджрд▓реЗ рдореЗрдВ, рд╣рд╡рд╛ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдбреЗрдЯрд╛ (рд╕реЗрдВрд╕рд░ рдФрд░ рдиреЛрд▓рд╛рдЗрдЯ рд░реАрдореЛрдЯ рд╕реЗ) рдЬрд╛рд░реА рдХрд░рддрд╛ рд╣реИред

рдЖрдЗрдП рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдХрд░реАрдм рд╕реЗ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ, рддрд╛рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕ рдмрд╛рдд рдХреА рд╕реНрдкрд╖реНрдЯ рд╕рдордЭ рд╣реЛ рдХрд┐ рдпрд╣ рдореЙрдбреНрдпреВрд▓ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╕рднреА рдЖрджреЗрд╢ рдЬреЛ рдирд┐рдпрдВрддреНрд░рдХ рд╕реАрд░рд┐рдпрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, "рдмрд╛рдЗрдВрдбрд┐рдВрдЧ" рдпрд╛ "рдЕрдирдЯрд╛рдЗрдЯрд┐рдВрдЧ" рдиреЛрд▓рд╛рдЗрдЯ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдореЙрдбреНрдпреВрд▓ рддрдм рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛ред рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рдЖрджреЗрд╢ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдиреЗ рд╢реВрдиреНрдп рдЪреИрдирд▓ (рдХреБрд▓ 32 рдЪреИрдирд▓, рдЬреЛ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдирд╛рдо рд╕реЗ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реЛрддрд╛ рд╣реИ) рдкрд░ nooLite PT112 рддрд╛рдкрдорд╛рди рд╕рдВрд╡реЗрджрдХ рдХреЛ рдмрд╛рдВрдзрд╛ рд╣реИ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдореЙрдбреНрдпреВрд▓ рдЗрд╕ рд╕реЗрдВрд╕рд░ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдЧрд╛ рдФрд░ рдЗрд╕реЗ рд╕реАрд░рд┐рдпрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдЧрд╛ (рдЬрд╣рд╛рдВ рдЗрд╕рдХрд╛ рдХрд╛рд░реНрдп "рдЗрд╕реЗ рдкрдХрдбрд╝рдиреЗ" рдХреЗ рд▓рд┐рдП рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд░реЗрдВ) рдкреНрд░рдпреЛрдЬрдиреЛрдВ)ред

рдпрджрд┐ рд╣рдореЗрдВ рдЕрдм рдХрд┐рд╕реА рд╕реЗрдВрд╕рд░ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рдбрд┐рдХреВрдкрд┐рдВрдЧ рдХрдорд╛рдВрдб рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЪреИрдирд▓ рд╢реВрдиреНрдп рдкрд░) рдФрд░ рд░рд┐рд╕реАрд╡рд░ рдЕрдм рдЗрд╕ рд╕реЗрдВрд╕рд░ рд╕реЗ рдирд┐рдпрдВрддреНрд░рдХ рдХреЛ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рджреЗрдЧрд╛ред

No11 рд▓рд╛рдЗрдЯ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ MR1132 рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдПрдХ рдЕрд▓рдЧ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣реИ рдЬреЛ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдХрдорд╛рдВрдб рдХреЗ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред рд╣рдо, рдЗрд╕ рдХрдерд╛ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдЗрд╕ рд╡реНрдпрд╛рдкрдХ рд╕реВрдЪреА рд╕реЗ рддрд╛рдкрдорд╛рди, рдЖрд░реНрджреНрд░рддрд╛ рдФрд░ рдЧрддрд┐ рд╕реЗрдВрд╕рд░ рдХреА рдЯреАрдореЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд▓реЗрдВрдЧреЗред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдХреЗрдЪ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЗрди рдЖрджреЗрд╢реЛрдВ рдкрд░ рдиреАрдЪреЗ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреАред

рд╕реЗрдВрд╕рд░


рд╣рдорд╛рд░реЗ рдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рддреАрди рд╕реЗрдВрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЫрд╡рд┐

рддрд╛рдкрдорд╛рди рд╕реЗрдВрд╕рд░ PT112 рдФрд░ рддрд╛рдкрдорд╛рди рдФрд░ рдЖрд░реНрджреНрд░рддрд╛ рд╕реЗрдВрд╕рд░ PT111ред рд╡реЗ рд╕рдорд╛рди рджрд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рдмрд┐рд▓реНрдХреБрд▓ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ PT112 рдХреЗрд╡рд▓ рддрд╛рдкрдорд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрддрд╛ рд╣реИ, рдФрд░ PT111 рддрд╛рдкрдорд╛рди рдФрд░ рдЖрд░реНрджреНрд░рддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрддрд╛ рд╣реИред рдпреЗ рд╕реЗрдВрд╕рд░ рдпрд╛ рддреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕реЗрдВрд╕рд░ рдореЛрдб рдпрд╛ рдерд░реНрдореЛрд╕реНрдЯреЗрдЯ рдФрд░ рд╣рд╛рдИрдЧреНрд░реЛрд╕реНрдЯреИрдЯ рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕реЗрдВрд╕рд░ рдореЛрдб рдореЗрдВ рд░реБрдЪрд┐ рд▓реЗрдВрдЧреЗред

рдЫрд╡рд┐

рддреАрд╕рд░рд╛ рд╕реЗрдВрд╕рд░ PM111 рд╣реИред рдпрд╣ рдПрдХ рдореЛрд╢рди рд╕реЗрдВрд╕рд░ рд╣реИ рдЬреЛ рд╕реАрдзреЗ рдиреВрд▓рд╛рдЗрдЯ рдкрд╛рд╡рд░ рдпреВрдирд┐рдЯреНрд╕ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдХреЗрд╡рд▓ рдХрдорд░реЗ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреА рдЖрд╡рд╛рдЬрд╛рд╣реА рдФрд░ рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо рдореЗрдВ рд░реБрдЪрд┐ рд▓реЗрдВрдЧреЗред

рдирд┐рдпрдВрддреНрд░рдХ



Arduino Mega 2560 рдХреЛ рдХрдВрдЯреНрд░реЛрд▓ рдХрдВрдЯреНрд░реЛрд▓рд░, рдФрд░ рдЗрд╕рдХреЗ рджреЛ рд╕реАрд░рд┐рдпрд▓ рдЗрдВрдЯрд░рдлреЗрд╕ - рд╕реАрд░рд┐рдпрд▓ (рд╡рд┐рдЬреБрдЕрд▓ рдЗрдВрдлреЙрд░реНрдореЗрд╢рди рдХрдВрдЯреНрд░реЛрд▓ рдХреЗ рд▓рд┐рдП) Serial2 (рд░рд┐рд╕реАрд╡рд░ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХреЗ рд▓рд┐рдП) рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред Serial1 MT1132 рдЯреНрд░рд╛рдВрд╕рдореАрдЯрд░ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЖрд░рдХреНрд╖рд┐рдд рд╣реИред

рдЫрд╡рд┐

рд╕реНрдХреЗрдЪ


рд╕реЗрдЯрдЕрдк () рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рджреЛ рдЗрдВрдЯрд░рдлреЗрд╕ рд▓реЙрдиреНрдЪ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рд╕реНрдХреЗрдЪ рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕реВрдЪрдирд╛ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╢реВрдиреНрдп рдЪреИрдирд▓ рдкрд░ рдиреЛрд▓рд╛рдЗрдЯ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдмрд╛рдВрдзрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрджреЗрд╢ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдкрд░реАрдХреНрд╖рдг рдХрдорд╛рдВрдб рд╣реИ рдФрд░ рдЖрдк рдЗрд╕реЗ рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдЕрдиреНрдп рдЪреИрдирд▓ рдкрд░ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдпрд╛ untying)ред

void setup() {
  Serial.begin(9600);
  Serial2.begin(9600);
  Serial.println("*** Start sketch ***");
  mrBind(0);
  //mrUnbind(0);
}

рд╕реНрдХреЗрдЪ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдХреБрдЫ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдгреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЕрд░реНрдерд╛рддреН, рдЕрдкрдиреЗ рд╕реЗрдВрд╕рд░ рдХреЛ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд░реАрдХреЗ рд╕реЗ

рдмрд╛рдВрдзреЗрдВ : PT112 - рдЪреИрдирд▓ рд╢реВрдиреНрдп
PT111 - рдЪреИрдирд▓ рдПрдХ
PM111 - рдЪреИрдирд▓ рджреЛ

рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХрдорд╛рдВрдб рдХреЛ рдмрджрд▓рддреЗ рд╣реБрдП рдХрдИ рдмрд╛рд░ рд╕реНрдХреЗрдЪ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

mrBind(0);
mrBind(1);
mrBind(2);

рдФрд░ рд╣рд░ рдмрд╛рд░ рд╕рдВрдмрдВрдзрд┐рдд рд╕реЗрдВрд╕рд░ рдкрд░ рдмрдЯрди рджрдмрд╛рдПрдВред рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдлрд┐рд░ рдмрд╛рдзреНрдпрдХрд╛рд░реА рдЖрджреЗрд╢ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред рдпрд╛, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдЕрдирдЯрд╛рдЗ рдХрдорд╛рдВрдб рдбрд╛рд▓реЗрдВ рдФрд░ рдХрд┐рд╕реА рднреА рд╕рдВрд▓рдЧреНрди рд╕реЗрдВрд╕рд░ рдХреЛ рдЕрдирдЯрд╛рдЗ рдХрд░реЗрдВред

рд▓реВрдк () рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рдХреЗрд╡рд▓ рдПрдХ mrCheck () рдлрд╝рдВрдХреНрд╢рди рд╣реИ, рдЬреЛ рд╕реАрд░рд┐рдпрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ Serial2 рд╕реЗ MR1132 рдореЙрдбреНрдпреВрд▓ рд╕реЗ "рдкрдХрдбрд╝рдиреЗ" рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред

void mrCheck() {
  if (Serial2.available() == 8) {
    mrBuf[0] = Serial2.read();
    mrBuf[1] = Serial2.read();
    mrBuf[2] = Serial2.read();
    mrBuf[3] = Serial2.read();
    if (mrBuf[0] == 79 && mrBuf[1] == 75 && mrBuf[2] == 13 && mrBuf[3] == 10) {
      Serial.println("OK");
    } else {
        mrBuf[4] = Serial2.read();
        mrBuf[5] = Serial2.read();
        mrBuf[6] = Serial2.read();
        mrBuf[7] = Serial2.read();
        mrNewData();
      }
  }
}

рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдЖрддрд╛ рд╣реИ mrBuf [8] рд╕рд░рдгреА рдЬреЛ рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реИ рдпрд╛ MR1132 рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд░реА рд╕реАрд░рд┐рдпрд▓ рд╕рдВрджреЗрд╢ "рдУрдХреЗ" рддрдХ рдкрд╣реБрдВрдЪрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, mrBuf [8] рд╕рд░рдгреА рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ nooLite рд╕рд┐рд╕реНрдЯрдо рдХрдорд╛рдВрдб рдХреЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╕реНрдХреЗрдЪ рдлрд╝рдВрдХреНрд╢рди рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

MrNewData () рдлрд╝рдВрдХреНрд╢рди mrBuf рд╕рд░рдгреА [8] рд╕реЗ рдореБрдЦреНрдп рдбреЗрдЯрд╛ рдХреЛ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ рдФрд░ рдЖрдиреЗ рд╡рд╛рд▓реА рдХрдорд╛рдВрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╕реАрд░рд┐рдпрд▓ (рдЪреИрдирд▓, рдХрдорд╛рдВрдб, рддрд╛рдкрдорд╛рди, рдЖрд░реНрджреНрд░рддрд╛, рд╕реЗрдВрд╕рд░ рдмреИрдЯрд░реА рдХреА рд╕реНрдерд┐рддрд┐, рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддрд╛ рд╣реИред

void mrNewData() {
  mrClearData();
  mrPrintHeader();
  
  mrSetBindState();
  mrPrintBindState();
  mrSetChannel();
  mrPrintChannel();

  mrSetCommand();
  mrSetDatas();

  switch (mrCommand) {
    case 0:
      Serial.print("PIR command: ");Serial.println("OFF");
      break;
    case 2:
      Serial.print("PIR command: "); Serial.println("ON");
      break;
    case 21:
      mrSetDeviceType();
      mrPrintDeviceType();
      if (mrDeviceType == 1) {
        mrSetTemperature();
        mrPrintTemperature();
      }
      if (mrDeviceType == 2) {
        mrSetTemperature();
        mrPrintTemperature();
        mrSetHumidity();
        mrPrintHumidity();
      }
      break;
    default: 
      ;
  } // switch
  mrSetBatteryState();
} // newData()

рдлрд╝рдВрдХреНрд╢рдВрд╕ рдЬрд┐рд╕рдореЗрдВ рдЙрдирдХреЗ рдирд╛рдо рдореЗрдВ рдкреНрд░рд┐рдВрдЯ рд╣реЛрддрд╛ рд╣реИ, рджреГрд╢реНрдп рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рд╕реАрд░рд┐рдпрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ рд▓рдЧреЗ рд╣реБрдП рд╣реИрдВред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп mrBuf рд╕рд░рдгреА рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рддреЗ рд╣реИрдВ [8], NooLite рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдХрдорд╛рдВрдб рдХреЗ рдбреЗрдЯрд╛ рдлреЙрд░реНрдореЗрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░:

mrSetTogl () - рдЗрдирдХрдорд┐рдВрдЧ рдХрдорд╛рдВрдб
mrSetTindState () - рдореЙрдбреНрдпреВрд▓ рд╕реНрдЯреЗрдЯрд╕ (рдмрд╛рдЗрдВрдбрд┐рдВрдЧ /
рдиреЙрд░реНрдореНрд╕ ) mrSetReceiveBit () - рдХреЗ рд░рд┐рд╕реЗрдкреНрд╢рди рдХрд╛ рдорд╛рдиред рдирдИ рдХрдорд╛рдВрдб
mrSetChannel () - рдЪреИрдирд▓ рд╕рдВрдЦреНрдпрд╛
mrSetCommand () - рдХрдорд╛рдВрдб
mrSetFormat () - рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк
mrSetDeviceType () - рд╕реЗрдВрд╕рд░ рдкреНрд░рдХрд╛рд░
mrSetDommas () - рдбреЗрдЯрд╛ mrSetT рдХреЛрдорд▓ () рдХреЗ рдЪрд╛рд░ рдмрд╛рдЗрдЯреНрд╕ рднрд░реЗрдВред
- рддрд╛рдкрдорд╛рди рдорд╛рди
mrSetHumidity () - рдЖрд░реНрджреНрд░рддрд╛ рдорд╛рди
mrSetBrightness () рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ - рд░реЛрд╢рдиреА рдХрд╛ рдореВрд▓реНрдп
mrSetBatteryState () - рд╕реЗрдВрд╕рд░ рдмреИрдЯрд░реА рдХреА рд╕реНрдерд┐рддрд┐

рдЖрдк рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдкреВрд░реНрдг рд╕реНрдХреЗрдЪ рдХреЛрдб рдореЗрдВ рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╡рд┐рд╡рд░рдг рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣рд╛рдБ рдкреВрд░рд╛ рд╕реНрдХреЗрдЪ рд╣реИред

рдкреВрд░реНрдг рд╕реНрдХреЗрдЪ рдХреЛрдб
// TX2 16
// RX2 17
// TX1 18
// RX1 19

// nooLite MR1132 data
byte mrBuf[8];
int mrTogl = -1;
int mrBindState = -1;
int mrReceiveBit = -1;
int mrChannel = -1;
int mrCommand = -1;
int mrFormat = -1;
int mrData0 = -1;
int mrData1 = -1;
int mrData2 = -1;
int mrData3 = -1;
int mrDeviceType = -1;
int mrBatteryState = -1;
int mrHumidity = -1;
int mrBrightness = -1;
float mrTemp = -1.0;

// nooLite MR1132 bind/unbind

void mrSerialChannel(byte ch) {
switch (ch) {
case 0: Serial.println (┬л0┬╗); break;
case 1: Serial.println (┬л1┬╗); break;
case 2: Serial.println (┬л2┬╗); break;
case 3: Serial.println (┬л3┬╗); break;
case 4: Serial.println (┬л4┬╗); break;
case 5: Serial.println (┬л5┬╗); break;
case 6: Serial.println (┬л6┬╗); break;
case 7: Serial.println (┬л7┬╗); break;
case 8: Serial.println (┬л8┬╗); break;
case 9: Serial.println (┬л9┬╗); break;
case 10: Serial.println(┬л10┬╗); break;
case 11: Serial.println(┬л11┬╗); break;
case 12: Serial.println(┬л12┬╗); break;
case 13: Serial.println(┬л13┬╗); break;
case 14: Serial.println(┬л14┬╗); break;
case 15: Serial.println(┬л15┬╗); break;
case 16: Serial.println(┬л16┬╗); break;
case 17: Serial.println(┬л17┬╗); break;
case 18: Serial.println(┬л18┬╗); break;
case 19: Serial.println(┬л19┬╗); break;
case 20: Serial.println(┬л20┬╗); break;
case 21: Serial.println(┬л21┬╗); break;
case 22: Serial.println(┬л22┬╗); break;
case 23: Serial.println(┬л23┬╗); break;
case 24: Serial.println(┬л24┬╗); break;
case 25: Serial.println(┬л25┬╗); break;
case 26: Serial.println(┬л26┬╗); break;
case 27: Serial.println(┬л27┬╗); break;
case 28: Serial.println(┬л28┬╗); break;
case 29: Serial.println(┬л29┬╗); break;
case 30: Serial.println(┬л30┬╗); break;
case 31: Serial.println(┬л31┬╗); break;
} // switch
} // mrSerialChannel( )

void mrSerial2Channel(byte ch) {
switch (ch) {
case 0: Serial2.print(┬л00┬╗); break;
case 1: Serial2.print(┬л01┬╗); break;
case 2: Serial2.print(┬л02┬╗); break;
case 3: Serial2.print(┬л03┬╗); break;
case 4: Serial2.print(┬л04┬╗); break;
case 5: Serial2.print(┬л05┬╗); break;
case 6: Serial2.print(┬л06┬╗); break;
case 7: Serial2.print(┬л07┬╗); break;
case 8: Serial2.print(┬л08┬╗); break;
case 9: Serial2.print(┬л09┬╗); break;
case 10: Serial2.print(┬л10┬╗); break;
case 11: Serial2.print(┬л11┬╗); break;
case 12: Serial2.print(┬л12┬╗); break;
case 13: Serial2.print(┬л13┬╗); break;
case 14: Serial2.print(┬л14┬╗); break;
case 15: Serial2.print(┬л15┬╗); break;
case 16: Serial2.print(┬л16┬╗); break;
case 17: Serial2.print(┬л17┬╗); break;
case 18: Serial2.print(┬л18┬╗); break;
case 19: Serial2.print(┬л19┬╗); break;
case 20: Serial2.print(┬л20┬╗); break;
case 21: Serial2.print(┬л21┬╗); break;
case 22: Serial2.print(┬л22┬╗); break;
case 23: Serial2.print(┬л23┬╗); break;
case 24: Serial2.print(┬л24┬╗); break;
case 25: Serial2.print(┬л25┬╗); break;
case 26: Serial2.print(┬л26┬╗); break;
case 27: Serial2.print(┬л27┬╗); break;
case 28: Serial2.print(┬л28┬╗); break;
case 29: Serial2.print(┬л29┬╗); break;
case 30: Serial2.print(┬л30┬╗); break;
case 31: Serial2.print(┬л31┬╗); break;
} // switch
} // mrSerial2Channel( )

void mrPrintBind(byte ch) {
Serial.print(┬лBind on channel тАЮ);
mrSerialChannel(ch);
}

void mrBind(byte ch) {
mrPrintBind(ch);
Serial2.print(тАЬbind_mode_cell_┬╗);
mrSerial2Channel(ch);
Serial2.write(3); // End of Text тАФ B00000011(BIN)
}

void mrPrintUnbind(byte ch) {
Serial.println(┬лUnbind on channel тАЮ);
mrSerialChannel(ch);
}

void mrUnbind(byte ch) {
mrPrintUnbind(ch);
Serial2.print(тАЬclear_one_cell_┬╗);
mrSerial2Channel(ch);
Serial2.write(3);
}

void mrBindStop() {
Serial.println(┬лBind mode off┬╗);
Serial2.print(┬лbind_mode_off┬╗);
Serial2.write(3);
}

void mrClearAll() {
Serial.println(┬лClear all cell┬╗);
Serial2.print(┬лclear_all_cell┬╗);
Serial2.write(3);
}

// nooLite MR1132 print works

void mrPrintHeader() {
Serial.println();
}

void mrPrintDeviceType() {
Serial.print(┬лDevice: тАЮ);
if (mrDeviceType == 1) {
Serial.println(тАЬPT112┬╗);
}
if (mrDeviceType == 2) {
Serial.println(┬лPT111┬╗);
}
}

void mrPrintBindState() {
if (mrBindState == 1) {
Serial.print(┬лBind State: тАЮ);
Serial.println(тАЬON┬╗);
}
}

void mrPrintBatteryState() {
if (mrBatteryState == 1) {
Serial.print(┬лBattery State: тАЮ);
Serial.println(тАЬLOW!┬╗);
}
}

void mrPrintChannel() {
Serial.print(┬лChannel: тАЮ);
Serial.println(mrChannel);
}

void mrPrintTemperature() {
Serial.print(тАЬTemp: тАЮ);
Serial.println(mrTemp);
}

void mrPrintHumidity() {
Serial.print(тАЬHumidity: тАЮ);
Serial.println(mrHumidity);
}

// nooLite MR1132 data works

void mrClearData() {
mrTogl = -1;
mrBindState = -1;
mrReceiveBit = -1;
mrChannel = -1;
mrCommand = -1;
mrFormat = -1;
mrData0 = -1;
mrData1 = -1;
mrData2 = -1;
mrData3 = -1;
mrDeviceType = -1;
mrBatteryState = -1;
mrHumidity = -1;
mrBrightness = -1;
mrTemp = -1.0;
}

void mrSetTogl() {
byte b0 = bitRead(mrBuf[0], 0);
byte b1 = bitRead(mrBuf[0], 1);
byte b2 = bitRead(mrBuf[0], 2);
byte b3 = bitRead(mrBuf[0], 3);
byte b4 = bitRead(mrBuf[0], 4);
byte b5 = bitRead(mrBuf[0], 5);
mrTogl = 32*b5 + 16*b4 + 8*b3 + 4*b2 + 2*b1 + b0;
}

void mrSetBindState() {
mrBindState = bitRead(mrBuf[0], 6);
}

void mrSetReceiveBit() {
mrReceiveBit = bitRead(mrBuf[0], 7);
}

void mrSetChannel() {
mrChannel = mrBuf[1];
}

void mrSetCommand() {
mrCommand = mrBuf[2];
}

void mrSetFormat() {
mrFormat = mrBuf[3];
}

void mrSetDeviceType() {
byte tp1 = bitRead(mrBuf[5], 4);
byte tp2 = bitRead(mrBuf[5], 5);
byte tp3 = bitRead(mrBuf[5], 6);
mrDeviceType = 4*tp3 + 2*tp2 + tp1;
}

void mrSetDatas() {
mrData0 = mrBuf[4];
mrData1 = mrBuf[5];
mrData2 = mrBuf[6];
mrData3 = mrBuf[7];
}

void mrSetTemperature() {
byte t8 = bitRead(mrData1, 0);
byte t9 = bitRead(mrData1, 1);
byte t10= bitRead(mrData1, 2);
int temp2 = 1024*t10 + 512*t9 + 256*t8;

int temp = mrData0 + temp2;

byte t11 = bitRead(mrData1, 3);
if (t11 == 1) {
temp = (4096 тАФ temp) * -1;
}
mrTemp = (float)temp / 10.0;
}

void mrSetBatteryState() {
mrBatteryState = bitRead(mrBuf[5], 7);
}

void mrSetHumidity() {
mrHumidity = mrData2;
}

void mrSetBrightness() {
mrBrightness = mrData3;
}

void mrNewData() {
mrClearData();
mrPrintHeader();

mrSetBindState();
mrPrintBindState();
mrSetChannel();
mrPrintChannel();

mrSetCommand();
mrSetDatas();

switch (mrCommand) {
case 0:
Serial.print(тАЬPIR command: тАЮ); Serial.println(тАЬOFF┬╗);
break;
case 2:
Serial.print(┬лPIR command: тАЮ); Serial.println(тАЬON┬╗);
break;
case 21:
mrSetDeviceType();
mrPrintDeviceType();
if (mrDeviceType == 1) {
mrSetTemperature();
mrPrintTemperature();
}
if (mrDeviceType == 2) {
mrSetTemperature();
mrPrintTemperature();
mrSetHumidity();
mrPrintHumidity();
}
break;
default:
;
} // switch
mrSetBatteryState();
} // newData()

void mrCheck() {
if (Serial2.available() == 8) {
mrBuf[0] = Serial2.read();
mrBuf[1] = Serial2.read();
mrBuf[2] = Serial2.read();
mrBuf[3] = Serial2.read();
if (mrBuf[0] == 79 && mrBuf[1] == 75 && mrBuf[2] == 13 && mrBuf[3] == 10) {
Serial.println(┬лOK┬╗);
} else {
mrBuf[4] = Serial2.read();
mrBuf[5] = Serial2.read();
mrBuf[6] = Serial2.read();
mrBuf[7] = Serial2.read();
mrNewData();
}
}
}

void setup() {
Serial.begin(9600);
Serial2.begin(9600);
Serial.println("*** Start sketch ***");
mrBind(0);
//mrUnbind(0);
}

void loop() {
mrCheck();
} // loop()


рдирд┐рд╖реНрдХрд░реНрд╖


рдпрд╣, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рд╕рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЛ MR1132 рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЕрдкрдиреЗ рд╕реНрдХреЗрдЪ рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдиреЛрд▓рд╛рдЗрдЯ рд▓рд╛рдЗрдЯ-рдорд╛рдЙрдВрдЯреЗрдб рдХрдВрд╕реЛрд▓ рд╕реЗ рд╕рд┐рдЧреНрдирд▓ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХрд╛ рд╕рд┐рд╕реНрдЯрдо рдЕрдм рдпрд╣ рдЬрд╛рди рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХрд╣рд╛рдВ рдФрд░ рдХрд┐рд╕ рдХрдВрд╕реЛрд▓ рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХреМрди рд╕реА рдХрдорд╛рдВрдб рдЗрд╕реЗ рдмрд┐рдЬрд▓реА рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЛ рднреЗрдЬрддреА рд╣реИред

рдЬрд▓реНрдж рд╣реА рд▓реЛрдХрдкреНрд░рд┐рдп Arduino рдореЗрдЧрд╛ рд╕рд░реНрд╡рд░ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдПрдХ рдирдпрд╛ 0.15 рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ MR1132 рдореЙрдбреНрдпреВрд▓ рдФрд░ рд╕реАрдзреЗ рд╡реЗрдм рдкреЗрдЬ рд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд░реНрдерди рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рд╣реЛрдЧрд╛ред

Source: https://habr.com/ru/post/hi393185/


All Articles