рдореБрдЭреЗ рдЕрдкрдиреЗ рдШрд░ рдореЗрдВ рдПрдХ рдирд┐рдпрдорд┐рдд рдЕрдиреБрд░реВрдк рдЧрд┐рд▓рд╣рд░реА рдорд┐рд▓реАред
рд╡рд╣ рдПрдХ рдкрд┐рдВрдЬрд░реЗ рдореЗрдВ рд░рд╣рддрд╛ рдерд╛, рд╡рд╣ рдЦреБрдж рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рдерд╛, рдЙрд╕рдиреЗ рдЕрдкрдирд╛ рдкрд╣рд┐рдпрд╛ рдмрджрд▓ рджрд┐рдпрд╛ред рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЧрддрд┐ рд╕реЗред рд╕реБрдмрд╣ рдореЗрдВ, рдЖрдорддреМрд░ рдкрд░ рдЕрдзрд┐рдХ рдКрд░реНрдЬрд╛рд╡рд╛рди, рд╢рд╛рдо рдореЗрдВ, рдердХрд╛ рд╣реБрдЖ, рдЕрдзрд┐рдХ рдзреАрд░реЗ-рдзреАрд░реЗред рдФрд░ рдЗрд╕ рдмрд╛рд░ рдПрдХ рд╕рд╡рд╛рд▓ рдиреЗ рдореБрдЭреЗ рдкрд░реЗрд╢рд╛рди рдХрд░ рджрд┐рдпрд╛ред рдФрд░ рдкрд╣рд┐рдпрд╛ рдореЗрдВ рдЧрд┐рд▓рд╣рд░реА рдХрд┐рд╕ рдЧрддрд┐ рд╕реЗ рдЪрд▓рддреА рд╣реИ?
рдореИрдВрдиреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдФрд░ рдПрдХ рдмрд╛рд░ рд╕реЛрдЪрд╛ ...
рдореИрдВрдиреЗ
рд╡реНрд╣реАрд▓ рд╕реНрдкреАрдб рдХрд╛рдЙрдВрдЯрд░ рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рдлреЛрдЯреЛ рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╕рдм рдХреБрдЫ рдмрдбрд╝реЗ рдХрд░реАрдиреЗ рд╕реЗ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдПрдХ рдмрд┐рд▓реНрд▓реА рдХреЗ рдиреАрдЪреЗ рдорд╛рдк рдХреЗ Sortsa, рд╡реАрдбрд┐рдпреЛ рдФрд░ рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдоред
рдШрдЯрдХреЛрдВред
- рдЕрд░реБрдбрд┐рдиреЛ рдЙрдиреЛред
- рд╕реНрдХреНрд░реАрди LKM-1638ред
- рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ (рдХреЛрдИ рднреА рдХрд░реЗрдЧрд╛)ред
- рд╡рд┐рд╕реНрддрд╛рд░ рдордВрдбрд▓ред
- рдмреЛрдирд╕ - рддрд╛рдкрдорд╛рди рдФрд░ рдЖрд░реНрджреНрд░рддрд╛ рд╕реЗрдВрд╕рд░ DHT11ред
рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдореБрдЭреЗ рдмреЛрд░реНрдб рдкрд░ рдПрдХ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░, рдПрдХ LKM-1638 рд╕реНрдХреНрд░реАрди рдФрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рд▓реЗрдХрд┐рди, рдпрд╣ рд╕рдм рдЪреБрдирддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдЧрд┐рд▓рд╣рд░реА рдХреЗрдЬ рдХреЛ "рд╕реНрдорд╛рд░реНрдЯ" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрдВрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ DHT11 рдЖрд░реНрджреНрд░рддрд╛ рдФрд░ рддрд╛рдкрдорд╛рди рд╕реЗрдВрд╕рд░ рднреА рд▓рд┐рдпрд╛! Dx.com рдкрд░ рдЖрджреЗрд╢ рджрд┐рдпрд╛ рдЧрдпрд╛ред
рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ рдЦреБрдж рдХрд┐рдпрд╛, рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рд╕реЗред
рдореИрдВрдиреЗ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП Arduino Uno рдмреЛрд░реНрдб рдХреЛ рдЪреБрдирд╛, рддрд╛рдХрд┐ рддрд╛рд░реЛрдВ, рдирдХрд╝реНрдХрд╝рд╛рд╢реА, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░, рдЖрджрд┐ рдкрд░ рд╕рдордп рдмрд░реНрдмрд╛рдж рди рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рддреБрд░рдВрдд рдпреЛрдЬрдирд╛ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝реЗрдВред рд╕реНрдХреНрд░реАрди рдиреЗ LKM-1638 рд▓рд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрдЬреНрдЬреНрд╡рд▓,
рдХреБрд░рдХреБрд░рд╛ рд╣реИ , рдЬрд┐рд╕рдореЗрдВ рдмрдбрд╝реА рдФрд░ рд╕рдордЭрдиреЗ рдпреЛрдЧреНрдп рд╕рдВрдЦреНрдпрд╛ рд╣реИред
рд░рд╛рд╕реНрддреЗ рдореЗрдВ, рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдмрдЯрди рдХрд╛рдо рдореЗрдВ рдЖрдПред
рд╕рдВрдмрдВрдзрд┐рдд рдмрдЯрди рдбрд┐рд╕реНрдкреНрд▓реЗ рджрдмрд╛рдиреЗ рдкрд░:
- рдХреБрд▓ рд▓рд╛рднред
- рдЕрдзрд┐рдХрддрдо рдЧреЛрдж рдХреА рдЧрддрд┐ред
- рдХрд┐рд▓реЛрдореАрдЯрд░ рдореЗрдВ рдФрд╕рдд рджреИрдирд┐рдХ рдорд╛рдЗрд▓реЗрдЬред
- рдФрд╕рдд рдЧрддрд┐ рдкреНрд░рддрд┐ рд▓реИрдкред
- рджрд┐рдиреЛрдВ рдореЗрдВ рдЕрдкрдЯрд╛рдЗрдо
- рд╕рд░реНрдХрд▓ рдХреА рдХреНрд░рд╛рдВрддрд┐рдпреЛрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛
- рд╡рд░реНрддрдорд╛рди рдЖрд░реНрджреНрд░рддрд╛ред
- рд╡рд░реНрддрдорд╛рди рддрд╛рдкрдорд╛рдиред
рдпрд╣ рд▓рдЧрднрдЧ рдлреЙрд░реНрдореВрд▓рд╛ 1 рдХреА рддрд░рд╣ рдирд┐рдХрд▓рд╛ред рдпрджрд┐ рдХрдИ рдЧрд┐рд▓рд╣рд░рд┐рдпрд╛рдБ рд╣реЛрддреАрдВ, рддреЛ рдЖрдк рдЕрдкрдиреЗ
рд▓рд╛рдареА- рдбрдВрдбреЗ рдХреА рд╡реНрдпрд╡рд╕реНрдерд╛ рдХрд░ рд╕рдХрддреЗ рдереЗред
рд╣рд╛рдВ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреЗ рдмрдЯрди рдХреЗ рдиреАрдЪреЗ рдмрдЯрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рдорд╛рддреНрд░рд╛ рдореЗрдВ рдПрд▓рдИрдбреА рдереЗред рдЙрдирдХреА рдорджрдж рд╕реЗ, рдЧрддрд┐ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред рдЗрд╕реЗ рдбрд┐рдЬрд┐рдЯрд▓ рдЯреИрдХреЛрдореАрдЯрд░ рдХреА рддрд░рд╣ рдмрдирд╛рдПрдВред рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд╕рд╛рд░: рдЕрдзрд┐рдХ рдбрд╛рдпреЛрдб рдЬрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд░реНрддрдорд╛рди рдЧрддрд┐ рдХреЗ рдХрд░реАрдм рдЕрдзрд┐рдХрддрдо, рдХрдо, рдиреНрдпреВрдирддрдо рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред
рдпрд╣ рд╕рдм рдПрдХ рд╕рд╛рде рд░рдЦреЛ, рддрд╛рд░реЛрдВ рд╕реЗ рдЬреБрдбрд╝рд╛ рдФрд░ рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред
рдореИрдВрдиреЗ
рдпрд╣рд╛рдВ рддреИрдпрд╛рд░ рд╕реНрдХреНрд░реАрди рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд▓реАред
рдПрдХ рддрд╛рдкрдорд╛рди рдФрд░ рдЖрд░реНрджреНрд░рддрд╛ рд╕реЗрдВрд╕рд░ рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдФрд░ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп
рдпрд╣рд╛рдВ рд╣реИрдВ ред
рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╕рд┐рд░ рд╕реЗ рд╕рдм рдХреБрдЫ рд▓реЗ рд▓рд┐рдпрд╛ред
рдЧрддрд┐ рдХрд╛рдЙрдВрдЯрд░ рдХрд╛ рддрд░реНрдХ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред
рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ рдкрд╣рд┐рдпрд╛ рдХреЗ рд╕рдмрд╕реЗ рдХрд░реАрдм рдмрд┐рдВрджреБ рдкрд░ рдкрд┐рдВрдЬрд░реЗ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдкрд╣рд┐рдпрд╛ рдкрд░ рдПрдХ рдЫреЛрдЯрд╛ рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдордЬрдмреВрдд neodymium рдЪреБрдВрдмрдХ рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдПрдХ рдкреБрд░рд╛рдиреЗ рдбреАрд╡реАрдбреА рдбреНрд░рд╛рдЗрд╡ рдХреЗ рд╕рд┐рд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рд╛ред
рдЬрдм рдкрд╣рд┐рдпрд╛ рдШреВрдорддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдкреВрд░реА рдХреНрд░рд╛рдВрддрд┐ рдХреЗ рд╕рд╛рде, рдЪреБрдВрдмрдХ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ рдХреА рдорд╛рдк рдХреА рддреНрд░рд┐рдЬреНрдпрд╛ рдореЗрдВ рдЪреБрдВрдмрдХреАрдп рдХреНрд╖реЗрддреНрд░ рдХреЛ рдмрджрд▓рддрд╛ рд╣реИ, рдмрд╛рдж рдХреА рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ 1 рд╕реЗ 0. рдмрджрд▓рддрд╛ рд╣реИред рдпрджрд┐ рд╕реЗрдВрд╕рд░ рд╡рд┐рдкрд░реАрдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдерд╛, рддреЛ рдорд╛рди 0 рд╕реЗ 1 рддрдХ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ (рдЬреЛ рд╕рдВрднрд╡рддрдГ рдЕрдзрд┐рдХ рд╕рд╣реА рд╣реИ ), рд▓реЗрдХрд┐рди рддрдм рд╕реЗрд▓ рдкрд░ рд╕реЗрдВрд╕рд░ рдЦрд░рд╛рдм рд░рд╣реЗрдЧрд╛ред
рд╕реЗрдВрд╕рд░ рдХрд╡рд░реЗрдЬ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЪреБрдВрдмрдХ рдХреА рджреЛ рдШрдЯрдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рдХрд╛ рд╕рдордп рдЕрдВрддрд░ рдкреВрд░реЗ рд╕рд░реНрдХрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд╣рд┐рдпрд╛ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдкрд░рд┐рдзрд┐ рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рд░реНрдХрд▓ рдХреА рдЧрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдбрд┐рд╕реНрдкреНрд▓реЗ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдореИрдВрдиреЗ рдХрд┐рдпрд╛ рдерд╛ред
рдпрд╣ рдпрд╣рд╛рдБ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕ рдорд╛рдк рдкрджреНрдзрддрд┐ рдореЗрдВ
рдмрд╛рд░реАрдХрд┐рдпрд╛рдБ рд╣реИрдВ :
- рдХреЗрд╡рд▓ рдкрд╣рд┐рдпреЗ рдХреА рдкреВрд░реНрдг рдХреНрд░рд╛рдВрддрд┐ рдорд╛рдиреА рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдПрдХ рдкреНрд░реЛрдЯреАрди рдиреЗ рд╕реНрдХреНрд░реЙрд▓ рдХрд┐рдпрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 0.9 рдореБрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдЙрд╕рдореЗрдВ рд╕реЗ рдХреВрдж рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдореЛрдбрд╝ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╛ рдЕрдЧрд░ рдЙрд╕рдиреЗ рдкрд╣рд┐рдпрд╛ 1.9, 2.9, 3.9 ... n.9 рдХреНрд░рд╛рдВрддрд┐рдпреЛрдВ рдХреЛ рдЪрд╛рд▓реВ рдХрд┐рдпрд╛ рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЗрд╕реЗ рдХрдИ рдмрд╛рд░ рджреЛрд╣рд░рд╛рдпрд╛, рддреЛ рдХреБрд▓ рд▓рд╛рдн рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдПрдХ рдмрдбрд╝реА рддреНрд░реБрдЯрд┐ рд╕рд╛рдордиреЗ рдЖрддреА рд╣реИ, рдФрд░ рдФрд╕рдд рдЧрддрд┐ рдХреА рдЧрдгрдирд╛ рдореЗрдВ рдЗрди рдЕрдзреВрд░рд╛ рд╣рд▓рдХреЛрдВ рдХреА рдЧрддрд┐ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
- рдЬрдм рдЧрд┐рд▓рд╣рд░реА рдШреБрдорд╛рд╡ рдХреЗ рд╡рд┐рдкрд░реАрдд рджрд┐рд╢рд╛ рдореЗрдВ рдЕрднреА рднреА рдШреВрдорддреА рд╣реБрдИ рдкрд╣рд┐рдпрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреА рд╣реИ, рддреЛ рдХрд╛рдЙрдВрдЯрд░-рдХрд░рдВрдЯ рджреНрд╡рд╛рд░рд╛, рдпрджрд┐ рдЙрд╕ рд╕рдордп рдЪреБрдВрдмрдХ рдмрд╕ рд╕реЗрдВрд╕рд░ рдХреЛ рдкрд╛рд░ рдХрд░ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЪреБрдВрдмрдХ рд╕реЗрдВрд╕рд░ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╡рд┐рдкрд░реАрдд рджрд┐рд╢рд╛ рдореЗрдВ рдЧреБрдЬрд░рддрд╛ рд╣реИ, рдФрд░ рдкрд╣рд┐рдпрд╛ рдХреА рдкреВрд░реА рдХреНрд░рд╛рдВрддрд┐ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░ рд░рд╣рд╛ рд╣реИред
рдЗрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдорд╛рдкрди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд╕реЗрдВрд╕рд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рд╛рдХрд░ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 4 рдФрд░ рд╕реНрдерд┐рддрд┐ рдХреЗ рд▓рд┐рдП
рдЙрдиреНрд╣реЗрдВ рд╕рд░реНрдХрд▓ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдХрд┐рдирд╛рд░реЛрдВ рдкрд░ (рдорд╛рдзреНрдпрдо рд╕реЗ? / 2 рд░реЗрдбрд┐рдпрди рдпрд╛ 90 рдбрд┐рдЧреНрд░реА)ред рддрдм рдЖрдк рди рдХреЗрд╡рд▓ рдПрдХ рдХреНрд░рд╛рдВрддрд┐ рдХреЗ рд╣рд░ рддрд┐рдорд╛рд╣реА рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдорд╛рдк рдХреА рд╕рдЯреАрдХрддрд╛ рдХреЛ рдмрдврд╝рд╛рдПрдЧрд╛, рдмрд▓реНрдХрд┐ рдкрд╣рд┐рдпрд╛ рдХреЗ рд░реЛрдЯреЗрд╢рди рдХреА рджрд┐рд╢рд╛ рднреА рдЬрд╛рдирддрд╛ рд╣реИ (рдпрд╛рдиреА, рдЬрд╣рд╛рдВ рдЧрд┐рд▓рд╣рд░реА рдЪрд▓рддреА рд╣реИ - рдШрд░ рдпрд╛ рдкрдбрд╝реЛрд╕реА рд╕реЗ рдШрд░)ред
рдХрд┐рд▓реЛрдореАрдЯрд░ / рдШрдВрдЯрд╛ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╡рд░реНрддрдорд╛рди рдкрд╣рд┐рдпрд╛ рдЧрддрд┐ред
рдЕрдЧрд▓рд╛ рдХреЛрдб рд╣реА рд╣реИред рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдХреЛрдб рдХрд╛рдлреА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрд╕реНрдХрд░рдг рдЕрдВрддрд┐рдо рдирд╣реАрдВ рд╣реИред рд╕рдордп рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдореИрдВ рдЕрднреА рднреА рдЗрд╕рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░реВрдВрдЧрд╛ред
рдкреВрд░рд╛ рдХреЛрдб/ *
рдкрд╣рд┐рдпрд╛ рдЧрддрд┐ рдХреА рдЧрд┐рдирддреА рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрдЪ
рдФрд░ 8-рдЕрдВрдХреАрдп рд╕реНрдХреНрд░реАрди рдкрд░ рдорд╛рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛
рдкреНрд▓рд╕ рдЙрддреНрдкрд╛рджрди рд╡рд░реНрддрдорд╛рди рддрд╛рдкрдорд╛рди рдФрд░ рдЖрд░реНрджреНрд░рддрд╛
рд░рд┐рд╣рд╛рдИ
* /
/ DHT11 рдбрд┐рдЬрд┐рдЯрд▓ рд╕реЗрдВрд╕рд░ рдХреЗ рд▓рд┐рдП ************** *****************
# рдбреЗрдлрд╝рд┐рди dht_dpin A2
рдмрд╛рдЗрдЯ bGlobalErr;
рдмрд╛рдЗрдЯ dht_dat [5];
/ DHT11 рдбрд┐рдЬрд┐рдЯрд▓ рд╕реЗрдВрд╕рд░ рдХреЗ рд▓рд┐рдП ************** **********
/ ******* рдбрд┐рдЬрд┐рдЯрд▓ рдореЛрдб рдХреЗ рд▓рд┐рдП рдЪрд░ ******************
// рдПрдХ 8-рдЦрдВрдб рдбрд┐рдЬрд┐рдЯрд▓ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдкреБрд╕реНрддрдХрд╛рд▓рдп
#include "TM1638.h"
// рдбреЗрдЯрд╛ рдкрд┐рди 5, рдШрдбрд╝реА рдкрд┐рди 4 рдФрд░ рд╕реНрдЯреНрд░реЛрдм рдкрд┐рди 6 рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдкрд┐рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ
TM1638 рдореЙрдбреНрдпреВрд▓ (5, 4, 6);
#define Red TM1638_COLOR_RED
#define рдЧреНрд░реАрди TM1638_COLOR_GREEN
#define Red_green TM1638_COLOR_GREEN + TM1638_COLOR_RED
/ ************ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЪрд░ рдХрд╛ рдЕрдВрдд ****************
/ рд╣реЙрд▓ рдХреЗ рд╕реЗрдВрд╕рд░ рдХреЗ рд▓рд┐рдП ********* рдЪрд░ ********************
// рдкрд╣рд┐рдпрд╛ рдкрд░рд┐рдзрд┐ рдореАрдЯрд░ рдореЗрдВ (рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)
рд╕реНрдерд┐рд░ рдирд╛рд╡ One_round = 0.91;
// рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкреЛрд░реНрдЯ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ
# рдбреЗрдлрд┐рди рд╣реЙрд▓_рдкреЛрд░реНрдЯ 2
#define Max_led_light_speed 8
// 10 рд╕реЗрдХрдВрдб рдХрд╛ рдЕрдВрддрд░рд╛рд▓, рдпрджрд┐ рдЕрдзрд┐рдХ рдкрд╣рд┐рдпрд╛ рдХреЛ рдХреЗрд╡рд▓ рд░реЛрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ,
// рдпрджрд┐ рдХрдо рд╣реИ, рддреЛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдардВрдбрд╛ рд╣реИ
#define Wait_interval 10000
// рдЕрдВрддрд░рд╛рд▓ рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рд╕реНрдХреНрд░реАрди рдмрдВрдж рд╣реЛ рдЬрд╛рддреА рд╣реИ
# рдбреЗрдлрд┐рди Do_sleeping_interval 60000
// рд╕реЗрдВрд╕рд░ рдореЛрдб рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рдореЛрдб рдореЗрдВ рд░реЛрдХреЗрдВ
# рдбреЗрдлрд┐рди Delay_in_work 5
// рд╕реНрд▓реАрдк рдкреЛрд▓ рдореЗрдВ рдард╣рд░рд╛рд╡
#define Delay_in_sleep 50
// рд╡реНрд╣реАрд▓ рд╕реНрдкреАрдб рдХрд╛рдЙрдВрдЯрд░
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмрд╛ Round_counter = 0;
// рдпрд╣рд╛рдВ рд╣рдо рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреА рдЧрдгрдирд╛ рдЧрддрд┐ рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдХрд░рддреЗ рд╣реИрдВ
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмреЗ рд╕рдордп рддрдХ Prev_time = 0;
// рдпрд╣рд╛рдВ рд╣рдо рдкрд┐рдЫрд▓реЗ рд╕рдордп рдХреЛ рдирд┐рд░рдВрддрд░ рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рд▓рд┐рдП рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмрд╛ Prev_time_mon = 0;
// рдпрд╣рд╛рдБ рд╢реВрдиреНрдп рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдФрд░ рд╕реНрдХреНрд░реАрди рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдЖрджрд┐ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдХреА рдирд┐рдЧрд░рд╛рдиреА рд╣реИред
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмреЗ рд╕рдордп рддрдХ_рд╕реНрдкреИрди_рдорди = 0;
// рдкрд┐рдЫрд▓рд╛ рд╕реЗрдВрд╕рд░ рдореВрд▓реНрдп
рдмрд╛рдЗрдЯ рдкреНрд░реАрд╡реИрд▓реНрдпреВ = 1;
// рд╡рд░реНрддрдорд╛рди рдкрд╣рд┐рдпрд╛ рдЧрддрд┐ рд╕реЗрдореА / рд╕реА
рдбрдмрд▓ Curr_speed = 0;
// рдЕрдзрд┐рдХрддрдо рдкрд╣рд┐рдпрд╛ рдЧрддрд┐ рдПрдо / рдПрд╕
рдбрдмрд▓ рдореИрдХреНрд╕_рд╕реНрдкреАрдб = 0;
/ / рдмрдЯрди рдкреНрд░реЗрд╕ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореАрдЯрд░ рдореЗрдВ рдХреБрд▓ рд▓рд╛рдн
рдбрдмрд▓ Total_run = 0;
// рдФрд╕рдд рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╣рд▓рдХреЛрдВ рдХреА рдЧрддрд┐ рдХреЛ рдпрд╣рд╛рдВ рд░рдЦреЗрдВ
рдбрдмрд▓ All_speeds = 0;
// рдХрд┐рддрдиреЗ рджрд┐рди рд╣реЛ рдЧрдП
double Day_passed = 0;
// рд╕рд┐рд╕реНрдЯрдо рд╕реНрдЯреЗрдЯ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд░
// 0- рдКрд░реНрдЬрд╛ рдХреА рдмрдЪрдд рдФрд░ рд╕реНрдЯреИрдВрдбрдмрд╛рдп рдореЛрдб рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо - рдкрд╣рд┐рдпрд╛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╢рд╛рдВрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ - рд╕реНрдХреНрд░реАрди рдмрдВрдж рд╣реИ
// 1- рдкрд╣рд┐рдпрд╛ рдмрд╕ рдХреНрд░реБрдЗрдЯрд╕реНрдЯреНрд╕рд╕рд╛ рдХреЛ рд░реЛрдХ рджрд┐рдпрд╛
// 2- рдХреНрд░реБрдЗрдЯрд╕реНрдЯреНрд╕рд╛ рд╡реНрд╣реАрд▓
рдмрд╛рдЗрдЯ Sys_status = 0;
/ *************** рд╣реЙрд▓ рдХреЗ рд▓рд┐рдП рдЪрд░ рдХрд╛ рдЕрдВрдд ******************
рд╢реВрдиреНрдп рд╕реЗрдЯрдЕрдк () {
рд╕реАрд░рд┐рдпрд▓.рдмреЗрдЧрд┐рди (9600);
InitDHT (); // рдЖрд░рдВрднреАрдХрд░рдг DHT11 рд╕реЗрдВрд╕рд░
Serial.println ("рднрд╛рдЧреЛ!");
// рдбрд┐рд╕реНрдкреНрд▓реЗ рдЪрд╛рд▓реВ рдХрд░реЗрдВ, рдЙрд╕ рдкрд░ 0 рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
mod.setDisplayToString ("0.", 0, 7);
рджреЗрд░реА (1000);
}
рд╢реВрдиреНрдп рд▓реВрдк () {
рдЕрдЧрд░ (Sys_status == 0)
{
// рдпрджрд┐ рд╕реНрд▓реАрдк рдореЛрдб, рддреЛ рдХрдо рдмрд╛рд░ рд╣рдо рд╕реЗрдВрд╕рд░ рд╕реЗ рдкреВрдЫрддрд╛рдЫ рдХрд░рддреЗ рд╣реИрдВ
рджреЗрд░реА (Delay_in_sleep);
}
рдЕрдиреНрдпрдерд╛
{
// рдпрджрд┐ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рдореЛрдб, рд╣рдо рдЕрдХреНрд╕рд░ рд╕реЗрдВрд╕рд░ рд╕реЗ рдкреВрдЫрддрд╛рдЫ рдХрд░рддреЗ рд╣реИрдВ
рджреЗрд░реА (Delay_in_work);
}
/ ************** рдмрдЯрди рдХреА рд╢реБрд░реБрдЖрдд *************************** ******* /
// рдмрдЯрди рд╕реБрдиреЗрдВ
рдмрд╛рдЗрдЯ рдХреАрдЬрд╝ = рдореЙрдбреНрдпреВрд▓.рдЧреЗрдЯрдмрдЯрди ();
// рдпрджрд┐ рдмрдЯрди рджрдмрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╕рдордп рд╕рдорд╛рдкреНрддрд┐ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╣реИ, рддреЛ рдкреНрд░рджрд░реНрд╢рди рдЪрд╛рд▓реВ рдХрд░реЗрдВ
рдЕрдЧрд░ (рдЪрд╛рдмрд┐рдпрд╛рдБ! = 0 && Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕рдкреНрд▓реЗ (рд╕рдЪ, 7);
}
рд╕реНрд╡рд┐рдЪ (рдХреБрдВрдЬреА) {
// рдЕрдЧрд░ рд╕рдмрд╕реЗ рдмрд╛рдИрдВ рдУрд░ рджрдмрд╛рдпрд╛ рдЧрдпрд╛
рдорд╛рдорд▓рд╛ 0b00000001:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 0);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рдХрд┐рд▓реЛрдореАрдЯрд░ рдореЗрдВ рдХреБрд▓ рд▓рд╛рдн рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
Total_run = Round_counter * (рдбрдмрд▓) One_round / 1000.00;
DoubleToDisp (Total_run);
//module.setDisplayToDecNumber(Total_run, 1, false);
рджреЗрд░реА (1000);
// рдпрджрд┐ рд╕реНрдерд┐рддрд┐ рд╢реВрдиреНрдп рд╣реИ рддреЛ рд╕реНрдХреНрд░реАрди рдмрдВрдж рдХрд░ рджреЗрдВ
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдЕрдЧрд░ рджреВрд╕рд░рд╛ рдмрд╛рдпрд╛рдБ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдорд╛рдорд▓рд╛ 0b00000010:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
mod.setLED (рд▓рд╛рд▓, 1);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рдЕрдзрд┐рдХрддрдо рдЧрддрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
DoubleToDisp (Max_speed);
//module.setDisplayToDecNumber(Max_speed, 1, false);
рджреЗрд░реА (1000);
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдЕрдЧрд░ 3 рдмрд╛рдпрд╛рдВ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдорд╛рдорд▓рд╛ 0b00000100:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 2);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рд╣рдореЗрдВ рд╢реБрд░реВ рд╣реБрдП рдХрд┐рддрдиреЗ рджрд┐рди рдмреАрдд рдЪреБрдХреЗ рд╣реИрдВ
Day_passed = millis () / 86400000.00;
// рдЕрдЧрд░ рдкреВрд░рд╛ рджрд┐рди рдмреАрдд рдЧрдпрд╛
рдЕрдЧрд░ (Day_passed> 1)
{
// рдХрд┐рд▓реЛрдореАрдЯрд░ рдореЗрдВ рдХреБрд▓ рд▓рд╛рдн рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ
Total_run = Round_counter * (рдбрдмрд▓) One_round / 1000.00;
// рджреИрдирд┐рдХ рдФрд╕рдд рд░рди рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ
DoubleToDisp (Total_run / Day_passed);
рджреЗрд░реА (1000);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
}
рдФрд░ // рдЕрдЧрд░ рдкреВрд░рд╛ рджрд┐рди рдЕрднреА рддрдХ рдирд╣реАрдВ рдЧреБрдЬрд░рд╛
{
mod.setDisplayToString ("0", 0);
}
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдЕрдЧрд░ 4 рдмрд╛ рдХреЛ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдорд╛рдорд▓рд╛ 0b00001000:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
mod.setLED (рд▓рд╛рд▓, 3);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рдкреНрд░рддрд┐ рд▓реИрдк рдФрд╕рдд рдЧрддрд┐ рдХреЛ рдЧрд┐рдиреЗрдВ рдФрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ :)
DoubleToDisp (All_speeds / Round_counter);
рджреЗрд░реА (1000);
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдпрджрд┐ 5 рд╡реАрдВ рдмрд╛рдИрдВ рдУрд░ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдорд╛рдорд▓рд╛ 0b00010000:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 4);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рд╣рдореЗрдВ рд╢реБрд░реВ рд╣реБрдП рдХрд┐рддрдиреЗ рджрд┐рди рдмреАрдд рдЪреБрдХреЗ рд╣реИрдВ
Day_passed = millis () / 86400000.00;
DoubleToDisp (Day_passed);
рджреЗрд░реА (1000);
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдЕрдЧрд░ рдЫрдард╛ рджрдмрд╛рдпрд╛ рдЧрдпрд╛
рдорд╛рдорд▓рд╛ 0b00100000:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 4);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рд╣рд▓рдХреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ
рдореЙрдбреНрдпреВрд▓ .setDisplayToDecNumber (Round_counter, 0, false);
рджреЗрд░реА (1000);
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдЕрдЧрд░ 1 рдЕрдзрд┐рдХрд╛рд░ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдорд╛рдорд▓рд╛ 0b10000000:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 7);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рд╡рд░реНрддрдорд╛рди рдЖрд░реНрджреНрд░рддрд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
ReadDHT (); // рд╕реЗрдВрд╕рд░ рдкрдврд╝реЗрдВ
// рдЕрдЧрд░ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ
рдЕрдЧрд░ (bGlobalErr == 0)
{
рдмрд╛рдЗрдЯ рдЖрд░реНрджреНрд░рддрд╛ = dht_dat [0];
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдбрд┐рд╕рдкреНрд▓реЗрдЯреАрдУрдбреЗрдХрдирдВрдмрд░ (рдЖрд░реНрджреНрд░рддрд╛, 0, рдЧрд▓рдд);
// DoubleToDisp (рдЖрд░реНрджреНрд░рддрд╛);
}
рджреЗрд░реА (1000);
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
// рдпрджрд┐ рджреВрд╕рд░рд╛ рдЕрдзрд┐рдХрд╛рд░ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдорд╛рдорд▓рд╛ 0b01000000:
// рдЙрдкрдпреБрдХреНрдд рдбрд╛рдпреЛрдб рдХреЗ рд╕рд╛рде рдмреНрд▓рд┐рдВрдХ рдХрд░реЗрдВ, рдмрд╛рдХреА рдХреЛ рдмреБрдЭрд╛ рджреЗрдВ
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 6);
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
// рд╡рд░реНрддрдорд╛рди рддрд╛рдкрдорд╛рди рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ
ReadDHT (); // рд╕реЗрдВрд╕рд░ рдкрдврд╝реЗрдВ
// рдЕрдЧрд░ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИ
рдЕрдЧрд░ (bGlobalErr == 0)
{
рдмрд╛рдЗрдЯ рддрд╛рдкрдорд╛рди = dht_dat [2];
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдбрд╛рдЗрдкреНрд▓реЗрдЯреАрдУрдбреЗрдХрдирдВрдмрд░ (рддрд╛рдкрдорд╛рди, 0, рдЧрд▓рдд);
}
рджреЗрд░реА (1000);
рдЕрдЧрд░ (Sys_status == 0)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
рддреЛрдбрд╝;
}
// рдмрдЯрди рдХрд╛ рдЕрдВрдд
/ **************** рдмрдЯрдиреЛрдВ рдХрд╛ рдЕрдВрдд *************************** ******* /
/ ***************** рдпрд╣рд╛рдБ рдЬрд╛рдирдХрд╛рд░реА рдкрдврд╝рдиреЗ рдХрд╛ рдкреВрд░рд╛ рддрд░реНрдХ рд╣реИ *************************
// read data - рд╣реЙрд▓ рд╕реЗрдВрд╕рд░ рдХреЛ 3 рдбрд┐рдЬрд┐рдЯрд▓ рдкреЛрд░реНрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
int SensValue = digitalRead (Hall_port);
// рдпрджрд┐ рд╕реЗрдВрд╕рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓ рдЧрдИ рд╣реИ
рдЕрдЧрд░ (SensValue! = PrevValue)
{
рдкреНрд░реАрд╡реИрд▓реНрдпреВ = рд╕реЗрдВрд╕рд░рд╡реИрд▓реНрдпреВ;
// рдпрджрд┐ рд╕реЗрдВрд╕рд░ 0 рджреЗрддрд╛ рд╣реИ рдпрд╛рдиреАред рдЪреБрдВрдмрдХ рдпрд╣рд╛рдБ рд╣реИ
рдЕрдЧрд░ (SensValue)
{
Sys_status = 2;
// рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ рдпрджрд┐ рд╡рд┐рд░рд╛рдо рд╕реНрд▓рд┐рдк рдЕрдВрддрд░рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд▓рдВрдмрд╛ рдерд╛ рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╣реА рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рд╣реИ
рдЕрдЧрд░ (time_span_mon> Do_sleeping_interval)
{
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕рдкреНрд▓реЗ (рд╕рдЪ, 7);
}
// рдПрдХ рдХрд╛рдЙрдВрдЯрд░ рдЬреЛрдбрд╝реЗрдВ
рд░рд╛рдЙрдВрдб_рдХрд╛рдЙрдВрдЯрд░ ++;
// рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕рдордп рд▓реЗ рд▓реЛ
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмреА time_now = millis ();
// рд╡рд░реНрддрдорд╛рди рдФрд░ рдкрд┐рдЫрд▓реЗ рдХреЗ рдмреАрдЪ рдПрдордПрд╕ рдореЗрдВ рд╕рдордп рдЕрдВрддрд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмреЗ time_span = time_now - Prev_time;
// рд╡рд░реНрддрдорд╛рди рдкрд┐рдЫрд▓реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦреЗрдВ
Prev_time = time_now;
// рдпрджрд┐ рдард╣рд░рд╛рд╡ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдХрдо рд╣реИ, рддреЛ рд╣рдо рдкрд╣рдЪрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреНрд░реБрдЯрд┐рдЯрд╕реНрдЯрд╛ рд╡реНрд╣реАрд▓
рдЕрдЧрд░ (time_span <Wait_interval)
{
рдЕрдЧрд░ (Curr_speed> 10.00)
{
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
}
Curr_speed = One_round / time_span * 1000 * 3.6; // рдХрд┐рд▓реЛрдореАрдЯрд░ рдкреНрд░рддрд┐ рдШрдВрдЯрд╛ рд╣рдореЗрдВ рдЧрддрд┐ рдорд┐рд▓рддреА рд╣реИ
рдФрд╕рдд рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП All_speeds + = Curr_speed; //
// рдЕрдзрд┐рдХрддрдо рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
рдЕрдЧрд░ (Curr_speed> Max_speed)
Max_speed = Curr_speed;
рдмрд╛рдЗрдЯ led_speed = рдорд╛рдирдЪрд┐рддреНрд░ (Curr_speed, 0, Max_led_light_speed, 0, 7);
// рдЖрдЗрд╕ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдкрд░ рдХреЙрд▓ рдХрд░реЗрдВ
LED_speed_light (led_speed);
// рдбрд┐рдмрдЧ
// Serial.print ("Round_counter =");
//Serial.println(Round_counter);
//Serial.print ("cur_speed (рдХрд┐рдореА / рдШрдВрдЯрд╛) =");
//Serial.println(Curr_speed, 4);
// рд╡рд░реНрддрдорд╛рди рдЧрддрд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
DoubleToDisp (Curr_speed);
}
// рдпрджрд┐ рдард╣рд░рд╛рд╡ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкрд╣рд┐рдпрд╛ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдЦрдбрд╝рд╛ рдерд╛
// рдФрд░ рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╢реБрд░реВ рдХрд░реЗрдВ
// рдкрд╣рд▓реЗ рдЕрдВрддрд░ рдХреЛ рдЧрд┐рдиреЗрдВ
рдЕрдиреНрдпрдерд╛
{
Prev_time = time_now;
// рдбрд┐рдмрдЧ
//Serial.print ("time_span рд░реАрд╕реЗрдЯ");
}
}
}
рдФрд░ // рдпрджрд┐ рд╕реЗрдВрд╕рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рдмрджрд▓реА рд╣реИ
{
// рд╡рд░реНрддрдорд╛рди рд╕рдордп рд▓реЗ рд▓реЛ
рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рд▓рдВрдмреА time_now = millis ();
// рд╡рд░реНрддрдорд╛рди рдФрд░ рдПрдордПрд╕ рдХреЗ рдмреАрдЪ рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдЬреЛ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ
time_span_mon = time_now - Prev_time;
// рдпрджрд┐ рд╕реНрдкрд░реНрд╢ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░рд╛рд▓ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкрд╣рд┐рдпрд╛
// рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдкреНрд░рд┐рдВрдЯ 0 (рдЕрдВрддрд░рд╛рд▓ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)
рдЕрдЧрд░ (time_span_mon> Wait_interval && Sys_status! = 1)
{
Sys_status = 1;
Curr_speed = 0;
рдореЙрдбреНрдпреВрд▓ .clearDisplay ();
рдореЙрдбреНрдпреВрд▓ .setDisplayDigit (0, 7, рд╕рдЪ);
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
}
// рдпрджрд┐ рдард╣рд░рд╛рд╡ 60 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рд╕реНрдХреНрд░реАрди рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдВ
// рдпрджрд┐ рд╕реНрдкрд░реНрд╢ рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░рд╛рд▓ 10 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкрд╣рд┐рдпрд╛
// рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рдкреНрд░рд┐рдВрдЯ 0 (рдЕрдВрддрд░рд╛рд▓ рд╕реНрдкрд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)
if (time_span_mon> Do_sleeping_interval && Sys_status! = 0
{
Sys_status = 0;
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯрдЕрдкрдбрд┐рд╕реНрдкреНрд▓реЗ (рдЧрд▓рдд, 0);
}
}
}
рдкрд╣рд┐рдпрд╛ рдЧрддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ /// рдбрд╛рдпреЛрдб рд░реЛрд╢рдиреА
// рдлрд╝рдВрдХреНрд╢рди
рд╢реВрдиреНрдп Led_speed_light (рдмрд╛рдЗрдЯ led_speed)
{
рд╡рд┐рд╡рд╢ (led_speed, 0, 7);
рд╕реНрд╡рд┐рдЪ (led_speed) {
рдорд╛рдорд▓рд╛ 0:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рджреЗрд░реА (100);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, 0);
рддреЛрдбрд╝;
рдХреЗрд╕ 1:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рджреЗрд░реА (100);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, 1);
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ 2:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 2);
рджреЗрд░реА (100);
for (int i = 2; рдореИрдВ> 0; рдореИрдВ -) {
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, i);
рджреЗрд░реА (50);
}
рддреЛрдбрд╝;
рдХреЗрд╕ 3:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 2);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 3);
рджреЗрд░реА (100);
for (int i = 3; i> 0; i -) {
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, i);
рджреЗрд░реА (50);
}
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ 4:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 2);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 3);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 4);
рджреЗрд░реА (100);
for (int i = 4; i> 0; i -) {
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, i);
рджреЗрд░реА (50);
}
рддреЛрдбрд╝;
рдХреЗрд╕ 5:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 2);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 3);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 4);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 5);
рджреЗрд░реА (100);
(int i = 5; i> 0; i -) {
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, i);
рджреЗрд░реА (50);
}
рддреЛрдбрд╝;
рдХреЗрд╕ 6:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 2);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 3);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 4);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 5);
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 6);
рджреЗрд░реА (100);
for (int i = 6; рдореИрдВ> 0; рдореИрдВ -) {
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, i);
рджреЗрд░реА (50);
}
рддреЛрдбрд╝;
рдорд╛рдорд▓рд╛ 7:
рдореЙрдбреНрдпреВрд▓ .setLEDs (0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 0);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 1);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 2);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 3);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд╣рд░рд╛, 4);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 5);
рдореЙрдбреНрдпреВрд▓.рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 6);
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (рд▓рд╛рд▓, 7);
рджреЗрд░реА (100);
for (int i = 7; рдореИрдВ> 0; рдореИрдВ -) {
рдореЙрдбреНрдпреВрд▓ .рд╕реЗрдЯреЗрдб (0, i);
рджреЗрд░реА (50);
}
рддреЛрдбрд╝;
}
}
// рдлрд╝рдВрдХреНрд╢рди LKM1638 рдЖрдВрд╢рд┐рдХ рдорд╛рди (рд╕рдЯреАрдХрддрд╛ - 2 рд╡рд░реНрдг) рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ
рд╢реВрдиреНрдп DoubleToDisp (рдбрдмрд▓ рд╕рдВрдЦреНрдпрд╛)
{
double mult_num = (double) num * 100.00;
long int_mult_num = (long) mult_num;
рд╕реНрдЯреНрд░рд┐рдВрдЧ string_mult_num = рд╕реНрдЯреНрд░рд┐рдВрдЧ (int_mult_num);
int рд▓рдВрдмрд╛рдИ = string_mult_num.length ();
char str [рд▓рдВрдмрд╛рдИ + 1];
string_mult_num.toCharArray (str, рд▓рдВрдмрд╛рдИ + 1);
// рдпрджрд┐ рд╕рдВрдЦреНрдпрд╛ 1 рд╕реЗ рдХрдо рдереА, рддреЛ рд╕рд╣реА рдЕрдВрддрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдореВрд╣рд┐рдХ рдлрд╛рд░реНрдо рдЧреИрдЧ
рдпрджрд┐ (рд╕рдВрдЦреНрдпрд╛ <1)
{
mod.setDisplayDigit (0, 5, рд╕рддреНрдп);
mod.setDisplayDigit (str [0], 6, рдЧрд▓рдд);
mod.setDisplayDigit (str [1], 7, рдЧрд▓рдд);
}
рдФрд░ // рдпрджрд┐ 1 рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ рддреЛ рдЖрдЙрдЯрдкреБрдЯ
{
for (int i = 0; рдореИрдВ <рд▓рдВрдмрд╛рдИ; i ++)
{
рдЕрдЧрд░ (i == рд▓рдВрдмрд╛рдИ - 3) {
mod.setDisplayDigit (str [i], i + 8-length, true);
}
рдЕрдиреНрдпрдерд╛
{
mod.setDisplayDigit (str [i], i + 8-length, false);
}
}
}
}
/ DHT11 рдХреЗ рд▓рд┐рдП ****** рд╕реБрд╡рд┐рдзрд╛рдПрдБ *** /
рд╢реВрдиреНрдп InitDHT () {
рдкрд┐рдирдореЛрдб (dht_dpin, OUTPUT);
digitalWrite (dht_dpin, HIGH);
}
рд╢реВрдиреНрдп ReadDHT () {
bGlobalErr = 0;
рдмрд╛рдЗрдЯ dht_in;
рдмрд╛рдЗрдЯ рдореИрдВ;
digitalWrite (dht_dpin, LOW);
рджреЗрд░реА (20);
digitalWrite (dht_dpin, HIGH);
рджреЗрд░реАрдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб (40);
pinMode (dht_dpin, INPUT);
// рджреЗрд░реАрдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб (40);
dht_in = digitalRead (dht_dpin);
рдЕрдЧрд░ (dht_in) {
bGlobalErr = 1;
рд╡рд╛рдкрд╕реА;
}
рджреЗрд░реАрдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб (80);
dht_in = digitalRead (dht_dpin);
рдЕрдЧрд░ (dht_in) {
bGlobalErr = 2;
рд╡рд╛рдкрд╕реА;
}
рджреЗрд░реАрдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб (80);
рдХреЗ рд▓рд┐рдП (i = 0; рдореИрдВ <5; рдореИрдВ ++)
dht_dat [i] = read_dht_dat ();
рдкрд┐рдирдореЛрдб (dht_dpin, OUTPUT);
digitalWrite (dht_dpin, HIGH);
рдмрд╛рдЗрдЯ dht_check_sum =
dht_dat [0] + dht_dat [1] + dht_dat [2] + dht_dat [3];
рдЕрдЧрд░ (dht_dat [4]! = dht_check_sum)
{
bGlobalErr = 3;
}
};
рдмрд╛рдЗрдЯ read_dht_dat () {
рдмрд╛рдЗрдЯ i = 0;
рдмрд╛рдЗрдЯ рдкрд░рд┐рдгрд╛рдо = 0;
рдХреЗ рд▓рд┐рдП (i = 0; рдореИрдВ <8; рдореИрдВ ++) {
рдЬрдмрдХрд┐ (digitalRead (dht_dpin) == рдХрдо);
рджреЗрд░реАрдорд╛рдЗрдХреНрд░реЛрд╕реЗрдХрдВрдб (30);
рдЕрдЧрд░ (digitalRead (dht_dpin) == рд╣рд╛рдИ)
рдкрд░рд┐рдгрд╛рдо | = (1 << (7-i));
рдЬрдмрдХрд┐ (digitalRead (dht_dpin) == High);
}
рд╡рд╛рдкрд╕реА рдкрд░рд┐рдгрд╛рдо;
}
DHT11 **** рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ / ****** рдЕрдВрдд
рдЕрдЧрд▓рд╛, рдкрд░рд┐рдгрд╛рдореА рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡реАрдбрд┐рдпреЛред
рдкрд░рд┐рдгрд╛рдо, рджрд┐рд▓рдЪрд╕реНрдк рддрдереНрдп рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖
- рд╕реБрдмрд╣ рд╕реЗ, рдЧрд┐рд▓рд╣рд░реА рдЖрдорддреМрд░ рдкрд░ ~ 5-6 рдХрд┐рдореА / рдШрдВрдЯрд╛ рдХреА рдФрд╕рдд рдЧрддрд┐ рд╕реЗ рдЪрд▓рддреА рд╣реИ (рдЬрд╛рд╣рд┐рд░ рд╣реИ, рднреЛрдЬрди рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рдФрд░ рдмреЗрд╣рддрд░ рд╣рд┐рд╕реНрд╕реЗрджрд╛рд░реА)ред
- рдПрдХ рдЕрдирд┐рд╡рд╛рд░реНрдп рджрд┐рди рдХреА рдиреАрдВрдж рдФрд░ рдЙрдЪреНрдЪ рдХреИрд▓реЛрд░реА рдирдЯреНрд╕ рдЦрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЧрд┐рд▓рд╣рд░реА рдХреА рдЧрддрд┐ 3-4 рдХрд┐рдореА / рдШрдВрдЯрд╛ рд╣реЛ рдЬрд╛рддреА рд╣реИ (рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднреЛрдЬрди рдорд┐рд▓ рдЧрдпрд╛ рд╣реИ, рдореИрдВрдиреЗ рдЬреАрд╡рди рдореЗрдВ рд╕рдм рдХреБрдЫ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ)ред
- рдкрд╛рд╕ рдХреЗ рд╡реИрдХреНрдпреВрдо рдХреНрд▓реАрдирд░ рдХреЗ рд╕рд╛рде, рдЧрддрд┐
рдЕрдЪрд╛рдирдХ 12-14 рдХрд┐рдореА / рдШрдВрдЯрд╛ рддрдХ рдмрдврд╝ рдЬрд╛рддреА рд╣реИ! рдпрджреНрдпрдкрд┐ рдореИрдВ 30 рдХрд┐рдореА / рдШрдВрдЯрд╛ рдкрд░ рдЧрд┐рд▓рд╣рд░реА рдХреА рдЕрдзрд┐рдХрддрдо рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рджреЗрд╢реА рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдкрд░ рдХрд╣реАрдВ рд╕реЗ рдорд┐рд▓рд╛, рдореИрдВ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рд╕реЗ рдШреЛрд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рд╕рдм рдЭреВрда рд╣реИред рдЦреИрд░, рдпрд╛ рдореЗрд░реА рдЧрд┐рд▓рд╣рд░реА рдирд╕реНрд▓реЛрдВ рдХреА рдирд╕реНрд▓ (рдЕрдлреНрд░реАрдХреА рдУрд▓рдВрдкрд┐рдХ) рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИред - рдЕрдзрд┐рдХрддрдо рдЧреЛрдж рдХреА рдЧрддрд┐ 18 рдХрд┐рдореА / рдШрдВрдЯрд╛ рд╣реИред
- рджреЛ рдорд╣реАрдиреЗ рдореЗрдВ рдорд╛рдкреА рдЧрдИ рдЧрд┐рд▓рд╣рд░реА рдХреА рдФрд╕рдд рджреИрдирд┐рдХ рд░рди ~ 15 рдХрд┐рд▓реЛрдореАрдЯрд░ рд╣реИред
рдЗрди рдЖрдВрдХрдбрд╝реЛрдВ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓
рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ
рд▓рд┐рдП рд╡реНрдпрд╡рд╣рд╛рд░реНрдпрддрд╛ рдкреИрджрд╛ рдХрд░рдиреЗ рдХреЗ
рд▓рд┐рдП рд╡реНрдпрд╡рд╣рд╛рд░реНрдпрддрд╛ рдЕрдзреНрдпрдпрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ - рд╕рд░реНрджрд┐рдпреЛрдВ рдореЗрдВ рдЧрд┐рд▓рд╣рд░реА рдХреЗ рдШрд░ рдХреЛ рдЧрд░реНрдо рдХрд░рдиреЗ рдпрд╛ рдЕрдВрдзреЗрд░реЗ рдореЗрдВ рдкреНрд░рдХрд╛рд╢ рдХреЗ рд▓рд┐рдП рдорд┐рдиреА рдкрд╛рд╡рд░ рдкреНрд▓рд╛рдВрдЯред рдпрд╛ рдПрдХ рд╕реНрдХреВрд▓ рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рдЬреНрдЮрд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдПред