рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдРрд╕рд╛ рдХрд╛рд░реНрдп рдерд╛ - рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдХрдИ рдмрд╛рд░ рдПрдХ рдкреЛрдЯреЗрдВрд╢рд┐рдпреЛрдореАрдЯрд░ рдХреА рд░реАрдбрд┐рдВрдЧ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдПред рд▓рдХреНрд╖реНрдп рд╕реВрдЪрдирд╛ рд░рд┐рд╕реАрд╡рд░ ATmega32 рдирд┐рдпрдВрддреНрд░рдХ рд╣реИред рдЗрд╕рдореЗрдВ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд ADC рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдо рдореЗрдВ 2-3 рдмрд┐рдЯреНрд╕ рдХрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдерд╛, рдФрд░ рд╢реЗрд╖ рдмрд┐рдЯреНрд╕ рдХрдЪрд░рд╛ рд▓реЗ рдЧрдПред
рдкрд╣рд▓реА рдмрд╛рдд рдЬреЛ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрдИ рд╡рд╣ рдереА рдмрд╛рд╣рд░реА рдПрдбреАрд╕реА рдЦрд░реАрджрдирд╛ рдФрд░ рдЙрд╕реЗ рдХрдВрдЯреНрд░реЛрд▓рд░ рдХреЛ рдкреЗрдВрдЪ рдХрд░рдирд╛ред рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рдЕрдиреНрдп рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рди рддреЛ рд╕рдордп рдерд╛ рдФрд░ рди рд╣реА рдЗрдЪреНрдЫрд╛ред рдореИрдВрдиреЗ рдПрдХ рдФрд░ рд╡рд┐рдзрд┐ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╕рд░реНрдХрд┐рдЯ рдХрд╛рдлреА рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ 8 рдмрд┐рдЯреНрд╕ рдХреЗ рдЖрджреЗрд╢ рдХреА рд╕рдЯреАрдХрддрд╛ рджреА (рд╢рд╛рдпрдж рдЕрдзрд┐рдХ, рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХреА)ред
рджрд░рдЕрд╕рд▓, рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдирд┐рдпрдВрддреНрд░рдХ рдХрд╛ рдбрд┐рдЬрд┐рдЯрд▓ рдЗрдирдкреБрдЯ рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХреЗ рдирд┐рд░реНрд╡рд╣рди рджрд░ рдХреЛ рдорд╛рдкрддрд╛ рд╣реИред рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХреЛ рдХрдо рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдкреВрд░реНрддрд┐ рд╡реЛрд▓реНрдЯреЗрдЬ рдХреЗ рд▓рд┐рдП рдЪрд╛рд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд┐рд░ рдПрдХ рд╕рдордп рд░рд┐рдкреЛрд░реНрдЯ рд╢реБрд░реВ рдХреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХреЛ рдкреЛрдЯреЗрдВрд╢рд┐рдпреЛрдореАрдЯрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЫреБрдЯреНрдЯреА рджреЗ рджреА рдЬрд╛рддреА рд╣реИред рдЬрдм рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдкрд░ рд╡реЛрд▓реНрдЯреЗрдЬ 1.4V (рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рдЗрдирдкреБрдЯ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡реЛрд▓реНрдЯреЗрдЬ) рдкрд░ рдЧрд┐рд░ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрдирдкреБрдЯ рдкрд░ рддрд░реНрдХ рд╕реНрддрд░ рдХрд╛ рдорд╛рди рд╕реНрд╡рд┐рдЪ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╕рдордп рд░рд┐рдкреЛрд░реНрдЯ рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧреАред рдкрд░рд┐рдгрд╛рдореА рдирд┐рд░реНрд╡рд╣рди рд╕рдордп рдкреЛрдЯреЗрдВрд╢рд┐рдпреЛрдореАрдЯрд░ рдХреЗ рд╡рд░реНрддрдорд╛рди рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рд▓рд┐рдП рдЖрдиреБрдкрд╛рддрд┐рдХ рд╣реИред
рдбрд┐рд╡рд╛рдЗрд╕ рдЖрд░реЗрдЦ:

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

рдЕрдзрд┐рдХрддрдо рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рд╕рд╛рде 0.02 рд╕реЗрдХрдВрдб рдХреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдФрд░ рдиреНрдпреВрдирддрдо рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рд╕рд╛рде 0.002 рд╕реЗрдХрдВрдб рдХреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рд╕реЗ 5V (VU) рд╕реЗ 1.4V (рддрд╛рд░реНрдХрд┐рдХ 0 рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рд╕реНрддрд░) рдХреЗ рдирд┐рд░реНрд╡рд╣рди рд╕рдордп рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд░ рдФрд░ рд╕реА рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, C рдХрд╛ рдорд╛рди рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕реНрдерд┐рд░ рд╣реИ, рдФрд░ R 50 kOhm (рдкреЛрдЯреЗрдВрд╢рд┐рдпреЛрдореАрдЯрд░ рдорд╛рди) рд╕реЗ рднрд┐рдиреНрди рд╣реИред рд╕рдордп рдХреЛ рд╕рдЯреАрдХрддрд╛ рдХреЗ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛, рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдХреА рдЧрддрд┐, рдФрд░ рдкреНрд░рддрд┐рд░реЛрдзреЛрдВ рдФрд░ рдХреИрдкреЗрд╕рд┐рдЯрд░ рдХреЗ рдЙрдкрд▓рдмреНрдз рдореВрд▓реНрдпреЛрдВ рд╕реЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдирд┐рдХрдЯрддрд╛ рд╕реЗ рдорд┐рд▓рд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред (рдирд┐рдпрдВрддреНрд░рдХ 8 рдореЗрдЧрд╛рд╣рд░реНрдЯреНрдЬ рдХреА рдЖрд╡реГрддреНрддрд┐ рдкрд░ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИ)
рд╕рдореАрдХрд░рдгреЛрдВ рдХреА рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рд░реЛрдХрдиреЗрд╡рд╛рд▓рд╛ R13 рдФрд░ рд╕рдВрдзрд╛рд░рд┐рддреНрд░ C1 рдХреЗ рдореВрд▓реНрдп рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣рд╛рдВ, рдирд┐рдпрдВрддреНрд░рдХ рдЗрдирдкреБрдЯ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдкреНрд░рддрд┐рд░реЛрдз рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рдпрдВрддреНрд░рдХ рдХреА рдЧрддрд┐ рдиреЗ рд╕рд░реНрдХрд┐рдЯ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдбрд┐рд╕реНрдЪрд╛рд░реНрдЬ рд╕рдордп рдХреЛ 0..255 рддрдХ рд░реЗрдВрдЬ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧреБрдгрд╛рдВрдХ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рд╣реИред
рдЖрд░ 12 рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХреЛ рдЪрд╛рд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЫреЛрдЯрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЖрд░ 14 рдХреЛ рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЯреНрд░рд╛рдВрдЬрд┐рд╕реНрдЯрд░ рдХреА рд╕рдВрддреГрдкреНрддрд┐ рдореЛрдб рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рд░реНрдХрд┐рдЯ рдХреЗ рддрддреНрд╡реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреА рдЕрдВрддрд┐рдо рдкрд╕рдВрдж:
рдЖрд░ 12 = 220 рдУрдо;
R13 = 6.8 k13;
рдЖрд░ 14 = 1 рдХреЗ14;
рдЖрд░ 15 = 0..50 k╬й;
рд╕реА 1 = 1 рдпреВрдПрдлред
рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХреЛ рдЪрд╛рд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЯреНрд░рд╛рдВрдЬрд┐рд╕реНрдЯрд░ рдХреЛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдкреИрд░ A0 рдХреЛ рдЙрдЪреНрдЪ рд╕реНрддрд░ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ (DDRA = 3, PORTA = 1) рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рд╕рдВрдзрд╛рд░рд┐рддреНрд░ рдХреЛ рдЪрд╛рд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реНрдпрд╛рдкреНрдд рд▓рдВрдмреЗ рд╕рдордп рддрдХ рджреЗрд░реА рдХреА рдЬрд╛рддреА рд╣реИред рддрдм A0 рдЗрдирдкреБрдЯ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЯреНрд░рд╛рдВрдЬрд┐рд╕реНрдЯрд░ рдЦреБрд▓рддрд╛ рд╣реИ (DDRA = 2, PORTA = 2)ред рдХреИрдкреЗрд╕рд┐рдЯрд░ рдбрд┐рд╕реНрдЪрд╛рд░реНрдЬ рд╣реЛрдирд╛ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдбрд┐рд╕реНрдЪрд╛рд░реНрдЬ рдЯрд╛рдЗрдо рдХреА рдирд┐рдЧрд░рд╛рдиреА рдПрдХ рдЦрд╛рд▓реА рдЪрдХреНрд░ рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рддреА рд╣реИред
рдиреАрдЪреЗ рдбрд┐рд╕реНрдЪрд╛рд░реНрдЬ рд░реЗрдЯ рдХреЛ рдорд╛рдкрдиреЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рд╣реИред
uint8_t readADC() {
рд╕рд░реНрдХрд┐рдЯ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, 8-рдмрд┐рдЯ рд╣рдЯрд╛рдиреЗ рдпреЛрдЧреНрдп рд╕реНрдерд┐рд░ рд╣реИрдВред рдЖрдк рд╢рд╛рдпрдж рдХрдо рд╕рдордп рдХреЗ рд▓рд┐рдП рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЬреЛрдбрд╝рдХрд░ рд╕рд░реНрдХрд┐рдЯ рдХреЛ рдЧрддрд┐ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдкрд░ рд╕реАрдорд╛рдПрдВ рдЗрдирдкреБрдЯ рдкрд░рдЬреАрд╡реА рдЗрдирдкреБрдЯ рд╕рдорд╛рдИ рдФрд░ рдирд┐рдпрдВрддреНрд░рдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рдордп рд╣реИрдВред
рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдбрд┐рд╕реНрдЪрд╛рд░реНрдЬ рдХреЗ рд╕рдордп рдХреЛ 10-20 рдЧреБрдирд╛ рдХрдо рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдФрд░ рдпрд╣ рдкрд░рд┐рдгрд╛рдо рдХреА рд╕рдЯреАрдХрддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред