RockChip RK3288 SoC рдХреЗ рд╕рд╛рде рдЬреБрдЧрдиреВ-рдЖрд░рдХреЗ 3288 рд░реАрд▓реЛрдб рдмреЛрд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдорд╛рдЗрдХреНрд░реЛрдЪрд┐рдк рдбрд┐рдЬрд┐рдЯрд▓ I2C рдерд░реНрдорд▓ рд╕реЗрдВрд╕рд░ - MCP9808

рдЬреБрдЧрдиреВ- RK3288 рд░реАрд▓реЛрдб


рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд╛рд╕ рдмреЛрд░реНрдб рдХрд╛ рдЪрдпрди, рд╡рд┐рдХрд▓реНрдк рдЪреАрдиреА рдирд┐рд░реНрдорд╛рддрд╛ рдЯреА-рдЪрд┐рдк рд╕реЗ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдкрд░рд┐рд╖реНрдХреГрдд рдореЙрдбрд▓ рдкрд░ рдЧрд┐рд░ рдЧрдпрд╛ред рд╡реЗ рдЬреБрдЧрдиреВ рдмреНрд░рд╛рдВрдб рдХреЗ рддрд╣рдд рдЙрддреНрдкрд╛рдж рдмреЗрдЪрддреЗ рд╣реИрдВред рд╡реЗ рд░реЙрдХрд╢рд┐рдк рдЪрд┐рдк рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмреЛрд░реНрдбреЛрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реИрдВред RK3288 рдЗрд╕ рдЪреАрдиреА рдХрдВрдкрдиреА рдХрд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ 32-рдмрд┐рдЯ рд╕рдорд╛рдзрд╛рди рд╣реИред RockChip рдФрд░ Allwinner рд╕реЗ SoC рд░рд╛рд╕реНрдкрдмреЗрд░реАрдкреА рдореЗрдВ рдмреНрд░реЙрдбрдХреЙрдо рдЪрд┐рдкреНрд╕ рдХреЗ рд╕рд╛рде рди рдХреЗрд╡рд▓ рдЙрдирдХреА рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдЙрддреНрдкрд╛рджрди рддрдХрдиреАрдХ рдореЗрдВ рднреА - 28nm рдмрдирд╛рдо 40nmред рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЪреАрдиреА рдЕрдзрд┐рдХ рдорд╣рдВрдЧреЗ рд╣реИрдВред RK3399 рдиреЗ 64-рдмрд┐рдЯ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЪрдпрди рдирд╣реАрдВ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдирдиреЗ рдХрд╛ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреА рдЧрд░реНрдо рд╣реИред рдЬрдмрдХрд┐ RK3288 рд▓реЛрдб рдХреЗ рддрд╣рдд рдмрд╣реБрдд рдЧрд░реНрдо рдирд╣реАрдВ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХрд┐рд╕реА рднреА рд░реЗрдбрд┐рдПрдЯрд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд┐рдирд╛ред

рдЙрддреНрдкрд╛рдж рдкреГрд╖реНрда ред рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдореБрдЦреНрдп рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкреИрд░рд╛рдореАрдЯрд░: 4 рдХреЛрд░ рдПрдЖрд░рдПрдо рдХреЙрд░реНрдЯреЗрдХреНрд╕-рдП 17 1.8 рдЧреАрдЧрд╛рд╣рд░реНрдЯреНрдЬрд╝ (рдХреБрдЫ рд╕реНрд░реЛрдд рдЬреЛрд░ рджреЗрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХреЙрд░реНрдЯреЗрдХреНрд╕-рдП 12 рдпрд╛ рдП 15 рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ), 2 рдЬреАрдмреА рдбреАрдбреАрдЖрд░ 3 рджреЛрд╣рд░реЗ рдЪреИрдирд▓, 16 рдЬреАрдмреА рдИрдПрдорд╕реАрдПрдЪ рдбреНрд░рд╛рдЗрд╡, рдЧреАрдЧрд╛рдмрд┐рдЯ рдИрдерд░рдиреЗрдЯред

рд╕рд╛рдорд╛рдиреНрдп рджреГрд╢реНрдп

рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдмреЗ рдкрд░ рдЦрд░реАрджрд╛, рдпрд╣ рд▓рдЧрднрдЧ рдПрдХрдорд╛рддреНрд░ рдЬрдЧрд╣ рдереА рдЬрд╣рд╛рдВ рдЗрди рдмреЛрд░реНрдбреЛрдВ рдХреЛ рд░реВрд╕ рдХреЛ рдЖрджреЗрд╢ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЪреАрдиреА рдЬреБрдЧрдиреВ рдХрд╛ рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдЦреБрдж рд░реВрд╕ рдирд╣реАрдВ рднреЗрдЬрддрд╛ рд╣реИред рд░реВрд╕ рдФрд░ рдЗрдВрдбреАрдЧреЛрдЧреЛ рдХреЛ рдирд╣реАрдВ рднреЗрдЬрд╛ рдЧрдпрд╛ред рдХреНрдпрд╛ рдордЬрд╝реЗрджрд╛рд░ рд╣реИ, рджреЗрд╢реЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрди рдЕрдЬреАрдм рд▓реЛрдЧреЛрдВ рдХреЛ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд░рд╛рдЬреНрдп рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВ :)ред рдПрдмреЗ рдХреЗ рд╕рд╛рде рд╡рд┐рдХреНрд░реЗрддрд╛ рдиреЗ рдЕрдЪреНрдЫреЗ рд╡рд┐рдиреНрдпрд╛рд╕ рдореЗрдВ рдПрдХ рдмреЛрд░реНрдб рднреЗрдЬрд╛ - рдПрдХ рдмреЛрд░реНрдб, рдПрдХ рдмрд┐рдЬрд▓реА рдХреА рдЖрдкреВрд░реНрддрд┐ (рдЖрдкрдХреЛ 12 рд╡реА 1.5 рдП рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕реЗ 2 рдП рдХреЗ рдорд╛рд░реНрдЬрд┐рди рдХреЗ рд╕рд╛рде рднреЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП), рдПрдХ рджреБрдкрдЯреНрдЯрд╛ рдПрдВрдЯреАрдирд╛ рдХреЗ рд╕рд╛рде, рдлрд╛рд╕реНрдЯрдирд░реЛрдВ рдХреЗ рд╕рд╛рде рдорд╛рдорд▓реЗ рдХреЗ рдРрдХреНрд░реЗрд▓рд┐рдХ рдкреИрдирд▓ред рдПрдбреЙрдкреНрдЯрд░ рдПрдХ рдЕрдореЗрд░рд┐рдХреА рдЖрдЙрдЯрд▓реЗрдЯ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рд╣рд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рд╣рд╛рдЗрдХрд┐рдВрдЧ рдПрдбрд╛рдкреНрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП :)ред

рдХреНрдпреВрдмреАрдЯреЗрдХ рдХреЗ рдХреНрдпреВрдмреА рдмреЛрд░реНрдб рдХреА рддрд░рд╣, рдЬреЛ рд░реВрд╕реА рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдмреЗрд╣рддрд░ рд░реВрдк рд╕реЗ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреБрдЧрдиреВ рдЕрдЪреНрдЫреА рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдУрдПрд╕ рдЪрд┐рддреНрд░, рдкрд┐рдирдЖрдЙрдЯ рдЖрд░реЗрдЦ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬреБрдЧрдиреВ рдХреЗ рд▓рд┐рдП Ubuntu 14 рдлрд░реНрдорд╡реЗрдпрд░ рдкреНрд░рд╢рдВрд╕рд╛ рдХреЗ рдпреЛрдЧреНрдп рд╣реИред рдпрд╣ stably, рдХрдо рд╕реНрдореГрддрд┐ рдЦрдкрдд рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЧреНрд░рд╛рдлрд┐рдХ рдбреЗрд╕реНрдХрдЯреЙрдк - LXDEред рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдкреНрд░рддрд┐рдкрд╛рджрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреЗрдЬ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдлреА рд╕рднреНрдп рд╣реИред рд╡реИрд╕реЗ, LXDE рдореЗрдВ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд▓реЗрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдПрдХ рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ: Lxde рд╡рд┐рдХреА ред рдЕрдиреНрдп рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рд╕рдордп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рд╣реИ: dpkg-reconfigure tzdata рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ ред рд╣рд╛рдВ, рдЖрдк рдХрднреА рднреА рдЕрдиреБрдорд╛рди рдирд╣реАрдВ рд▓рдЧрд╛рдПрдВрдЧреЗ рдХрд┐ рдХрд┐рд╕реА рднреА рд▓рд┐рдирдХреНрд╕ рд╢реЗрд▓ рдореЗрдВ, рдЧреИрд░-рддреБрдЪреНрдЫ рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред



рдмреЛрд░реНрдб рдореЗрдВ рдПрдХ рд╕реИрдВрдбрд╡рд┐рдЪ рд╕рдВрд░рдЪрдирд╛ (рд╕реИрдВрдбрд╡рд┐рдЪ рд╢реИрд▓реА) рд╣реИред рдХреЛрд░ рдмреЛрд░реНрдб рдореЗрдВ SoC RockChip, RAM рдФрд░ рдПрдХ рд╕реИрдорд╕рдВрдЧ рдбреНрд░рд╛рдЗрд╡, Realtek рдХрд╛ рдИрдерд░рдиреЗрдЯ рдФрд░ рд╕рд╛рде рд╣реА рдПрдХ рдПрдХреНрдЯрд┐рд╡ рдкреЙрд╡рд░ рдФрд░ рдореЙрдирд┐рдЯрд░рд┐рдВрдЧ рдЪрд┐рдк рд╣реИред рдореБрдЦреНрдп рдмреЛрд░реНрдб рдореЗрдВ рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рд▓реЛрдВрдЯрд┐рдпрдо рдПрдЪрдбреАрдПрдордЖрдИ рдЖрдЙрдЯрдкреБрдЯ рдХрдВрдЯреНрд░реЛрд▓рд░ (рдХреЗрд╡рд▓ рджреЛ рдЖрдЙрдЯрдкреБрдЯ), рддреЛрд╢рд┐рдмрд╛ рдПрдЪрдбреАрдПрдордЖрдИ рдЗрдирдкреБрдЯ, рдЬреЗрдореАрдХреНрд░реЙрди рдпреВрдПрд╕рдмреА-рдПрд╕рдПрдЯреАрдП рдмреНрд░рд┐рдЬ, рд╡рд╛рдпрд░рд▓реЗрд╕ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдореНрдкрдк рдЪрд┐рдкред рджреЛ рднрд╛рдЧ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдорд╛рдирдХ MXM3.0 рд╕реНрд▓реЙрдЯ (рдореЛрдмрд╛рдЗрд▓ PCI рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдореЙрдбреНрдпреВрд▓) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВред рдмреЛрд░реНрдб рдореЗрдВ рдХрдИ рдЗрдВрдЯрд░рдлреЗрд╕ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдкрд┐рди рдХреЗ рдЪрд╛рд░ рдореБрдЦреНрдп рдмреНрд▓реЙрдХ рд╣реИрдВ, рдХреБрд▓ 184 рдкрд┐рди рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдирд┐рд░реНрдорд╛рддрд╛ рдиреЗ рдорд╛рдБ рдХрдиреЗрдХреНрдЯрд░реНрд╕ рдкрд░ рд╕реНрдЯреЗрдВрдЯ рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдХрдИ 12 рд╡реА рдмрд┐рдЬрд▓реА рд▓рд╛рдЗрдиреЗрдВ рддрд▓рд╛рдХрд╢реБрджрд╛ рд╣реИрдВред

рдмреВрдЯ-рдореЛрдб рдФрд░ рдлрд░реНрдорд╡реЗрдпрд░


рдмреЛрд░реНрдбреЛрдВ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдлреНрд▓реИрд╢ рдХрд░рдирд╛ рд╣реИред рд╡рд┐рдХрд╛рд╕ рдмреЛрд░реНрдбреЛрдВ, IoT рдФрд░ рдЙрди рд╕рднреА рдХреЗ рд╕рд╛рде рдХрднреА-рдХрднреА рдмрд╛рддрдЪреАрдд рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд▓рд┐рдирдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рд░рдЦрдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рд╕рднреА 26 рд╡реЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкрд╛рд░рдВрдкрд░рд┐рдХ рд░реВрдк рд╕реЗ рд▓рд┐рдирдХреНрд╕ рдлреЗрдбреЛрд░рд╛ 64 рдмрд┐рдЯ рд╣реИред рдмреВрдЯ рдореЛрдб рдореЗрдВ рдмреЛрд░реНрдб рд▓рдЧрд╛рдиреЗ рдФрд░ рдУрдПрд╕ рдЫрд╡рд┐ рдХреЛ рдЪрдордХрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдирд┐рд░реНрджреЗрд╢: рдлреНрд▓реИрд╢ рдЫрд╡рд┐ ред

рдЪреВрдВрдХрд┐ рд░реЙрдХрд╢рд┐рдк рдХреЗ рдЕрдкрдЧреНрд░реЗрдб_рдЯреВрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЬрд░реВрд░рдд рд╣реИ ред рдФрд░ рдореЗрдЬрдмрд╛рди рдкреАрд╕реА рдкрд░ рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдг рдХрд╛ рд╣рд░ рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реЗ рд╣реИрдВред
рдореИрдВ рдУрдПрд╕ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмреВрдЯ рдХрд░рдиреЗ рдФрд░ рдУрдПрд╕ рдЫрд╡рд┐ рдХреЛ рднрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреА рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ:

1.  . 2.     ( micro USB - USB). 3.        : -     RECOVER -   RESET -      RECOVER 4.  -   Linux Upgrade Tool (     ): - [user@nb-linuxfedora data-arm]$ unzip Linux_Upgrade_Tool_v1.24.zip - [user@nb-linuxfedora data-arm]$ cd Linux_Upgrade_Tool_v1.24/ - [user@nb-linuxfedora Linux_Upgrade_Tool_v1.24]$ sudo mv upgrade_tool /usr/local/bin/ - [user@nb-linuxfedora Linux_Upgrade_Tool_v1.24]$ sudo chown root:root /usr/local/bin/upgrade_tool - [user@nb-linuxfedora Linux_Upgrade_Tool_v1.24]$ cd /usr/local/bin/ - [user@nb-linuxfedora bin]$ -  ,    upgrade_tool      5.  Linux Upgrade Tool   <update>.img   (         ): [user@nb-linuxfedora bin]# sudo upgrade_tool -  ,       ,      Fedora,    .   Fedora 26       . ,   : libudev.so.1, libstdc++.so.6.          Linux    ,   Fedora : [user@linux]# dnf install libudev.so.1 installing: libcap-2.25-5.fc26.i686.rpm libgpg-error-1.25-2.fc26.i686.rpm xz-libs-5.2.3-2.fc26.i686.rpm systemd-libs-233-6.fc26.i686.rpm libgcc-7.2.1-2.fc26.i686.rpm libselinux-2.6-7.fc26.i686.rpm lz4-libs-1.8.0-1.fc26.i686.rpm libgcrypt-1.7.8-1.fc26.i686.rpm libsepol-2.6-2.fc26.i686.rpm pcre-8.41-1.fc26.i686.rpm [user@linux]# dnf install libstdc++.so.6 installing: libstdc++.i686 7.2.1-2.fc26   -   : [user@nb-linuxfedora bin]# sudo upgrade_tool : List of rockusb connected DevNo=1 Vid=0x2207,Pid=0x320a,LocationID=302 Loader Found 1 rockusb,Select input DevNo,Rescan press <R>,Quit press <Q>:1  "1"      .    uf. Rockusb>uf Firefly-RK3288-Reload_DualBoot_201612101121.img : Loading firmware... Support Type:RK32 FW Ver:5.0.00 FW Time:2016-12-10 11:21:47 Loader ver:2.30 Loader Time:2016-10-13 10:04:54 ( ...) Upgrade firmware ok. Rockusb>q 

рдХреЗ рдЙрдкрдпреЛрдЧ


рд╕рдлрд▓ Firefly-RK3288 рд░реАрд▓реЛрдб рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рдмрд╛рдж, USB рдХреЗрдмрд▓ рдХреЛ рдбрд┐рд╕реНрдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред рдФрд░ рдЖрдк рдПрдХ рдореЙрдирд┐рдЯрд░, рдХреАрдмреЛрд░реНрдб, рдорд╛рдЙрд╕ рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЬреА ++ рдХрдВрдкрд╛рдЗрд▓рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдЬреБрдЧрдиреВ рдХреЗ рд▓рд┐рдП Ubuntu LXDE рдореЗрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛, рдиреНрдпреВрдирддрдо рдкрд░реНрдпрд╛рдкреНрдд рд╕реЗрдЯ рд╣реИред рдмреЗрд╢рдХ, рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд░реНрдорд┐рдирд▓ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рд┐рд╕реНрдЯрдо рдореЙрдирд┐рдЯрд░, рд▓реАрдлрдкреИрдб рдкрд╛рда рд╕рдВрдкрд╛рджрдХ, рдСрди-рд╕реНрдХреНрд░реАрди рдХреАрдмреЛрд░реНрдб, рдлрд╝рд╛рдЗрд▓ рдореИрдиреЗрдЬрд░, рдореАрдбрд┐рдпрд╛ рдкреНрд▓реЗрдпрд░, рдХреНрд░реЛрдорд┐рдпрдо рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рд╣реИред

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдХреА рдПрдХ рдЬреЛрдбрд╝реА:

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

рдЫрд╡рд┐
рдЕрдЪреНрдЫреА рдЧреБрдгрд╡рддреНрддрд╛ рдореЗрдВ рдлрд┐рд▓реНрдореЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА RK3288 рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╕реАрдкреАрдпреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд▓рдЧрднрдЧ 50% рд╣реИред

I2C рдкрд░рд┐рдзреАрдп рдФрд░ GPIO рдкрд┐рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


рд╢рд╛рдпрдж рдРрд╕реЗ рдмреЛрд░реНрдбреЛрдВ рдХреА рд╕рдмрд╕реЗ рдореВрд▓реНрдпрд╡рд╛рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ, GPIO рдФрд░ рдЕрдиреНрдп рдЗрдВрдЯрд░рдлреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ I2C рдмрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд░рд┐рдзреАрдп рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реИред рдЬреБрдЧрдиреВ RK3288 рд░реАрд▓реЛрдб рдореЗрдВ рдЪрд╛рд░ I2C рдмрд╕реЗрдВ рд╣реИрдВ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкрд╛рдВрдЪ, рд▓реЗрдХрд┐рди рдмреЛрд░реНрдб рдХреА рдЖрдВрддрд░рд┐рдХ рдЬрд░реВрд░рддреЛрдВ рдХреЗ рд▓рд┐рдП рд╢реВрдиреНрдп рдмрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЕрдиреНрдп рдЪрд╛рд░ - 1 рд╕реЗ 4 рддрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддрд▓рд╛рдХрд╢реБрджрд╛ рд╣реИрдВред

I2C рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╛рдорд╛рдиреНрдп рдЬрд╛рдирдХрд╛рд░реА рд╣реИред рдЯрд░реНрдорд┐рдирд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ I2C рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ: "рд▓реБрдмрдВрдЯреВ рдХреЗ рд╕рд╛рде рдХреНрдпреВрдмрд┐рдХрдмреЛрд░реНрдб рдкрд░ I2C" , рд╡реЗ рд╡рд╣рд╛рдВ рдПрдХ "рдХреНрдпреВрдм" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред

рдФрд░ I2C рдмрд╛рд╣реНрдп рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╡рд░реНрдЪреБрдЕрд▓реА рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, I2C рдмрд╕реЛрдВ рдХреЗ рдлрд╛рдЗрд▓ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдЗрд╕рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: "рдЗрдВрдЯрд░рдлреИрд╕рд┐рдВрдЧ рд╡рд┐рде рдЖрдИ 2 рд╕реА рдбрд┐рд╡рд╛рдЗрд╕реЗрд╕" ред
рдкрд░рд┐рдзреАрдп рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ I2C рдиреЗ рдПрдХ рдорд╛рдЗрдХреНрд░реЛрдЪрд┐рдк рддрд╛рдкрдорд╛рди рд╕рдВрд╡реЗрджрдХ - MCP9808 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдирд┐рд░реНрдорд╛рддрд╛ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдЦреЛрдЬрдирд╛ рдЖрд╕рд╛рди рд╣реИред рдпрд╣ рдмрд╛рдЬрд╛рд░ рдореЗрдВ рдЙрдЪреНрдЪрддрдо рдЧреБрдгрд╡рддреНрддрд╛ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рдВрдЧреЗ рд╕реЗрдВрд╕рд░ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЯреАрдЖрдИ рдФрд░ рдПрдирдПрдХреНрд╕рдкреА рдПрд▓рдПрдо рд╕реАрд░реАрдЬ рд╕реЗрдВрд╕рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╛рдлреА рддреЗрдЬ рдФрд░ рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реИред

рдЫрд╡рд┐

рдореИрдВрдиреЗ рдЗрд╕ рд╕реЗрдВрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдорд┐рдиреА рдмреЛрд░реНрдб CJMCU-9808 рдХреЗ рд▓рд┐рдП рдЯрд╛рдВрдХрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ Ebay рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ - рджреЛрдиреЛрдВ рд╕реЗрдВрд╕рд░реЛрдВ рдФрд░ рдбреБрдкреЛрдВрдЯ рддрд╛рд░реЛрдВ - рдЯрд╛рдВрдХрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрд┐рдирд╛ред рдХрдиреЗрдХреНрд╢рди рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ: VCC - 3.3V рдкрд╛рд╡рд░, GND - рдХреЛ рдЧреНрд░рд╛рдЙрдВрдб, SCL рдФрд░ SDA рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ I2C рдмрд╕ (рдШрдбрд╝реА рдХреА рд░реЗрдЦрд╛рдПрдВ рдФрд░ рдбреЗрдЯрд╛, рдХреНрд░рдорд╢рдГ) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рдкрд┐рди A0 A1 A2 I2C рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ 7-рдмрд┐рдЯ рдПрдбреНрд░реЗрд╕ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, ALERT рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдирд╣реАрдВ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдЕрд▓рд╛рд░реНрдо рд▓рд╛рдЗрди рдЕрднреА рднреА рдЖрдЧреЗ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧреАред рдлреЛрдЯреЛ рдореЗрдВ, рддрд╛рдкрдорд╛рди рд╕рдВрд╡реЗрджрдХ I2C 1 рдмрд╕ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ, рд╕рднреА рдкрддреЗ рдХреЗ рд╕рдВрдкрд░реНрдХ рдХреЛ рдЬрдореАрди рдкрд░ рдЦреАрдВрдЪ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╕рдВрдмрдВрдзрд┐рдд рдкрддреЗ рдмрд┐рдЯ рдореЗрдВ рдПрдХ рддрд╛рд░реНрдХрд┐рдХ 0 рд╣реИ, рдпрджрд┐ рдкрддрд╛ рд╡рд╛рдпрд░рд┐рдВрдЧ рдХреЛ 3.3V рдкрд╛рд╡рд░ рдореЗрдВ рдкреНрд▓рдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдпрд╣ рдмрд┐рдЯ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реЛрдЧрд╛ред MCP9808 рдЪрд┐рдк рдХрд╛ рдЖрдзрд╛рд░ рдкрддрд╛ b0011 рдФрд░ рд╣реИ рдЖрдЧреЗ A2 A1 A0ред рдХреЗрд╡рд▓ рд╕рд╛рдд рдмрд┐рдЯреНрд╕, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ - b0011000, рдЕрд░реНрдерд╛рддреН рд╣реЗрдХреНрд╕ рдореЗрдВ - 0x18ред

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдХрдВрд╕реЛрд▓ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрддреНрдкрд╛рджрди рд╣реЛрдЧрд╛:

 root@firefly:/home/firefly# i2cdetect -y -r 1 0 1 2 3 4 5 6 7 8 9 abcdef 00: -- -- -- -- -- -- -- -- -- -- -- -- UU 10: -- -- -- -- -- -- -- -- 18 -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- 

рдпрд╣ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ I2C рдмрд╕ рдирдВрдмрд░ 1 рдкрд░ 0x18 рдкрддреЗ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╣реИред

рдХреЙрд▓ рдХрд░реЗрдВ:
рд░реВрдЯ @ рдЬреБрдЧрдиреВ: / рдШрд░ / рдЬреБрдЧрдиреВ # i2cget -y 1 0x18 0x05 w
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджреЗ рджреЗрдВрдЧреЗ: 0xbc01 (рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ 27.75 C рдХрд╛ рддрд╛рдкрдорд╛рди)ред

I2cget рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░: 1 - рдмрд╕ рдирдВрдмрд░; 0x18 - рдбрд┐рд╡рд╛рдЗрд╕ рдмрд╕ рд╕реЗ рдЬреБрдбрд╝рд╛ рдкрддрд╛; 0x05 - рд░рдЬрд┐рд╕реНрдЯрд░ рдкрддрд╛ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рддрд╛рдкрдорд╛рди); w - рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд░рдЬрд┐рд╕реНрдЯрд░ 2 рдмрд╛рдЗрдЯреНрд╕ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред

рдмреЗрд╢рдХ, рдЖрдк MCP9808 рдХреЛ рдЕрдкрдиреЗ C ++ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗ рдЕрдзрд┐рдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рддрд╛рдкрдорд╛рди рд░рдЬрд┐рд╕реНрдЯрд░ рдХреА рд╕рд╛рдордЧреНрд░реА - 0xbc01 - рдЙрд▓реНрдЯрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдЗрд╕реЗ 0x01bc рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкрд╣рд▓реЗ рдмрд╛рдЗрдЯ 0x01 рдореЗрдВ рдЕрд▓рд╛рд░реНрдо рдХреЗ рдХрд╛рд░рдг рдХреЗ рддреАрди рдмрд┐рдЯреНрд╕, рд╕рд╛рдЗрди рдХрд╛ рдПрдХ рдмрд┐рдЯ рдФрд░ рддрд╛рдкрдорд╛рди рдХреЗ рдЪрд╛рд░ рдЙрдЪреНрдЪ рдмрд┐рдЯреНрд╕ рд╣реЛрддреЗ рд╣реИрдВред рджреВрд╕рд░реЗ рдмрд╛рдЗрдЯ 0xbc рдореЗрдВ рддрд╛рдкрдорд╛рди рдХреЗ рдирд┐рдЪрд▓реЗ рдЖрда рдмрд┐рдЯреНрд╕ рд╣реЛрддреЗ рд╣реИрдВред рдорд╛рдЗрдХреНрд░реЛрдЪрд┐рдк рддрд╛рдкрдорд╛рди рд░рдЬрд┐рд╕реНрдЯрд░ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рджреЛ рдХреЗ рдкреВрд░рдХ рдкреНрд░рд╛рд░реВрдк рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдиреНрдХреЛрдб рдХрд░рддрд╛ рд╣реИред рдПрдХ рдбрдмрд▓-рдмрд╛рдЗрдЯ рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЗ рдмрд╛рд░рд╣рд╡реЗрдВ рдмрд┐рдЯ рдПрдХ рдЪрд░рд┐рддреНрд░ рдХреЛ рдПрдирдХреЛрдб рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ 0 рд╣реИ, рддреЛ рддрд╛рдкрдорд╛рди рд╕рдХрд╛рд░рд╛рддреНрдордХ рд╣реИред рдпрджрд┐ рдЧреНрдпрд╛рд░рд╣рд╡реАрдВ рдмрд┐рдЯ 1 рд╣реИ, рддреЛ рдЧрдгрдирд╛ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡реЗрд╢ рдХреЗ рддрд╛рдкрдорд╛рди рдкрд░ рдЖрдкрдХреЛ 2 рдХреЛ 7 рдбрд┐рдЧреНрд░реА рд╕реЗрд▓реНрд╕рд┐рдпрд╕ - 2 ^ 7 (128 рд╕реА) рдХреА рдбрд┐рдЧреНрд░реА рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдпрджрд┐ - 0 рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ, рддреЛ - рдХреБрдЫ рднреА рдирд╣реАрдВ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕реА рддрд░рд╣, рджрд╕рд╡реАрдВ рдмрд┐рдЯ рдореЗрдВ 1 2 ^ 6 (64 C) рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рдФрд░ рдЗрд╕реА рддрд░рд╣, рдЪреМрдереЗ рдмрд┐рдЯ рдореЗрдВ 1 2 ^ 0 (1 C) рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рддреАрд╕рд░реЗ рдмрд┐рдЯ рдореЗрдВ 1 2 ^ -1 (0.5 C) рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред 1 рдЕрдВрддрд┐рдо рдореЗрдВ - рд╢реВрдиреНрдп рдмрд┐рдЯ 2 ^ -4 (0.0625 C) рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред рдпрджрд┐ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд╛ рдереЛрдбрд╝рд╛ (12 рд╡рд╛рдВ) 1 рд╣реИ, рддреЛ рдШрд░ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реА рдкрд░реЗрд╢рд╛рдиреА рдирдХрд╛рд░рд╛рддреНрдордХ рд╣реИред рдФрд░ рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд╛ рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдХреБрдЫ рдЬрдЯрд┐рд▓ рд╣реИред рджреЛ рдХреЗ рдкреВрд░рдХ рдкреНрд░рд╛рд░реВрдк рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдмрд┐рдЯреНрд╕ рдХреЛ рдкрд▓рдЯрдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рдЖрдкрдХреЛ рдХрдо рд╕реЗ рдХрдо рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдмрд┐рдЯ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдирдХрд╛рд░рд╛рддреНрдордХ рдорд╛рди 0 рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рдмрд▓реНрдХрд┐ -1 рдХреЗ рд╕рд╛рде рдПрдиреНрдХреЛрдб рдХрд┐рдП рдЧрдП рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рддрд╛рдкрдорд╛рди рд╕рдВрд╡реЗрджрдХ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рддреЗ рд╕рдордп, рдЕрдзрд┐рдХрддрдо рд╕рдЯреАрдХрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - 0.0625 рд╕реА рддрдХред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдкрдХреЛ рдЕрдВрддрд┐рдо рдмрд┐рдЯ рдореЗрдВ рдПрдХ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ 0.0625 рд╕реА рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдЖрдк рдмрд╕ рддрд╛рдкрдорд╛рди рд░рдЬрд┐рд╕реНрдЯрд░ рдореВрд▓реНрдп рдореЗрдВ 1 рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧрддрд┐ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддрд╛рдкрдорд╛рди рдорд╛рдк рдХреА рд╕рдЯреАрдХрддрд╛ рдХреЛ рдХрдо рдХрд░реЗрдВред рдлрд┐рд░ рдПрдХ рдирдХрд╛рд░рд╛рддреНрдордХ рддрд╛рдкрдорд╛рди рдкрд░, рдЖрдкрдХреЛ рдкреБрд░рд╛рдиреЗ рдмрд┐рдЯ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ рдпрд╛ рдЗрд╕ рдмрд┐рдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдВрдмрд░ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рдлрд┐рд░ рдмрд┐рдЯреНрд╕ рдХреЛ рддрд╛рдкрдорд╛рди рдорд╛рди рдореЗрдВ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрд╡рд╛рдж рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЬреИрд╕реЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдорд╛рдорд▓реЗ рдореЗрдВред

GPIO рдФрд░ рдЕрд▓рд╛рд░реНрдо рд▓рд╛рдЗрди


рдЫрд╡рд┐рдЫрд╡рд┐

рдЖрдк рд╕реЗрдВрд╕рд░ рдХреА рдЕрд▓рд╛рд░реНрдо рд▓рд╛рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬрд┐рд╕рдореЗрдВ рдЬреБрдЧрдиреВ рдХреА GPIO рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред рдлреЛрдЯреЛ рдореЗрдВ, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдЯрд┐рди рдФрд░ рдПрдХ рдкреБрд░рд╛рддрди рдПрд▓рдИрдбреА рдФрд░ рдкреНрд░рддрд┐рд░реЛрдз рдХреЗ рд╕рд╛рде рдЬрд▓рд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рд╕рд┐рджреНрдзрд╛рдВрдд рд╕реНрд╡рдпрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред GPIO рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ Habr├й: Linux: рдмрдЯрди, LEDs рдФрд░ GPIO рдкрд░ рдПрдХ рдЕрдиреНрдп рд▓реЗрдЦ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрд┐рдд рд╣реИред рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдиреЛрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХреМрди рд╕рд╛ Gpio рдирдВрдмрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рд╣реИред рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ Gpio рдХреА рдХреМрди рд╕реА рд▓рд╛рдЗрдиреЗрдВ рд╡реНрдпрд╕реНрдд рд╣реИрдВ рдФрд░ рдХреМрди рд╕реА рдирд╣реАрдВ рд╣реИрдВ, рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

 root@firefly:/home/firefly# cat /sys/kernel/debug/gpio > /home/firefly/_temp/temp 

рдЯреАрдо

 firefly@firefly:~$ dmesg 

Gpio рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рднреА рджрд┐рдЦрд╛рддрд╛ рд╣реИред

рдЕрдзреНрдпрдпрди рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, GPIO рдкрд┐рди рдирдВрдмрд░ 262ред рдЬрд┐рд╕реЗ рдмреЛрд░реНрдб рдкрд░ рдФрд░ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдореЗрдВ GPIO8 A6 рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдмреЛрд░реНрдб рдореЗрдВ, рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣, GPIO рдмреНрд▓реЙрдХ рдореЗрдВ 32 рддрддреНрд╡ рд╣реИрдВред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐, рд╢рд╛рдпрдж, рдЬрд╛рджреВ рдлрд╛рд░реНрдореВрд▓рд╛ рдпрд╣ рд╣реИ: рдкреЛрд╕реНрдЯрдлрд╝рд┐рдХреНрд╕ рд╕реЗ 32 * GPIO рдмреНрд▓реЙрдХ рдирдВрдмрд░ + рдирдВрдмрд░ред рддреЛ, рд╣рдо рд╕рд┐рд░реНрдл 32 * 8 + 6 = 262 рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдм, рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рд╣рдо рдЗрд╕ Gpio 262 рд▓рд╛рдЗрди рдХреЛ 3.3V рдмрд┐рдЬрд▓реА рдХреА рдЖрдкреВрд░реНрддрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЬрдм рд╣рдо рдЗрд╕рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддреЗ рд╣реИрдВ, рддреЛ рдРрд╕рд╛ рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрдВред

MCP9808 рдХреЗ рд▓рд┐рдП рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЙрд╕ рдкрд░ ALARM рд▓рд╛рдЗрди рдЦреБрд▓реА рдирд╛рд▓реА рд╣реИ, рдЕрд░реНрдерд╛рддред рдЦреБрд▓рд╛ рд╕реНрдЯреЙрдХред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдХреЛрдИ рдЕрд▓рд╛рд░реНрдо рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд▓рд╛рдЗрди рдЬрдореАрди рдкрд░ рдЬрд╛рддреА рд╣реИ, рдЕрдиреНрдпрдерд╛ рдЗрд╕реЗ рдЫреЛрдЯрд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рд░реЛрдХрдиреЗрд╡рд╛рд▓рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░ рднреА рдЬреЛрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЕрдиреНрдпрдерд╛, рд╡рд░реНрддрдорд╛рди рдХреЗ рдкрд╛рд░рд┐рдд рд╣реЛрдиреЗ рдХреЗ рд╕рд╛рде, рд╕реЗрдВрд╕рд░ рдХрд╛ рдЗрдВрдЯреАрд░рд┐рдпрд░ рдЙрдЪреНрдЪ рддрд╛рдкрдорд╛рди рддрдХ рдЧрд░реНрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдирд┐рдореНрди рдЪрд┐рддреНрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ: GPIO рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рд╕реЗрдВрд╕рд░ рдХреА рдПрд▓рдИрдбреА, рдкреНрд░рддрд┐рд░реЛрдз, рдЦреБрд▓реА рдирд╛рд▓реА (ALARM) рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИред рдпрд╣ рдЕрдиреБрдореЗрдп рддрд╛рдкрдорд╛рди рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд░рдЬрд┐рд╕реНрдЯрд░ MCP9808 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИред рдЬрдм рдЙрд╕ рдкрд╛рд░ рдЬрд╛рдирд╛ рд╣реИ, рддреЛ рдПрдХ рдЕрд▓рд╛рд░реНрдо рд╣реЛрдЧрд╛ред рдЖрдк рдПрдХ рдЙрдЪреНрдЪ рддрд╛рдкрдорд╛рди рдХреЗ рджреЛ рд╕реНрддрд░ рдФрд░ рдПрдХ рд╕реНрддрд░ рдмрд╣реБрдд рдХрдо рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдЗрд╕ рдбрд┐рдЬрд┐рдЯрд▓ рд╕реЗрдВрд╕рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЖрдкрдХреЛ рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рдкрдврд╝рдиреЗ, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЛрдб рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ, рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдиреЗ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЬрдм рддрд╛рдкрдорд╛рди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕реАрдорд╛рдУрдВ рд╕реЗ рдкрд░реЗ рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд░реНрддрдорд╛рди рдЕрд▓рд╛рд░реНрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЧреБрдЬрд░рддрд╛ рд╣реИ рдФрд░ рдПрд▓рдИрдбреА рдХреЛ рдкреНрд░рдХрд╛рд╢ рджреЗрдЧрд╛ред

рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ


рдореИрдВ рд╡рд┐рдХрд╛рд╕ рдмреЛрд░реНрдбреЛрдВ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдПрд▓рдИрдбреА рдХреА рдЪрдордХ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдпреЛрдЧреА рдЪрд╛рд▓ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред Cubieboard 6 рдХреЗ рдореИрдиреБрдЕрд▓ рдореЗрдВ LED1 рдХреЛ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:

 $echo default-on > /sys/class/leds/led1-GPIOB9/trigger 

рдФрд░ LED1 рдХреЛ рдХреИрд╕реЗ рдмрдВрдж рдХрд░реЗрдВ:

 $echo none > /sys/class/leds/led1-GPIOB9/trigger 

рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдерд╛ рдХрд┐ рдЬреБрдЧрдиреВ 3288 рд░реАрд▓реЛрдб рдореЗрдВ рдПрд▓рдИрдбреА рдХреЛ рдХреИрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред
рдкреАрд▓рд╛ рдХрд╕реНрдЯрдо рдПрд▓рдИрдбреА рдЪрд╛рд▓реВ рдХрд░рдирд╛ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдиреАрд▓реА рдПрд▓рдИрдбреА):

 root@firefly:/home/firefly# echo default-on > /sys/class/leds/firefly:yellow:user/trigger 

рдЗрд╕ рдПрд▓рдИрдбреА рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛:

 root@firefly:/home/firefly# echo none > /sys/class/leds/firefly:yellow:user/trigger 

рд╕рд╛рд╡рдзрд╛рдирд┐рдпреЛрдВ


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

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


All Articles