
рд╢реМрдХрд┐рдпрд╛ рд░реЗрдбрд┐рдпреЛ рдЕрднреНрдпрд╛рд╕ рдореЗрдВ, рдХрднреА-рдХрднреА рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдкрд░ рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрджрд┐ рдЖрдк рд╣рд░ рд╕рдордп рдЗрд╕ рддрд░рд╣ рдХреЗ рд╢рд┐рд▓реНрдк рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЖрд╡рд╢реНрдпрдХ рд╕рд░реНрдХрд┐рдЯ рд╕рдорд╛рдзрд╛рди рдФрд░ рдПрдордХреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЬрд▓реНрджреА рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдореИрдВ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдПрдВрдЯреАрдирд╛ рд╕реНрд╡рд┐рдЪ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдореБрдЭреЗ рдПрдХ рдХреЙрдореНрдкреИрдХреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдЯрдореЗрдЧрд╛ рдПрдордХреЗ рдХреА рдХрдИ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рдЬреЛ рд▓реЛрдЧ AVR рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ arduino рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдХрднреА-рдХрднреА рдкреНрд░реЛрдЧреНрд░рд╛рдо MK рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдХреЛрдб рдХреЗ рдЙрдкрдпреЛрдЧреА рдЯреБрдХрдбрд╝реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВрдиреЗ рдРрдиреНрдЯреЗрдирд╛ рд╕реНрд╡рд┐рдЪ рдХреЛ рдПрдХ рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЛрдЪрд╛ рдЬреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдПрдВрдЯреАрдирд╛ рдХреЛ рдЯреНрд░рд╛рдиреНрд╕реАрд╡рд░ рд╕реЗ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЬреЛ рдЫреЛрдЯреА рддрд░рдВрдЧреЛрдВ рдХреА рдХрд╛рд░реНрдп рд╕реАрдорд╛ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рджреЛ рдПрдВрдЯреЗрдирд╛ рд╣реИрдВ: рдЙрд▓реНрдЯреЗ рд╡реА рдФрд░ рдЧреНрд░рд╛рдЙрдВрдб рдкреНрд▓реЗрди, рд╡реЗ рдПрдордПрдлрдЬреЗ рдПрдВрдЯреАрдирд╛ рдЯреНрдпреВрдирд░ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рджреВрд░ рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдмреНрд░рд╛рдВрдбреЗрдб рдореИрдиреБрдЕрд▓ рд╕реНрд╡рд┐рдЪ рдПрдордПрдлрдЬреЗ рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдПрдВрдЯреЗрдирд╛ рдХреЗ рдкрд░рд┐рдЪрд╛рд▓рди рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП, рдПрдХ рдмрдЯрди рдПрдордХреЗ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред рдореИрдВрдиреЗ рдкреНрд░рддреНрдпреЗрдХ рд╢реНрд░реЗрдгреА рдХреЗ рд▓рд┐рдП рдкрд╕рдВрджреАрджрд╛ рдПрдВрдЯреАрдирд╛ рдХреЛ рдпрд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛: рдЬрдм рдЖрдк 3 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рдмрдЯрди рджрдмрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЪрдпрдирд┐рдд рдПрдВрдЯреАрдирд╛ рдХреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдЕрдЧрд▓реЗ рдкрд╛рд╡рд░-рдЕрдк рдХреЗ рдмрд╛рдж рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдпрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЪреБрдирд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рд░реЗрдВрдЬ, рдЪрдпрдирд┐рдд рдПрдВрдЯреАрдирд╛ рдФрд░ рдЗрд╕рдХреЗ рдЯреНрдпреВрдирд┐рдВрдЧ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдПрдХрд▓-рд▓рд╛рдЗрди рдПрд▓рд╕реАрдбреА рдбрд┐рд╕реНрдкреНрд▓реЗ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред
рдЖрдк рдпрд╣ рдкрддрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЯреНрд░рд╛рдВрд╕реАрд╡рд░ рдХрд┐рд╕ рд╕реАрдорд╛ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ: рдЖрдк рд╕рд┐рдЧреНрдирд▓ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЛ рдорд╛рдк рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдХреИрдЯ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ рдмрд╛рдд рдмрд╛рд╣рд░реА рдПрдореНрдкрд▓реАрдлрд╛рдпрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП YAESU рдЯреНрд░рд╛рдВрд╕реАрд╡рд░ рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдмрд╛рдЗрдирд░реА рдХреЛрдб рдореЗрдВ рдЗрд╕рдХреА 4 рд╕рд┐рдЧреНрдирд▓ рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ, рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╕реАрдорд╛ рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИрдВред рд╡реЗ 0 рд╕реЗ 5 рд╡реЛрд▓реНрдЯ рддрдХ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрдХреЗрдд рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдордЯреА рдХреЗ рдкреНрд░рддрд┐рд░реЛрдзреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреИрд░реЛрдВ рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╡рд╣ рд╕рдм рдирд╣реАрдВ рд╣реИред рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдореЛрдб рдореЗрдВ, рдкреАрдЯреАрдЯреА рдФрд░ рдПрдПрд▓рд╕реА рд╕рд┐рдЧреНрдирд▓ рдПрдХ рд╣реА рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░реЗрд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдпрд╣ рдЯреНрд░рд╛рдВрд╕рдореАрдЯрд░ (рдЬрдореАрди рдкрд░ рдЦреАрдВрдЪрд╛ рдЧрдпрд╛) рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЯреНрд░рд╛рдВрд╕рдореАрдЯрд░ рдмрд┐рдЬрд▓реА рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ 0 рд╕реЗ -4 рд╡реА рддрдХ рдПрдирд╛рд▓реЙрдЧ рд╕рд┐рдЧреНрдирд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрдХреЗрдд рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ рдорд╛рдкрдиреЗ рдФрд░ рдЯреНрд░рд╛рдВрд╕рдорд┐рд╢рди рдореЛрдб рдореЗрдВ рдПрд▓рд╕реАрдбреА рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рднреА рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдордПрдлрдЬреЗ рдЯреНрдпреВрдирд░ рд░рд┐рдореЛрдЯ рдХрдВрдЯреНрд░реЛрд▓ рдХреЛ рд╕рдВрдХреЗрдд рдкреНрд░реЗрд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЯреНрдпреВрдирд┐рдВрдЧ рд╣реИ рдФрд░ рдПрдВрдЯреАрдирд╛ рдЯреНрдпреВрди рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдВрдкрдиреА рдирд┐рдпрдВрддреНрд░рдг рдХрдХреНрд╖ MFJ рдореЗрдВ рджреЛ рдирд┐рдпрдВрддреНрд░рдг рдПрд▓рдИрдбреА рд╣реИрдВред рдПрд▓ рдИ рдбреА рдХреЗ рдмрдЬрд╛рдп, рдореИрдВрдиреЗ рдСрдкреНрдЯреЛрдХреЛрдкреНрд▓рд░реНрд╕ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдордХреЗ рд╕реЗ рд╕рдВрдХреЗрдд рднреЗрдЬрд╛, рддрд╛рдХрд┐ рдореИрдВ рдПрдХ рдбрд┐рд╕реНрдкреНрд▓реЗ рдкрд░ рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦ рд╕рдХреВрдВред рддреИрдпрд╛рд░ рдбрд┐рд╡рд╛рдЗрд╕ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд╕рдм рдХреБрдЫ рдХреА рддрд░рд╣ рдШрд░ рдХрд╛ рдмрдирд╛ред рдЕрдм рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рднрд╛рдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рдХреЛрдб Atmel рд╕реНрдЯреВрдбрд┐рдпреЛ (Atmel рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╕реЗ рдореБрдлреНрдд рдбрд╛рдЙрдирд▓реЛрдб) рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИред рд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЛрдХрдкреНрд░рд┐рдп Atmega8 MK рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ:
- рдХрдиреЗрдХреНрдЯ рдмрдЯрди
- рдЯреНрд░рд╛рдВрд╕реАрд╡рд░ рдФрд░ рдЯреНрдпреВрдирд░ рд╕реЗ рдбрд┐рдЬрд┐рдЯрд▓ рд╕рд┐рдЧреНрдирд▓ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрди рдЗрдирдкреБрдЯ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
- рдПрдВрдЯреАрдирд╛ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рд░рд┐рд▓реЗ рдХреЗ рдирд┐рдпрдВрддреНрд░рдг рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛
- рдПрдХ рд╕рд┐рдВрдЧрд▓ рд▓рд╛рдЗрди рдПрд▓рд╕реАрдбреА рдбрд┐рд╕реНрдкреНрд▓реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛
- рдмрдЬрд░ рдХрдиреЗрдХреНрд╢рди рдФрд░ рдзреНрд╡рдирд┐ рдЙрддреНрдкрд╛рджрди
- рдПрдбреАрд╕реА рдПрдирд╛рд▓реЙрдЧ рдЗрдирдкреБрдЯ рд▓рд╛рдЗрди рдХрдиреЗрдХреНрд╢рди рдФрд░ рд╡реЛрд▓реНрдЯреЗрдЬ рдорд╛рдк
- рд╡реНрдпрд╡рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рдмрдЯрди рджрдмрд╛рдП рдЬрд╛рдиреЗ рдХреЗ рд╕рдордп рдХреЛ рдЧрд┐рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдорд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рд╡реЙрдЪрдбреЙрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рдЪрдпрдирд┐рдд рдПрдВрдЯреЗрдирд╛ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреИрд░-рд╡рд╛рд╖реНрдкрд╢реАрд▓ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рдбрд┐рдмрдЧ рдкреНрд░рд┐рдВрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП UART рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рдирд┐рд╖реНрдХреНрд░рд┐рдп рдПрдордХреЗ рдореЗрдВ рдКрд░реНрдЬрд╛ рдХреА рдмрдЪрдд
рддреЛ рдЪрд▓рд┐рдП рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдкрд╛рда рдХреЗ рдкрд╛рдареНрдпрдХреНрд░рдо рдореЗрдВ, рд▓рд╛рдЧреВ рдПрдордХреЗ рдХреЗ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рд░рдЬрд┐рд╕реНрдЯрд░ рдирд╛рдо рдФрд░ рд╕реНрдерд┐рд░рд╛рдВрдХ рд╣реЛрдВрдЧреЗред рдпрд╣ arduino рдирд╣реАрдВ рд╣реИ, рдпрд╣рд╛рдВ, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЖрдкрдХреЛ рдПрдордХреЗ рдкрд░ рдбреЗрдЯрд╛рд╢реАрдЯ рдкрдврд╝рдирд╛ рд╣реЛрдЧрд╛ред рдЕрдиреНрдпрдерд╛, рдЖрдк рдпрд╣ рдирд╣реАрдВ рд╕рдордЭ рдкрд╛рдПрдВрдЧреЗ рдХрд┐ рдЗрди рд╕рднреА рд░рдЬрд┐рд╕реНрдЯрд░реЛрдВ рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдФрд░ рдЖрдк рдЙрдирдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рд╕рдВрд░рдЪрдирд╛ рд╕рдорд╛рди рд░рд╣реЗрдЧреАред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдмрдЯрди рдХреЛ рдПрдордХреЗ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╣реИред рд╣рдо рдПрдХ рд╕рдВрдкрд░реНрдХ рдХреЛ рдПрдордХреЗ рдкреИрд░, рджреВрд╕рд░реЗ рдмрдЯрди рдХреЗ рд╕рдВрдкрд░реНрдХ рдХреЛ рдЬрдореАрди рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдЯрди рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдордХреЗ рдореЗрдВ рдкреБрд▓-рдЕрдк рд░реЛрдХрдиреЗрд╡рд╛рд▓рд╛ рдЪрд╛рд▓реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╡рд╣ + 5 рд╡реА рдмрд╕ рдХреЗ рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрдЯрди рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдЧрд╛ред рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ:
PORTB |= (1 << PB2);
рдЗрд╕реА рддрд░рд╣, рд╕рднреА рдбрд┐рдЬрд┐рдЯрд▓ рдЗрдирдкреБрдЯ рдЬреЛ рдПрдХ рдЧреНрд░рд╛рдЙрдВрдб рдлреЙрд▓реНрдЯ (рдСрдкреНрдЯреЛрдХреЙрдкрд░реНрд╕, рдЯреНрд░рд╛рдВрд╕реАрд╡рд░ рд╕реЗ рд╕рд┐рдЧреНрдирд▓ рд▓рд╛рдЗрди, рдкреАрдЯреАрдЯреА рд╕рд┐рдЧреНрдирд▓) рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ + 5 рд╡реА рдмрд╕ рдореЗрдВ рдЦреАрдВрдЪ рд▓рд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдХрднреА-рдХрднреА рдПрдордХреЗ рдФрд░ + 5 рд╡реА рдмрд╕ рдХреЗ рдЗрдирдкреБрдЯ рдХреЗ рдмреАрдЪ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЫреЛрдЯреЗ рдкреНрд░рддрд┐рд░реЛрдз (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП 10k) рдХреЛ рднреМрддрд┐рдХ рд░реВрдк рд╕реЗ рдорд┐рд▓рд╛рдк рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдЪрд░реНрдЪрд╛ рд▓реЗрдЦ рдХреЗ рджрд╛рдпрд░реЗ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред рдЪреВрдВрдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕рднреА рдЗрдирдкреБрдЯ рд╕рд┐рдЧреНрдирд▓ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдореВрд▓реНрдпреЛрдВ рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП 10 рдиреИрдиреЛрдлреИрдб рдХреИрдкреЗрд╕рд┐рдЯрд░ рджреНрд╡рд╛рд░рд╛ рдЬрдореАрди рдкрд░ рд╣рд┐рд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ PB2 рдЗрдирдкреБрдЯ рдкрд░ рддрд╛рд░реНрдХрд┐рдХ 1 рд╣реИ, рдФрд░ рдЬрдм рдЖрдк рдмрдЯрди рджрдмрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рддрд╛рд░реНрдХрд┐рдХ рд╣реЛрдЧрд╛ред 0. рдЬрдм рдЖрдк \ рджрдмрд╛рдирд╛ рджрдмрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдмрдЯрди рдХреЗ рд╕рдВрдкрд░реНрдХ рдмрд╛рдЙрдВрд╕ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╕рд┐рдЧреНрдирд▓ рд╕реНрддрд░ рд╕рдордп рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ, 50 рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдХрд╣рддреЗ рд╣реИрдВред рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
if(!(PINB&(1<<PINB2)) && !timer_on) {
рдЕрдм рд╕реНрдХреНрд╡реАрдХрд░ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ
рдпрд╣ рдПрдХ рдСрдбрд┐рдпреЛ рдкреБрд╖реНрдЯрд┐ рд╕рдВрдХреЗрдд рджреЗрдЧрд╛ рдХрд┐ рдПрдВрдЯреАрдирд╛ рдПрдордХреЗ рдореЗрдореЛрд░реА рдореЗрдВ рджрд░реНрдЬ рд╣реИред рдПрдХ рдЯреНрд╡реАрдЯрд░ рд╕рд┐рд░реНрдл рдПрдХ рдкреАрдЬреЛрдЗрд▓реЗрдХреНрдЯреНрд░рд┐рдХ рддрддреНрд╡ рд╣реИред рдпрд╣ рдПрдордХреЗ рдлреБрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯреЗ рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рдФрд░ + 5 рд╡реА рдХреЗ рджреВрд╕рд░реЗ рд╕рдВрдкрд░реНрдХ рд╕реЗред рдЗрд╕ рдмрдЬрд░ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдПрдордХреЗ рдлреБрдЯ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдбреЗрдЯрд╛ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
void init_buzzer(void) { PORTB &= ~(1 << PB0);
рдЕрдм рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдЫреЛрдЯрд╛ рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдПрдордХреЗ рдкреИрд░реЛрдВ рдХреЛ 0 рд╕реЗ 1 рддрдХ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рджреЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрддред рдЖрд╡рд╢реНрдпрдХ рджреЗрд░реА рдХреЗ рд╕рд╛рде рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдПрдордХреЗ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рд▓рдЧрднрдЧ рдПрдХ рдЪреМрдерд╛рдИ рд╕реЗрдХрдВрдб рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд╕рд╛рде 4 kHz рдСрдбрд┐рдпреЛ рд╕рд┐рдЧреНрдирд▓ рдЙрддреНрдкрдиреНрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдкреАрдЬреЛрдЗрд▓реЗрдХреНрдЯреНрд░рд┐рдХ рддрддреНрд╡ рдХреА рдЖрд╡рд╛рдЬрд╝ рд╣реИред
void buzz(void) {
рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рджреЗрд░реА рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдФрд░ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреА рдЧрддрд┐ рдХреЛ рд╕реНрдерд┐рд░ рд░рдЦрдирд╛ рди рднреВрд▓реЗрдВред рдпрд╣ рдПрдордХреЗ рд╕реЗ рдЬреБрдбрд╝реЗ рдХреНрд╡рд╛рд░реНрдЯреНрдЬ рдЧреБрдВрдЬрдпрдорд╛рди рдпрдВрддреНрд░ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, 16MHz рдХреНрд╡рд╛рд░реНрдЯреНрдЬ рдерд╛ред
#ifndef F_CPU # define F_CPU 16000000UL #endif #include <util/delay.h>
рд╣рдо рдПрдордХреЗ рд░рд┐рд▓реЗ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдПрдВрдЯреЗрдирд╛ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╣реИрдВ
рдпрд╣рд╛рдВ рдЖрдкрдХреЛ рдмрд╕ рдмрд╛рд╣рд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдордХреЗ рдлреБрдЯ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдХ рд░реАрдб рд░рд┐рд▓реЗ рдПрдХ рдорд╛рдирдХ рддрд░реАрдХреЗ рд╕реЗ рдПрдХ рдкреНрд░рд╡рд░реНрдзрдХ рдЯреНрд░рд╛рдВрдЬрд┐рд╕реНрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рдкреИрд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред
void init_tuner_relay(void) { PORTB &= ~(1 << PB1);
рдХрдиреЗрдХреНрд╢рди рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ
рдореИрдВрдиреЗ рдкреБрд░рд╛рдиреЗ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╕реЗ рдирд┐рдХрд╛рд▓реЗ рдЧрдП 1601 рд╕рд┐рдВрдЧрд▓-рд▓рд╛рдЗрди 16 рдХреИрд░реЗрдХреНрдЯрд░ рдПрд▓рд╕реАрдбреА рдбрд┐рд╕реНрдкреНрд▓реЗ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рдпрд╣ рдкреНрд░рд╕рд┐рджреНрдз HD44780 рдирд┐рдпрдВрддреНрд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рдХрд┐рд╕реА рддрд░рд╣ рдХреЗ рд╡реНрдпрдХреНрддрд┐ рдиреЗ рдПрдХ рд▓рд╛рдЗрдЯрд╡реЗрдЯ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХрдВрдЯреНрд░реЛрд▓ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд▓рд┐рдЦреА, рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рд╕реНрдерд╛рдкрдирд╛ рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╣реЛ рдЧрдИ рд╣реИ HD44780_Config.h рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рджрд░реНрд╢рди рдкрд┐рди рд╕реЗ рдЬреБрдбрд╝реЗ рдПрдордХреЗ рдкреИрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ред рдореИрдВрдиреЗ 4 рдбреЗрдЯрд╛ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХрдиреЗрдХреНрд╢рди рд▓рдЧрд╛рдпрд╛ред
#define Data_Length 0 #define NumberOfLines 1 #define Font 1 #define PORT_Strob_Signal_E PORTC #define PIN_Strob_Signal_E 5 #define PORT_Strob_Signal_RS PORTC #define PIN_Strob_Signal_RS 4 #define PORT_bus_4 PORTC #define PIN_bus_4 0 #define PORT_bus_5 PORTC #define PIN_bus_5 1 #define PORT_bus_6 PORTC #define PIN_bus_6 2 #define PORT_bus_7 PORTC #define PIN_bus_7 3
рдореЗрд░реЗ рдкреНрд░рджрд░реНрд╢рди рдЙрджрд╛рд╣рд░рдг рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рдереА рдХрд┐ рд╕реНрдХреНрд░реАрди рдкрд░ рдПрдХ рдкрдВрдХреНрддрд┐ рдХреЛ 8 рд╡рд░реНрдгреЛрдВ рдХреА рджреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╕реНрдХреНрд░реАрди рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рд╕реНрдХреНрд░реАрди рдмрдлрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
void init_display(void) { PORTC &= ~(1 << PC0);
Update_display () рдлрд╝рдВрдХреНрд╢рди рдЖрдкрдХреЛ рд╕реНрдХреНрд░реАрди рдкрд░ рдмрдлрд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдмрдлрд╝рд░ рдореЗрдВ рдмрд╛рдЗрдЯ рдорд╛рди рдЖрдЙрдЯрдкреБрдЯ рд╡рд░реНрдгреЛрдВ рдХреЗ ASCII рдХреЛрдб рд╣реИрдВред
COM рдкреЛрд░реНрдЯ рдкрд░ рдбрд┐рдмрдЧ рдкреНрд░рд┐рдВрдЯрд┐рдВрдЧ рдЖрдЙрдЯрдкреБрдЯ
рдПрдордХреЗ рдореЗрдВ UART рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдбреАрдмрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ред рдПрдордХреЗ рдХреЛ рдХрдВрдкреНрдпреВрдЯрд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдПрдордХреЗ рдЖрдЙрдЯрдкреБрдЯ рдореЗрдВ рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рд╕реНрддрд░ рдЯреАрдЯреАрдПрд▓ рдорд╛рдирдХ рдореЗрдВ рд╣реИ, рдФрд░ рдЖрд░рдПрд╕ 232 рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдПрдбрд╛рдкреНрдЯрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ USB-Serial рдЕрдбреИрдкреНрдЯрд░ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛, рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ aliexpress рдкрд░ рд╣реИред рдХрд┐рд╕реА рднреА рдЯрд░реНрдорд┐рдирд▓ рдХрд╛рд░реНрдпрдХреНрд░рдо, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрд░реНрдбрд┐рдиреЛ рд╕реЗ, рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИред UART рдкреЛрд░реНрдЯ рд╕реЗрдЯрдЕрдк рдХреЛрдб:
#define BAUD 9600 #include <stdio.h> #include <stdlib.h> #include <avr/io.h> // UART RS232 void uart_init( void ) { /* // UBRRH = 0; UBRRL = 103; //9600 16 */ #include <util/setbaud.h> UBRRH = UBRRH_VALUE; UBRRL = UBRRL_VALUE; #if USE_2X UCSRA |= (1 << U2X); #else UCSRA &= ~(1 << U2X); #endif //8 , 1 , UCSRC = ( 1 << URSEL ) | ( 1 << UCSZ1 ) | ( 1 << UCSZ0 ); // // UCSRB = ( 1 << TXEN ) | ( 1 <<RXEN ); UCSRB = ( 1 << TXEN ); } int uart_putc( char c, FILE *file ) { // while( ( UCSRA & ( 1 << UDRE ) ) == 0 ); UDR = c; wdt_reset(); return 0; } FILE uart_stream = FDEV_SETUP_STREAM( uart_putc, NULL, _FDEV_SETUP_WRITE ); stdout = &uart_stream;
рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯреНрд░реАрдо рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдкреЛрд░реНрдЯ рдкрд░ рдкреНрд░рд┐рдВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рд┐рдВрдЯрдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
printf( "Start flag after reset = %u\r\n", mcusr_mirror );
рдХрд╛рд░реНрдпрдХреНрд░рдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдХреА рдЫрдкрд╛рдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдирд┐рдпрдорд┐рдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЗрд╕ рдЖрдЙрдЯрдкреБрдЯ рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд┐рдВрдХ рдХрд░рддреЗ рд╕рдордп рдПрдХ рдкреВрд░реНрдг рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рд╕рдЪ рд╣реИ, рдпрд╣ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рдХреЛрдб рдХреА рдорд╛рддреНрд░рд╛ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдореЗрдореЛрд░реА рдХреА рдПрдХ рдмрдбрд╝реА рдЖрдкреВрд░реНрддрд┐ рдереА, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдерд╛ред рд▓рд┐рдВрдХрд░ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рдЖрдкрдХреЛ рдкрдВрдХреНрддрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
-Wl,-u,vfprintf -lprintf_flt
рдЯрд╛рдЗрдорд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВ рдФрд░ рдмрд╛рдзрд┐рдд рдХрд░реЗрдВ
рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдордп рдХрд╛рдЙрдВрдЯрд░ рд╣реЛрдирд╛ рдЬрд░реВрд░реА рд╣реИред рдпрд╣ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдмрдЯрди рдХреЛ 3 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдЧреИрд░-рд╡рд╛рд╖реНрдкрд╢реАрд▓ рдореЗрдореЛрд░реА рдореЗрдВ рдирдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдПрд╡реАрдЖрд░ рд╢реИрд▓реА рдореЗрдВ рд╕рдордп рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдШрдбрд╝реА рдЬрдирд░реЗрдЯрд░ рдХреЗ рдкрд▓реНрд╕ рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЬрдм рдХрд╛рдЙрдВрдЯрд░ рд╕реЗрдЯ рдорд╛рди рддрдХ рдкрд╣реБрдВрдЪрддрд╛ рд╣реИ, рддреЛ рдЙрд╕ рдмрд╛рдзрд╛ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдореИрдВрдиреЗ рдЯрд╛рдЗрдорд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдПрдХ рдмрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдмрд╛рдзрд╛ рдЙрддреНрдкрдиреНрди рдХрд░реЗред рдЗрдВрдЯрд░рдкреНрд░реЗрдиреНрдпреЛрд░ рд╣реИрдВрдбрд▓рд░ рд╕реНрд╡рдпрдВ рдмреАрддрд╛ рд╣реБрдЖ рд╕реЗрдХрдВрдб рдХреА рд╕рдВрдЦреНрдпрд╛ рдЧрд┐рдирддрд╛ рд╣реИред рдЯрд╛рдЗрдорд░_рдСрди рдЪрд░ рдЯрд╛рдЗрдорд░ рдХреЗ рдЪрд╛рд▓реВ / рдмрдВрдж рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЙрди рд╕рднреА рдЪрд░реЛрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдирд╛ рди рднреВрд▓реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЗрдВрдЯрд░рдкреНрдЯ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдЕрд╕реНрдерд┐рд░ рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЙрдиреНрд╣реЗрдВ "рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝" рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдореБрдЦреНрдп рд▓реВрдк рдореЗрдВ pass_secs рдХреЗ рдореВрд▓реНрдп рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИред рдЬрдм рдмрдЯрди рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЯрд╛рдЗрдорд░ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдореБрдЦреНрдп рдХрд╛рд░реНрдпрдХреНрд░рдо рдЪрдХреНрд░ рдореЗрдВ рдЯрд╛рдЗрдорд░ рдореВрд▓реНрдп рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИ, рдЬрдмрдХрд┐ рдмрдЯрди рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдорд╛рди 3 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рд╣реИ, рддреЛ EEPROM рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЯрд╛рдЗрдорд░ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдВрддрд┐рдо рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдирд╣реАрдВ, рд╕рднреА рдкреНрд░рд╛рд░рдВрднрд┐рдХрддрд╛рдУрдВ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ sei () рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдкреНрдЯ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
ALC рд╕реНрддрд░ рдорд╛рдкрди
рдпрд╣ рдмрд┐рд▓реНрдЯ-рдЗрди рдПрдирд╛рд▓реЙрдЧ-рдЯреВ-рдбрд┐рдЬрд┐рдЯрд▓ рдХрдирд╡рд░реНрдЯрд░ (рдПрдбреАрд╕реА) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВрдиреЗ ADC7 рдХреЗ рдЗрдирдкреБрдЯ рдкрд░ рд╡реЛрд▓реНрдЯреЗрдЬ рдХреЛ рдорд╛рдкрд╛ред рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЖрдк 0 рд╕реЗ 2.5V рддрдХ рдХреЗ рдорд╛рди рдХреЛ рдорд╛рдк рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдореЗрд░рд╛ рдЗрдирдкреБрдЯ рд╡реЛрд▓реНрдЯреЗрдЬ -4 рд╡реА рд╕реЗ 0 рд╡реА рддрдХ рдерд╛ред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдкреНрд░рддрд┐рд░реЛрдзреЛрдВ рдкрд░ рд╕рд░рд▓рддрдо рд╡реЛрд▓реНрдЯреЗрдЬ рд╡рд┐рднрдХреНрдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдордХреЗ рдХреЛ рдЬреЛрдбрд╝рд╛, рддрд╛рдХрд┐ рдПрдордХреЗ рдЗрдирдкреБрдЯ рдкрд░ рд╡реЛрд▓реНрдЯреЗрдЬ рд╕реНрддрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реНрддрд░ рдкрд░ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдЙрдЪреНрдЪ рд╕рдЯреАрдХрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ 8-рдмрд┐рдЯ рд░реВрдкрд╛рдВрддрд░рдг рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ (рдпрд╣ рдХреЗрд╡рд▓ ADCH рд░рдЬрд┐рд╕реНрдЯрд░ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ)ред рд╕рдВрджрд░реНрдн рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ 2.56V рдкрд░ рдПрдХ рдЖрдВрддрд░рд┐рдХ рдЖрдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдпрд╣ рдЧрдгрдирд╛рдУрдВ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд░рд▓ рдХрд░рддрд╛ рд╣реИред рдПрдбреАрд╕реА рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬрдореАрди рдкрд░ рдЖрд░рдИрдПрдл рдкреИрд░ рдХреЛ 0.1 itorF рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВред
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ ADC рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, ADC_vect рд╡реНрдпрд╡рдзрд╛рди рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдЕрдВрдд рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред рддреНрд░реБрдЯрд┐ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд░реВрдкрд╛рдВрддрд░рдг рдЪрдХреНрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдФрд╕рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рд╣реИред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВрдиреЗ 2500 рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдФрд╕рдд рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ред рд╕рднреА рдПрдбреАрд╕реА рдХреЛрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
EEPROM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдпрд╣ рдПрдордХреЗ рдореЗрдВ рдЧреИрд░-рд╡рд╛рд╖реНрдкрд╢реАрд▓ рдореЗрдореЛрд░реА рд╣реИред рдХрд┐рд╕реА рднреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕, рд╕реБрдзрд╛рд░ рдореВрд▓реНрдпреЛрдВ рдЖрджрд┐ рдХреЗ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рд╡рд╛рдВрдЫрд┐рдд рд╕реАрдорд╛ рдХреЗ рд▓рд┐рдП рдЪрдпрдирд┐рдд рдПрдВрдЯреАрдирд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд▓рд┐рдП, EEPROM рдореЗрдВ рдПрдХ 16 рдмрд╛рдЗрдЯ рд╕рд░рдгреА рдЖрд╡рдВрдЯрд┐рдд рдХреА рдЧрдИ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдк рдЗрд╕реЗ рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ avr / eeprom.h рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░, рдПрдордХреЗ рд░реИрдо рдореЗрдВ рд╕рд╣реЗрдЬреА рдЧрдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рд╡рд░реНрддрдорд╛рди рд╕реАрдорд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд╛рдВрдЫрд┐рдд рдРрдиреНрдЯреЗрдирд╛ рдХреЛ рдЪрд╛рд▓реВ рдХрд░рддрд╛ рд╣реИред рдЬрдм рдмрдЯрди рдХреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рджрдмрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореЗрдореЛрд░реА рдореЗрдВ рдПрдХ рдирдпрд╛ рдореВрд▓реНрдп рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рд╛рде рд╣реА рдПрдХ рдзреНрд╡рдирд┐ рд╕рдВрдХреЗрдд рднреАред EEPROM рдХреЛ рд▓рд┐рдЦрддреЗ рд╕рдордп, рд╡реНрдпрд╡рдзрд╛рди рдХреЗрд╡рд▓ рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрдХреНрд╖рдо рд╣реЛрддреЗ рд╣реИрдВред рдореЗрдореЛрд░реА рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛрдб:
EEMEM unsigned char ee_bands[16];
3 рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдЯрди рджрдмрд╛рдиреЗ рдФрд░ рдореЗрдореЛрд░реА рдкрд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЛрдб рдХрд╛ рдПрдХ рд╕реНрдирд┐рдкреЗрдЯ:
if (!(PINB&(1<<PINB2)) && passed_secs >= 3) {
рд╡реЙрдЪрдбреЙрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдпрд╣ рдХреЛрдИ рд░рд╣рд╕реНрдп рдирд╣реАрдВ рд╣реИ рдХрд┐ рдордЬрдмреВрдд рд╡рд┐рджреНрдпреБрдд рдЪреБрдореНрдмрдХреАрдп рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХреА рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд рдПрдордХреЗ рдлреНрд░реАрдЬ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рд░реЗрдбрд┐рдпреЛ рдкреНрд░рдЪрд╛рд▓рди рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рд╣рд╕реНрддрдХреНрд╖реЗрдк рд╣реЛрддрд╛ рд╣реИ рдХрд┐ "рд╡рд┐рдбрдВрдмрдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддреА рд╣реИ", рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рд╣реИрдВрдЧ рд╣реЛрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдПрдордХреЗ рдХрд╛ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рдкреБрдирдГ рдЖрд░рдВрдн рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдПрдХ рд╡реЙрдЪрдбреЙрдЧ рдЯрд╛рдЗрдорд░ рдЗрд╕ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ avr / wdt.h рд╣реИрдбрд░ рдлрд╝рд╛рдЗрд▓ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╕рднреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ wdt_enable (WDTO_2S) рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдЯрд╛рдЗрдорд░ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдлрд┐рд░ рд╕рдордп-рд╕рдордп рдкрд░ рдЗрд╕реЗ wdt_reset () рдХреЙрд▓ рдХрд░рдХреЗ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛, рдЕрдиреНрдпрдерд╛ рдпрд╣ рдПрдордХреЗ рдХреЛ рд╣реА рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдЧрд╛ред рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдПрдордХреЗ рдХреЛ рдХреНрдпреЛрдВ рдкреБрдирд░рд╛рд░рдВрдн рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЖрдк рд╡рд┐рд╢реЗрд╖ MCUSR рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЗ рдореВрд▓реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдореВрд▓реНрдп рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдбрд┐рдмрдЧ рдкреНрд░рд┐рдВрдЯ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдкрд░реНрдпрд╛рд╡рд░рдг рдкреНрд░реЗрдорд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдКрд░реНрдЬрд╛ рдХреА рдмрдЪрдд
рдЬрдмрдХрд┐ рдПрдордХреЗ рдХреБрдЫ рднреА рд╡реНрдпрд╕реНрдд рдирд╣реАрдВ рд╣реИ, рд╡рд╣ рд╕реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЕрдЧрд▓реЗ рд░реБрдХрд╛рд╡рдЯ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдереЛрдбрд╝реА рд╡рд┐рджреНрдпреБрдд рдКрд░реНрдЬрд╛ рдмрдЪрд╛рдИ рдЬрд╛рддреА рд╣реИред рдПрдХ рддрд┐рдкрд╣рд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд░рддреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред Avr / sleep.h рд╢реАрд░реНрд╖ рд▓реЗрдЦ рдлрд╝рд╛рдЗрд▓ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдореБрдЦреНрдп рднрд╛рдЧ рдореЗрдВ рдПрдХ рдЕрдирдВрдд рд▓реВрдк рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдЖрдкрдХреЛ sleep_cpu () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж MC рдереЛрдбрд╝рд╛ рд╕реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдореБрдЦреНрдп рд▓реВрдк рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдЕрдЧрд▓реА рд░реБрдХрд╛рд╡рдЯ рдирд╣реАрдВ рдЖрддреАред рд╡реЗ рдЯрд╛рдЗрдорд░ рдФрд░ рдПрдбреАрд╕реА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рджреМрд░рд╛рди рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдордХреЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдирд╣реАрдВ рд╕реЛрдПрдЧрд╛ред рд╣рд╛рдЗрдмрд░рдиреЗрд╢рди рдореЛрдб рддрдм рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдПрдордХреЗ рдХреЛ рджреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
set_sleep_mode(SLEEP_MODE_IDLE);
рдЕрднреА рдХреЗ рд▓рд┐рдП рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдореИрдВрдиреЗ рд╕реНрд╡рд┐рдЪ рдмрдирд╛рдпрд╛, рдпрд╣ рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдореЗрд░реЗ рд╢реМрдХрд┐рдпрд╛ рд░реЗрдбрд┐рдпреЛ рд╕реНрдЯреЗрд╢рди рдкрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рд╕рд╛рдордЧреНрд░реА рд╢реБрд░реБрдЖрддреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАред
73 рдбреЗ R2AJP