1602 рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рд╕рд░рд▓ Arduino рдЦреЗрд▓ - рднрд╛рдЧ # 1


рдпрд╣реА рд╣рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИ, рдареАрдХ рд╣реИ, рд╡рд╣ рдЕрднреА рднреА рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЙрд╕ рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рджреБрд╖реНрдЯ рдХреИрдХреНрдЯрд┐ рдХреЛ рдХреИрд╕реЗ рдХреВрджрдирд╛, рдЪрд▓рдирд╛ рдФрд░ рдкреАрдЯрдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕ рдХрджрдо рд╕реЗ рдХрджрдо рдЙрдард╛рдПрдВрдЧреЗ :)

рднрд╛рдЧ # 1 рдореВрд▓ рдмрд╛рддреЗрдВ


рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдПрдХ рдЖрд░реНрдбрд┐рдиреЛ, "рдПрдХ рдЦрд┐рд▓реМрдирд╛ рддреЛ" рдХрд╛ рдЖрджреЗрд╢ рджрд┐рдпрд╛, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛, рдПрдХ рдЫреЛрдЯреА рдХрд┐рдЯ (рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП), рдЬрд┐рд╕реЗ рдмрд╛рдж рдореЗрдВ рдореБрдЭреЗ рдкрдЫрддрд╛рд╡рд╛ рд╣реБрдЖред рдореИрдВ рдХреНрд╖рдорддрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЕрддрд┐рд░рд┐рдХреНрдд рдореЙрдбреНрдпреВрд▓ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рдерд╛, рдореБрдЭреЗ рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд▓рд┐рдП рдЖрд░реНрдбрд┐рдиреЛ рдХреЛ рдХрд╛рдЯ рджрд┐рдпрд╛ рдФрд░ рджреЗрдЦрд╛ рдХрд┐ рд╕реЗрдВрд╕рд░ рдиреЗ рдЕрдкрдирд╛ рдХрд╛рдо рдХреИрд╕реЗ рдХрд┐рдпрд╛, рдлрд┐рд░ рдПрдХ рдСрдбрд┐рдпреЛ рдЕрд▓рд╛рд░реНрдо рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ (рдХрд┐рдЯ рд╕реЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕реНрдХреНрд╡реАрдХрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ), рдЗрд╕рд▓рд┐рдП рдХреБрддреНрддреЛрдВ рдХреЛ рдЬрд╝реЛрд░ рд╕реЗ рдпрд╛ рдЬрд╝реЛрд░ рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ред рдЕрдЪрд╛рдирдХ рднреМрдВрдХрдирд╛ :) рдФрд░ рдлрд┐рд░ рдореЗрд░реЗ рд╣рд╛рде рдкреНрд░рджрд░реНрд╢рди 1602 рддрдХ рдкрд╣реБрдВрдЪ рдЧрдПред "рд╣рдореНрдо ... рдпрд╣ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рджрд░реНрд╢рди рд╣реИ," рдореИрдВрдиреЗ рд╕реЛрдЪрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдирд┐рд░рд╛рд╢рд╛ рд╣реБрдИ рдХрд┐ рд╡рд╣ рдЖрд░реНрдбрд┐рдиреЛ рдкрд░ рд▓рдЧрднрдЧ рд╕рднреА рд╕рдВрдкрд░реНрдХреЛрдВ рдХрд╛ рд▓рдЧрднрдЧ рдЖрдзрд╛ рдЦрд╛рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдЕрдлрд╡рд╛рд╣ рдлреИрд▓рд╛ рджреА рдФрд░ "i2C" рдХрд┐рдЯ рдореЗрдВ рдПрдХ рдЕрдЬреАрдм рдмреЛрд░реНрдб рдорд┐рд▓рд╛ рдФрд░ рдпрд╣ рдмрд╣реБрдд рд╣реА рд╕рдВрджрд┐рдЧреНрдз рдерд╛! рдХрд┐ рдЫреЗрдж рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдкрд┐рдВрдк рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рдореЗрд▓ рдЦрд╛рддреА рд╣реИред "рд╣рдореНрдо, рдЖрд╕рд╛рди рдирд╣реАрдВ ..." рдореИрдВрдиреЗ рд╕реЛрдЪрд╛, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓рд╛рдк рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж, рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВрдиреЗ рд╕рд╣реА рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрдм рдореЗрд░рд╛ рдкреНрд░рджрд░реНрд╢рди рдХреЗрд╡рд▓ рджреЛ рдЪреИрдирд▓ рдЦрд╛рддрд╛ рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдерд╛ рдФрд░ рд╡реЗ рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рдереЗред рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╢рд╛рдмреНрджрд┐рдХ рд╣реИ, рд▓реЗрдХрд┐рди рд▓реЛ рдФрд░ рдирд┐рд╣рд╛рд░рдирд╛! рдпрд╣ 5x8 рдкрд┐рдХреНрд╕рд▓ рдХреЗ рдЖрдпрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде 8 рдирдП рдкрд╛рддреНрд░реЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓ рд╕рдХрддрд╛ рд╣реИред рддреЛ рдареАрдХ рд╣реИ, рдЪрд▓реЛ рдПрдХ рдЦреЗрд▓ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ! рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдЦреЗрд▓ рд╣реЛрдЧрд╛, рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рдбрд╛рдпрдирд╛рд╕реЛрд░ рдЧрд╛рд░реНрдб рдХреНрд░реЛрдо рдХреА рддрд░рд╣ рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХреБрдЫ рдЪрд┐рдкреНрд╕ рдХреЗ рд╕рд╛рде, рдЗрд╕рд▓рд┐рдП рдмреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рд╣реЛрдЧрд╛ :) рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЕрднреА рднреА рдХреБрдЫ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдорд▓реНрдЯреА-рдмрдЯрди, рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рдореИрдВрдиреЗ рдХрд┐рдЯ рд╕реЗ IR рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рд▓рд┐рдпрд╛ред

рдЫрд╡рд┐

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

"--------------------------------------------------------------------------" //   IRremote #include <IRremote.h> decode_results results; IRrecv irrecv (A0); //      void setup () { Serial.begin(9600); //   com  irrecv.enableIRIn(); //    } void loop () { if (irrecv.decode( &results )) //      ,    { Serial.println( results.value, HEX ); //          irrecv.resume(); //            } } "--------------------------------------------------------------------------" 

рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рд╕рд┐рдЧреНрдирд▓ рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ: "FF18E7" рдЖрдкрдХрд╛ рдХреЛрдб рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рд╕рд╛рд░ рдХреЛ рд╕рдордЭрдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЬрдм рдЖрдк рдЗрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЕрдкреАрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рд╢реБрд░реБрдЖрдд рдореЗрдВ "0x" рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рд╣рдореЗрдВ (0x18187) рдорд┐рд▓рддрд╛ рд╣реИред

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

рдпрджрд┐ рд╣рдо рд╕реЗрдВрд╕рд░ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рддреАрди рдкреИрд░, рдмрд╛рдПрдВ (рдПрдирд╛рд▓реЙрдЧ рд╕рд┐рдЧреНрдирд▓), рдордзреНрдп (рдЬрдореАрди), рджрд╛рдПрдВ (рдкреНрд▓рд╕ 5 рд╡реА) рджреЗрдЦрддреЗ рд╣реИрдВред

рдЫрд╡рд┐

рдЪреВрдБрдХрд┐ рдореБрдЭреЗ рдЕрднреА рднреА рдХреБрдЫ рдкрддрд╛ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдореИрдВрдиреЗ рдкреНрд░рдпреЛрдЧ рд╢реБрд░реВ рдХрд┐рдПред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рд╕реНрдХреЗрдЪ рдХреЛрдб рдХреЛ рд╕реНрдЯреЗрдк рдмрд╛рдИ рд╕реНрдЯреЗрдк рдмрдирд╛рдпрд╛, (рджреЗрд░реА рд╕реЗ (рд╕рдордп)) рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдпрд╣ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ :)
рдореБрдЦреНрдп рдЬрд╛рдо рдХреНрдпрд╛ рд╣реИ рдпрд╣ рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИред рд╡рд╣ рд╕рднреА рд╢рд╛рдЦрд╛рдУрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рд╕реЗ рдЧреБрдЬрд░рддреЗ рд╣реБрдП рдКрдкрд░ рд╕реЗ рдиреАрдЪреЗ рддрдХ рдХреЗ рдХреЛрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╡рд╣ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдЕрдм, рдЬрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдб рдореЗрдВ рдЗрди "рджреЗрд░реА" рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╣реИрдВ, рддреЛ рд╣рдо рд╕реНрдкрд╖реНрдЯ рджреЗрд░реА рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рд╡реИрд╕реЗ, рд╣рд╛рдБ, рд╣рдореЗрдВ "рджреЗрд░реА" рдХреА рдмрд╣реБрдд рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИред рдЬрдм рд╣рдо рдПрдХ рдЧреЗрдо рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЪреЗрдХ рдФрд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рдиреЗ рд▓рдЧрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рджреБрд╢реНрдорди рд╣рдорд╛рд░реА рдУрд░ рдмрдврд╝ рд░рд╣рд╛ рд╣реИ рдФрд░ рдореИрдВ рдЗрд╕ рдкрд░ рдХреВрджрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдореИрдВ "рдХреВрдж" рджрдмрд╛рддрд╛ рд╣реВрдВ рдФрд░ рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдореБрдЭреЗ рд╣рд╡рд╛ рдореЗрдВ 0.8f рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рд╣рд╡рд╛ рдореЗрдВ рд▓рдЯрдХрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдпрд╣ рдкреВрд░рд╛ рдЦреЗрд▓ рд╣реИ рдФрд░ рдЗрди 0.8f рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рдлреНрд░реАрдЬ рд╣реЛрддрд╛ рд╣реИред "рдХреЗрдВрдЯ" рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдФрд░ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред рд╕рдорд╛рдзрд╛рди рдЬрд▓реНрджреА рдорд┐рд▓ рдЧрдпрд╛ рдерд╛ред рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдЦреБрдж рдХреЛ рд╢реБрд░реВ рд╕реЗ рдЕрдВрдд рддрдХ рдХреЛрдб рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдкрдврд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ (рдпрджрд┐ рдпрд╣ рдЙрд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ) рдФрд░ рд╡рд╣ рдпрд╣ рднреА рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд╕рдорд╛рд╡реЗрд╢ рдХреА рд╢реБрд░реБрдЖрдд рд╕реЗ рд╕рдордп рдХреА рдЧрдгрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдПред рдЕрдм рд╣рдо рдХреЗрд╡рд▓ рд╡реЗ рдЪрд░ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ рдЗрд╕ рдпрд╛ рдЙрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рдордп рд╕рдВрдЪрд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдПрдХ рдЪрд░ рдЬреЛ рдЕрдВрддрд░ рдХреА рддреБрд▓рдирд╛ рдЙрд╕ рд╕рдордп рд╕реЗ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрднреА рд╣реИ рдФрд░ рдХреЛрдб рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред Arduino рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб, 1000 рдорд┐рд▓реАрд╕реЗрдХрдВрдб рд▓реЗрддрд╛ рд╣реИ, рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдпрд╣рд╛рдБ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдкрд░ рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 "--------------------------------------------------------------------------" //    ,  ,        //  long ClearTime = 150; // 150 = 0.15f   ~6    long ClearTimeCheck = 0; // ,       long currentMillis = 0; //   void loop () { currentMillis = millis(); //   =    } void clearscreen () //   { // if (currentMillis - ClearTimeCheck >= ClearTime) //  (  -     0.15f    { ClearTimeCheck = currentMillis; //       lcd.clear(); //   ,     } } "--------------------------------------------------------------------------" 

рдХрдард┐рди рдирд╣реАрдВ рд╣реИ, рд╣реИ рдирд╛?

рдкреВрд░реЗ рдХреЛрдб рдХреЛ рдирдП рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рдж, рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрд▓ рдЬрд▓реНрджреА рдФрд░ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ :) рдореИрдВ рдПрдХ рд▓рдВрдмрд╛ рд░рд╛рд╕реНрддрд╛ рддрдп рдХрд┐рдпрд╛ред рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдореЗрдВ рдЕрднреА рднреА рдПрдХ рдЪрд░рд┐рддреНрд░, рдПрдХ рддрд░рд╣ рдХрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдФрд░ рдПрдиреАрдореЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╣рдо рдХреЗрд╡рд▓ рдЖрда рдирдП рдЪрд░рд┐рддреНрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдХрд┐рд╕реА рддрд░рд╣ рдЗрд╕реЗ рд╕реНрдорд╛рд░реНрдЯ рддрд░реАрдХреЗ рд╕реЗ рдЧрдбрд╝рдмрдбрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореИрдВ рдЕрдм рддрдХ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдмрд╣реБрдд рд╕реА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддрд╛, рдЗрд╕рд▓рд┐рдП, рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдХреЛрдб рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╕реНрдХреНрд░реАрди рдкрд░ рд╕рд┐рд░реНрдл рдЖрда рд╕рдХреНрд░рд┐рдп рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛрдВрдЧреЗред рдпрд╣ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдЦреИрд░, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдореБрдЦреНрдп рдЪрд░рд┐рддреНрд░, рд╣рд┐рдЯ, рдЦрд▓рдирд╛рдпрдХ, рджрд┐рд▓ рдФрд░ рд╕реНрд╡рд╛рд╕реНрдереНрдп рд╕рдВрдХреЗрддрдХред рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рд╣рд╛рдВ, рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╕реНрдЯреЙрдХ рдореЗрдВ рддреАрди рдФрд░ рдЕрдиреЛрдЦреА рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВред

рдореБрдЦреНрдп рдЪрд░рд┐рддреНрд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:



рдПрдХ рдирдП рдЪрд░рд┐рддреНрд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛, рдореИрдВ рдмрд╛рдЗрдирд░реА рдХреЛрдб рдореЗрдВ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реВрдВ (рдореБрдЭреЗ рдмрд╣реБрдд рд╕рд╣рдЬ рд▓рдЧрддрд╛ рд╣реИ)
рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

01110
01110
00100
01110
10101
00100
01110
01010

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



рдЕрдм рд╣рдорд╛рд░реЗ рдХреЛрдб рдореЗрдВ, рдмрд╛рдЗрдирд░реА рдирдВрдмрд░реЛрдВ рдХрд╛ рдПрдХ рдФрд░ рд╕реЗрдЯ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддреН рдпрд╣ рдПрдХ:

00000
01110
01110
00100
11111
00100
01110
01010

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

 "--------------------------------------------------------------------------" #include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x3F,16,2); //   long AnimatedTime = 300; //     long AnimatedTimeCheck = 0; //   (    ) int AnimPlayer = 1; //    int GGpozX = 8; //   int GGpozY = 1; //   1  2   0    long currentMillis = 0; //   //   ,     ,    :) enum { SYMBOL_HEIGHT = 8 }; byte Player_1[SYMBOL_HEIGHT] = {B01110,B01110,B00100,B01110,B10101,B00100,B01110,B01010,}; //  1 byte Player_2[SYMBOL_HEIGHT] = {B00000,B01110,B01110,B00100,B11111,B00100,B01110,B01010,}; //  2 void setup() { lcd.init(); lcd.backlight();//    loop(); PlAn(); } void loop() { if (AnimPlayer != 50) { //    ,       :) // --------------------------- Animated -> // -------------------- Player -> if (AnimPlayer == 1){lcd.createChar(0, Player_1);} //  1   1 //(lcd.createChar(    0  7,   )) if (AnimPlayer == 2){lcd.createChar(0, Player_2);} //  2   2 } // --------------------------- <- Animated currentMillis = millis(); //   =    PlAn(); } void PlAn () { if (AnimPlayer == 1) //   1  { lcd.setCursor(GGpozX, GGpozY); //  ""      lcd.write(0); //          "" } if (AnimPlayer == 2) //  тДЦ1 { lcd.setCursor(GGpozX, GGpozY); lcd.write(0); } if (currentMillis - AnimatedTimeCheck >= AnimatedTime) //       { AnimatedTimeCheck = currentMillis; //     if (AnimPlayer == 2){AnimPlayer = 1; return;} //  2   1      if (AnimPlayer == 1){AnimPlayer = 2;} // 1  2           ,         } } "--------------------------------------------------------------------------" 

рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдЫреЛрдЯреЗ рдЖрджрдореА рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рдЬреЛ рд╕реНрдХреНрд░реАрди рдХреЗ рдХреЗрдВрджреНрд░ рдореЗрдВ рд╣реИ, рджреВрд╕рд░реА рдкрдВрдХреНрддрд┐ рдкрд░ рдФрд░ sways, рдЗрд╕рд▓рд┐рдП рдмреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдПред

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

рдмрд╛рдХреА рдЬрд▓реНрдж рд╣реА рдЖ рд░рд╣рд╛ рд╣реИ :) рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдзреНрдпрд╛рди рджреВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛, рдФрд░ рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдХрд▓ рдореИрдВ рдЕрдЧрд▓реА рдХрдбрд╝реА рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реВрдВрдЧрд╛ред

рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, ciao рдХреЛрдХреЛ!

рд▓реЗрдЦ рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧ -> habr.com/post/425367

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


All Articles