{"id":330127,"date":"2022-02-25T15:00:59","date_gmt":"2022-02-25T15:00:59","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=330127"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=330127","title":{"rendered":"<span>Kincony KC868-A8: \u0441\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0440\u0430\u0442 \u0438\u0437 \u0425\u0430\u043d\u0447\u0436\u043e\u0443. \u0427\u0430\u0441\u0442\u044c 2. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u0443\u0435\u043c A8<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\"><a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/652883\/\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/xs\/be\/zt\/xsbezt3hvfimclrbsmra7l5zute.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/xs\/be\/zt\/xsbezt3hvfimclrbsmra7l5zute.jpeg\" data-blurred=\"true\"\/><\/a><\/p>\n<p>  \u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/651109\/\">\u0441\u0442\u0430\u0442\u044c\u0435<\/a> \u043c\u044b \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c Kincony KC868-A8 \u0438 \u0435\u0433\u043e \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u043e\u0439, \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0435\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 (\u0432\u0445\u043e\u0434\u043e\u0432, \u0440\u0435\u043b\u0435, \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u043d\u044b\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432, Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0438 \u0442. \u0434.). \u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043a\u043e\u0434\u0430 \u0438\u0437 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u043d\u0430 KC868-A8.<\/p>\n<p>  \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0438 Kincony <a href=\"https:\/\/habr.com\/en\/company\/ruvds\/blog\/646923\/\">KC868-A4<\/a> \u0438 KC868-A8, \u043d\u043e \u043d\u0430\u0448 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u043f\u043e\u0434\u043e\u043f\u044b\u0442\u043d\u044b\u0439 \u0441 \u0435\u0433\u043e 8-\u044e \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u043c\u0438 \u0432\u0445\u043e\u0434\u0430\u043c\u0438, 8-\u044e \u0440\u0435\u043b\u0435 \u043d\u0430 \u0431\u043e\u0440\u0442\u0443, I2C \u0440\u0430\u0437\u044a\u0451\u043c\u043e\u043c \u0438 Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c \u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u0432\u043d\u0443\u0448\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0438 \u0442\u0430\u043a \u0438 \u043f\u0440\u043e\u0441\u0438\u0442\u0441\u044f \u0432 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0442\u0430\u043c \u0438 \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u043e, \u0438 \u043a\u0430\u043a \u0432\u0441\u0435\u043c \u044d\u0442\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c.<\/p>\n<p>  \u0420\u0430\u0437\u0431\u043e\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f KC868-A8 \u043c\u044b \u043d\u0430\u0447\u043d\u0451\u043c \u0441 \u0440\u0430\u0441\u043f\u0438\u043d\u043e\u0432\u043a\u0438 ESP32 \u0438 \u0432\u044b\u044f\u0441\u043d\u0435\u043d\u0438\u044f, \u0447\u0442\u043e \u0438 \u043a\u0430\u043a \u043a \u043d\u0435\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Kincony.<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u0420\u0430\u0441\u043f\u0438\u043d\u043e\u0432\u043a\u0430 KC868-A8<\/font><\/h2>\n<p>  \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043c\u0441\u044f \u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u0432\u0441\u0435\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430. \u041a\u0440\u043e\u043c\u0435 ESP32 (ESP-WROOM-32) \u043c\u043e\u0434\u0443\u043b\u044f, \u043f\u043b\u0430\u0442\u0430 Kincony KC868-A8 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442:<\/p>\n<ul>\n<li>8 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u043e\u043f\u0442\u043e\u0440\u0430\u0437\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 (\u00ab\u0441\u0443\u0445\u043e\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u00bb);<\/li>\n<li>2 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u0430 0\u20135 \u0412;<\/li>\n<li>8 \u0440\u0435\u043b\u0435 10\u0410 220\u0412;<\/li>\n<li>4 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u0430 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u043d\u044b\u0445 \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432;<\/li>\n<li>\u0420\u0430\u0437\u044a\u0451\u043c\u044b \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 \u043f\u0440\u0438\u0451\u043c\u043d\u0438\u043a\u0430\/\u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 433 \u041c\u0413\u0446;<\/li>\n<li>\u0420\u0430\u0437\u044a\u0451\u043c I2C;<\/li>\n<li>Ethernet LAN8270A.<\/li>\n<\/ul>\n<p>  \u0417\u0434\u0435\u0441\u044c \u0441\u0440\u0430\u0437\u0443 \u0432\u044b\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u00ab\u0444\u0438\u0448\u043a\u0430\u00bb \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 KC868-A8 \u2014 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043d\u0430 \u0447\u0438\u043f\u0435 LAN8270A. \u041d\u0430\u043b\u0438\u0447\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043d\u043e \u0437\u0430 \u044d\u0442\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0440\u0430\u0441\u043f\u043b\u0430\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u00ab\u043f\u043e\u0442\u0435\u0440\u0435\u0439\u00bb 9 GPIO \u0438\u0437 \u0438 \u0431\u0435\u0437 \u0442\u043e\u0433\u043e \u043a\u0440\u0430\u0439\u043d\u0435 \u0441\u043a\u0443\u0434\u043d\u043e\u0433\u043e \u0438\u0445 \u043d\u0430\u0431\u043e\u0440\u0430.<\/p>\n<p>  \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043d\u0435\u0445\u0432\u0430\u0442\u043a\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0445 \u043f\u0438\u043d\u043e\u0432 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 ESP32 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u044b Kincony \u0440\u0435\u0448\u0438\u043b\u0438 \u043f\u0443\u0442\u0451\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u0435\u0439 \u043f\u043e\u0440\u0442\u043e\u0432 \u2014 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 8 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 \u0438 8 \u0440\u0435\u043b\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u043a ESP32 \u0447\u0435\u0440\u0435\u0437 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u044b PCF8574P \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u0435\u0439 \u043f\u043e\u0440\u0442\u043e\u0432 \u0441 I2C \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c.<\/p>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043b\u0430\u0442\u0435 (\u043f\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044e \u0441 \u043c\u043b\u0430\u0434\u0448\u0438\u043c \u0431\u0440\u0430\u0442\u043e\u043c KC868-A4) I2C \u0440\u0430\u0437\u044a\u0451\u043c\u0430 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u2014 \u044d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0430\u0434\u0430\u043f\u0442\u0430\u0446\u0438\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043a \u0437\u0430\u0434\u0430\u0447\u0430\u043c \u0432\u0430\u0448\u0438\u0445 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432.<\/p>\n<p>  \u041d\u0438\u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0440\u0430\u0441\u043f\u0438\u043d\u043e\u0432\u043a\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 KC868-A8. \u0412 \u0431\u043b\u0438\u0436\u043d\u0438\u0445 \u043a \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0443 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u0445 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0438\u0439 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 \u0438\u0437 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0445\u0435\u043c\u044b, \u0430 \u0432 \u0434\u0430\u043b\u044c\u043d\u0438\u0445 \u2014 \u0432\u0445\u043e\u0434\u044b \u0438 \u0432\u044b\u0445\u043e\u0434\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 KC868-A8.<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/un\/n_\/hl\/unn_hlwrma1u6pyprgv5p-xr5da.png\" data-src=\"https:\/\/habrastorage.org\/webt\/un\/n_\/hl\/unn_hlwrma1u6pyprgv5p-xr5da.png\"\/><\/p>\n<p>  \u0417\u0434\u0435\u0441\u044c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u044f\u0441\u043d\u0438\u0442\u044c: \u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 Kincony KC868-A8 \u0438\u043c\u0435\u0435\u0442 \u0434\u0432\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u2014 \u0431\u0430\u0437\u043e\u0432\u0443\u044e \u0438 \u043c\u043e\u0434\u0435\u0440\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e V1.4. \u0421\u0430\u043c\u0430 \u0441\u0445\u0435\u043c\u0430 \u0440\u0430\u0441\u043f\u0438\u043d\u043e\u0432\u043a\u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u0431\u0430\u0437\u043e\u0432\u043e\u043c\u0443 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0443, \u0430 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0432\u043d\u0435\u0441\u0451\u043d\u043d\u044b\u0435 \u0432 \u0432\u0435\u0440\u0441\u0438\u044e V1.4, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u043b\u043e\u043a\u0430. \u0412 \u043c\u043e\u0451\u043c \u0440\u0430\u0441\u043f\u043e\u0440\u044f\u0436\u0435\u043d\u0438\u0438 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 V1.4, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0441\u0451 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u0439.<\/p>\n<p>  \u0415\u0449\u0451 \u043f\u0430\u0440\u0430 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0439. \u0417\u0432\u0451\u0437\u0434\u043e\u0447\u043a\u0430\u043c\u0438 (*) \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u00ab\u0437\u0430\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u044b\u00bb \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c\u0438 Kincony, \u043d\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043d\u0430 \u043f\u043b\u0430\u0442\u0435 (\u043f\u043e \u043a\u0440\u0430\u0439\u043d\u0435\u0439 \u043c\u0435\u0440\u0435, \u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438), \u0430 \u0437\u0430\u0433\u0430\u0434\u043e\u0447\u043d\u044b\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u00abDI9\u00bb \u0438 \u00abDI10\u00bb \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u043a \u00ab\u0446\u0438\u0444\u0440\u043e\u0432\u044b\u043c \u0432\u0445\u043e\u0434\u0430\u043c\u00bb 9 \u0438 10 (\u043f\u043e\u0441\u043b\u0435 8-\u0438 \u043e\u043f\u0442\u043e\u0440\u0430\u0437\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 \u043d\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u0435 \u043f\u043e\u0440\u0442\u043e\u0432) \u2014 \u0432\u0441\u0451 \u044d\u0442\u043e \u043a\u0440\u0435\u0430\u0442\u0438\u0432 (\u043d\u0435\u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0438) \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Kincony.<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c, \u043f\u043e\u0441\u043b\u0435 \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u0440\u0430\u0441\u043f\u0438\u043d\u043e\u0432\u043a\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 Kincony KC868-A8.<\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0441\u0440\u0435\u0434\u0430 \u0434\u043b\u044f KC868-A8<\/font><\/h2>\n<p>  \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 Kincony KC868-A8 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0432 \u0441\u0440\u0435\u0434\u0435 Arduino 1.8.5. \u042f \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0431\u0443\u0434\u0443 \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 ESP32 \u0432 Arduino \u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0445 \u2014 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u0435\u0441\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432 \u043d\u0430 \u044d\u0442\u0443 \u0442\u0435\u043c\u0443. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c Kincony KC868-A8 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u00abNodeMCU-32S\u00bb.<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/wb\/jd\/fc\/wbjdfcm1wrxkuqsuthwn5xu7jy0.png\" data-src=\"https:\/\/habrastorage.org\/webt\/wb\/jd\/fc\/wbjdfcm1wrxkuqsuthwn5xu7jy0.png\"\/><\/p>\n<p>  \u0417\u0434\u0435\u0441\u044c \u0435\u0441\u0442\u044c \u0435\u0449\u0451 \u043e\u0434\u0438\u043d \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439, \u043d\u043e \u0432\u0430\u0436\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442: \u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u043f\u043b\u0430\u0442\u044b NodeMCU-32S I2C \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0437\u0430\u0432\u044f\u0437\u0430\u043d \u043d\u0430 \u043f\u0438\u043d\u044b 21 \u0438 22, \u0430 \u0432 \u043d\u0430\u0448\u0435\u043c \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 Kincony KC868-A8 \u044d\u0442\u043e \u043f\u0438\u043d\u044b 4 \u0438 5. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432 \u0444\u0430\u0439\u043b\u0435<\/p>\n<pre><code class=\"java\">\\hardware\\espressif\\esp32\\variants\\nodemcu-32s\\pins_arduino.h <\/code><\/pre>\n<p>  \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0441\u0442\u0430\u0440\u043e\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435<\/p>\n<pre><code class=\"java\">static const uint8_t SDA = 21; static const uint8_t SCL = 22; <\/code><\/pre>\n<p>  \u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u043d\u0430\u0448\u0435\u043c\u0443 KC868-A8<\/p>\n<pre><code class=\"java\">static const uint8_t SDA = 4; static const uint8_t SCL = 5; <\/code><\/pre>\n<p>  \u0438\u043d\u0430\u0447\u0435 \u043d\u0438 \u0440\u0435\u043b\u0435, \u043d\u0438 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0435 \u0432\u0445\u043e\u0434\u044b \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443\u0442.<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 KC868-A8.<\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u0440\u0435\u043b\u0435<\/font><\/h2>\n<p>  \u041f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u0440\u0435\u043b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u0440\u0442\u043e\u0432 \u043d\u0430 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0435 PCF8574P, \u0442\u043e \u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a \u0440\u0435\u043b\u0435 \u0432 \u043a\u043e\u0434\u0435 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e. \u0420\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443 I2C \u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c \u043d\u0443\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 <a href=\"https:\/\/github.com\/xreef\/PCF8574_library\">PCF8574_library<\/a>.<\/p>\n<p>  \u0427\u0438\u043f PCF8574P \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u043b\u0435 \u0438\u043c\u0435\u0435\u0442 \u0430\u0434\u0440\u0435\u0441 0x24 \u043d\u0430 I2C \u0448\u0438\u043d\u0435 \u0438 \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c. \u0421\u0430\u043c \u043a\u043e\u0434 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u043b\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u0435\u043d:<\/p>\n<pre><code class=\"java\">\/*   Kincony KC868-A8   Relays example *\/  #include \"Arduino.h\" #include \"PCF8574.h\"  #define I2C_RELAYS_ADR 0x24  PCF8574 pcf(I2C_RELAYS_ADR);  void setup() {   Serial.begin(115200);   Serial.println(F(\"Start Kincony KC868-A8 Relays example...\"));    pcf.pinMode(P0, OUTPUT);   pcf.pinMode(P1, OUTPUT);   pcf.pinMode(P2, OUTPUT);   pcf.pinMode(P3, OUTPUT);   pcf.pinMode(P4, OUTPUT);   pcf.pinMode(P5, OUTPUT);   pcf.pinMode(P6, OUTPUT);   pcf.pinMode(P7, OUTPUT);    Serial.print(\"Init PCF8574... \");   if (pcf.begin()){Serial.println(F(\"Ok\"));}              else {Serial.println(F(\"Error\"));} }  void loop() {   pcf.digitalWrite(P0, HIGH);   Serial.print(F(\"Relay #\")); Serial.print(P0); Serial.println(F(\" ON\"));   delay(10000);   pcf.digitalWrite(P0, LOW);   Serial.print(F(\"Relay #\")); Serial.print(P0); Serial.println(F(\" OFF\"));   delay(10000); } <\/code><\/pre>\n<p>  \u0418 \u0434\u043b\u044f \u0432\u0430\u0441 \u043d\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0442\u0440\u0443\u0434\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u043b\u043e\u0433\u0438\u043a\u0443 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u043b\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 Kincony KC868-A8 \u043d\u0430 \u0435\u0433\u043e \u043e\u0441\u043d\u043e\u0432\u0435. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u0432\u043e\u0434\u0430 \u0432 Serial \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043a\u0435\u0442\u0447\u0430 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u043b\u0435 \u0447\u0435\u0440\u0435\u0437 \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u0440\u0442\u043e\u0432 PCF8574P:<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/l-\/fx\/qx\/l-fxqxx_fbkaeia0qk-zc3fu0ou.png\" data-src=\"https:\/\/habrastorage.org\/webt\/l-\/fx\/qx\/l-fxqxx_fbkaeia0qk-zc3fu0ou.png\"\/><\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u0426\u0438\u0444\u0440\u043e\u0432\u044b\u0435 \u0432\u0445\u043e\u0434\u044b<\/font><\/h2>\n<p>  \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 Kincony KC868-A8 \u0438\u043c\u0435\u0435\u0442 8 \u043e\u043f\u0442\u043e\u0440\u0430\u0437\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0445 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 \u00ab\u0441\u0443\u0445\u043e\u0439 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u00bb, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0447\u0435\u0440\u0435\u0437 I2C \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u0440\u0442\u043e\u0432 PCF8574P. \u041a\u0430\u043a \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u0440\u0435\u043b\u0435, \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 PCF8574_library.<\/p>\n<p>  \u0427\u0438\u043f PCF8574P \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 \u0438\u043c\u0435\u0435\u0442 \u0430\u0434\u0440\u0435\u0441 0x22 \u043d\u0430 I2C \u0448\u0438\u043d\u0435. \u041a\u043e\u0434, \u043a\u0430\u043a \u0438 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u0440\u0435\u043b\u0435, \u0442\u043e\u0436\u0435 \u043f\u0440\u043e\u0441\u0442 \u0438 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u0435\u043d \u0438 \u043d\u0435 \u0434\u043e\u043b\u0436\u0435\u043d \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u0443 \u0432\u0430\u0441 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0435\u043d\u0438\u0439:<\/p>\n<pre><code class=\"java\">\/*   Kincony KC868-A8   Digital input example *\/  #include \"Arduino.h\" #include \"PCF8574.h\"  #define I2C_DIGITAL_ADR 0x22  PCF8574 pcf(I2C_DIGITAL_ADR);  void setup() {   Serial.begin(115200);   Serial.println(F(\"Start Kincony KC868-A8 Digital input example...\"));    pcf.pinMode(P0, INPUT);   pcf.pinMode(P1, INPUT);   pcf.pinMode(P2, INPUT);   pcf.pinMode(P3, INPUT);   pcf.pinMode(P4, INPUT);   pcf.pinMode(P5, INPUT);   pcf.pinMode(P6, INPUT);   pcf.pinMode(P7, INPUT);    Serial.print(\"Init PCF8574... \");   if (pcf.begin()){Serial.println(F(\"Ok\"));}              else {Serial.println(F(\"Error\"));}    delay(20); }  void loop() {   byte val1 = pcf.digitalRead(P0);   byte val2 = pcf.digitalRead(P1);   byte val3 = pcf.digitalRead(P2);   byte val4 = pcf.digitalRead(P3);   byte val5 = pcf.digitalRead(P4);   byte val6 = pcf.digitalRead(P5);   byte val7 = pcf.digitalRead(P6);   byte val8 = pcf.digitalRead(P7);     if (val1 == LOW) Serial.println(\"Key1 pressed\");   if (val2 == LOW) Serial.println(\"Key2 pressed\");   if (val3 == LOW) Serial.println(\"Key3 pressed\");   if (val4 == LOW) Serial.println(\"Key4 pressed\");   if (val5 == LOW) Serial.println(\"Key5 pressed\");   if (val6 == LOW) Serial.println(\"Key6 pressed\");   if (val7 == LOW) Serial.println(\"Key7 pressed\");   if (val8 == LOW) Serial.println(\"Key8 pressed\");     delay(300); } <\/code><\/pre>\n<p>  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043a\u0435\u0442\u0447\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u043c\u0438 \u0432\u0445\u043e\u0434\u0430\u043c\u0438 \u0447\u0435\u0440\u0435\u0437 I2C \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u0435\u043b\u044c \u043f\u043e\u0440\u0442\u043e\u0432 PCF8574P:<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/qu\/dr\/2q\/qudr2qpblhjm_nai1puqwosvk5w.png\" data-src=\"https:\/\/habrastorage.org\/webt\/qu\/dr\/2q\/qudr2qpblhjm_nai1puqwosvk5w.png\"\/><\/p>\n<p>  \u0412\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0451\u0442\u043a\u043e \u0438 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e, \u0442\u0430\u043a \u043a\u0430\u043a \u0438 \u0434\u043e\u043b\u0436\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c.<\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u0410\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0435 \u0432\u0445\u043e\u0434\u044b<\/font><\/h2>\n<p>  Kincony KC868-A8 \u0438\u043c\u0435\u0435\u0442 2 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u0430 \u0434\u043b\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 0\u20135 \u0412. \u0421 \u044d\u0442\u0438\u043c\u0438 \u0432\u0445\u043e\u0434\u0430\u043c\u0438 \u0443 KC868-A8 \u0435\u0441\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043f\u0443\u0442\u0430\u043d\u043d\u043e\u0441\u0442\u044c \u2014 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 \u043f\u043b\u0430\u0442\u044b \u043e\u043d\u0438 \u0440\u0430\u0437\u0432\u0435\u0434\u0435\u043d\u044b \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443. \u041c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432\u044b\u0445 \u0432\u0445\u043e\u0434\u043e\u0432 \u0434\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0438 V1.4 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u043d\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u043a GPIO34 \u0438 GPIO35 (\u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u043e GPIO32 \u0438 GPIO33).<\/p>\n<p>  \u041a\u043e\u0434 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442 \u0438 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u0432\u044b\u0437\u043e\u0432\u0443 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 analogRead() \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0430\u043d\u0430\u043b\u0438\u0437\u0443 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u044b\u0445 \u0435\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439.<\/p>\n<pre><code class=\"java\">\/*   Kincony KC868-A8   Analog example *\/  #include \"Arduino.h\"  #define ANALOG_A1   34    \/\/ IO34 (V1.4) #define ANALOG_A2   35    \/\/ IO35 (V1.4)  void setup() {   Serial.begin(115200);   Serial.println(F(\"Start Kincony KC868-A8 Analog example...\"));    pinMode(ANALOG_A1, INPUT);   pinMode(ANALOG_A2, INPUT); }  void loop() {   Serial.printf(\"Current Reading A1 on Pin%d=%d\\n\", ANALOG_A1, analogRead(ANALOG_A1));   Serial.printf(\"Current Reading A2 on Pin%d=%d\\n\", ANALOG_A2, analogRead(ANALOG_A2));   delay(5000); } <\/code><\/pre>\n<h2><font color=\"#3AC1EF\">\u258d \u0414\u0430\u0442\u0447\u0438\u043a\u0438 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u0438 \u0432\u043b\u0430\u0436\u043d\u043e\u0441\u0442\u0438<\/font><\/h2>\n<p>  \u0421\u043e \u0432\u0445\u043e\u0434\u0430\u043c\u0438 \u0434\u043b\u044f \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432 \u0443 KC868-A8 \u0442\u043e\u0436\u0435 \u0435\u0441\u0442\u044c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0443\u0442\u0430\u043d\u0438\u0446\u0430 \u2014 \u0432 \u0440\u0430\u0437\u043d\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 \u043f\u043b\u0430\u0442\u044b \u043e\u043d\u0438 \u0442\u043e\u0436\u0435 \u0440\u0430\u0437\u0432\u0435\u0434\u0435\u043d\u044b \u043f\u043e-\u0440\u0430\u0437\u043d\u043e\u043c\u0443. \u0412 \u0432\u0435\u0440\u0441\u0438\u0438 V1.4 \u044d\u0442\u043e \u043f\u0438\u043d\u044b 14, 13, 32, 33. \u041a \u044d\u0442\u0438\u043c GPIO \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u0434\u0430\u0442\u0447\u0438\u043a\u0438 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b, \u0432\u043b\u0430\u0436\u043d\u043e\u0441\u0442\u0438 \u0438\u043b\u0438 \u043b\u044e\u0431\u044b\u0435 \u0434\u0440\u0443\u0433\u0438\u0435 \u0434\u0430\u0442\u0447\u0438\u043a\u0438, \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043f\u043e \u0442\u0438\u043f\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. \u041d\u0443\u0436\u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043c\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u043d\u0430 \u043f\u043b\u0430\u0442\u0435 \u0443\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0430 \u043f\u043e\u0434\u0442\u044f\u0436\u043a\u0430 \u043b\u0438\u043d\u0438\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u044e \u043f\u0438\u0442\u0430\u043d\u0438\u044f.<\/p>\n<p>  \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0434\u0430\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b DS18B20 \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u0441\u044f \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 <a href=\"https:\/\/github.com\/matmunk\/DS18B20\">DS18B20<\/a> \u0438 <a href=\"https:\/\/github.com\/PaulStoffregen\/OneWire\">OneWire<\/a>. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d \u043a\u043e\u0434 \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0434\u0430\u0442\u0447\u0438\u043a\u0430 DS18B20, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u0433\u043e \u043a \u043f\u043b\u0430\u0442\u0435 KC868-A8 \u043d\u0430 GPIO14.<\/p>\n<pre><code class=\"java\">\/*   Kincony KC868-A8   DS18B20 example *\/  #include &lt;DS18B20.h>  #define  LOW_ALARM 30 #define HIGH_ALARM 40  DS18B20 ds(14); \/\/ 14, 13, 32, 33 (V1.4)  void setup() {   Serial.begin(115200);   Serial.println(F(\"Start Kincony KC868-A8 DS18B20 example...\"));     ds.doConversion();   while (ds.selectNext()) {     ds.setAlarms(LOW_ALARM, HIGH_ALARM);   } }  void loop() {   ds.doConversion();    while (ds.selectNextAlarm()) {     Serial.print(\"Alarm Low: \");   Serial.print(ds.getAlarmLow());  Serial.println(\" \u00b0C\");     Serial.print(\"Alarm High: \");  Serial.print(ds.getAlarmHigh()); Serial.println(\" \u00b0C\");     Serial.print(\"Temperature: \"); Serial.print(ds.getTempC());     Serial.println(\" \u00b0C\\n\");   }    delay(2000); } <\/code><\/pre>\n<p>  \u0412 \u043a\u043e\u0434\u0435 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u0440\u043e\u0433\u0438 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0438, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u043c\u043e\u0439 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u0437\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0432 Serial \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435.<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/sk\/ol\/ga\/skolgamh-yea0tgbd48olov4l5q.png\" data-src=\"https:\/\/habrastorage.org\/webt\/sk\/ol\/ga\/skolgamh-yea0tgbd48olov4l5q.png\"\/><\/p>\n<p>  \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 DS18B20 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u044b DS18B20 \u2014 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0434\u043e\u0431\u0440\u0430\u0442\u044c \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0434\u043b\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u041f\u0440\u0438\u0451\u043c\u043d\u0438\u043a\/\u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a 433 \u041c\u0413\u0446<\/font><\/h2>\n<p>  \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u0438\u0451\u043c\u043d\u0438\u043a\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 433 \u041c\u0413\u0446, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u043e\u0431 \u044d\u0442\u043e\u043c \u0432 <a href=\"https:\/\/habr.com\/en\/company\/ruvds\/blog\/647119\/\">\u0441\u0442\u0430\u0442\u044c\u0435<\/a> \u043e \u043f\u043b\u0430\u0442\u0435 KC868-A4. \u0423\u043f\u043e\u043c\u044f\u043d\u0443 \u0442\u043e\u043b\u044c\u043a\u043e, \u0447\u0442\u043e \u0432 KC868-A8 \u043f\u0440\u0438\u0451\u043c\u043d\u0438\u043a \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u0447\u0438\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u044b \u043d\u0430 GPIO15 \u0438 GPIO2.<\/p>\n<p>  \u0410 \u0432 \u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435 \u043d\u0443\u0436\u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 433 \u041c\u0413\u0446, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c GPIO15 \u0438 GPIO2 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a\u0430\u043a\u0438\u0445-\u0442\u043e \u0441\u0432\u043e\u0438\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 (\u0441\u043c. \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u0443 KC868-A8 \u0438\u0437 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0438).<\/p>\n<h2><font color=\"#3AC1EF\">\u258d Ethernet LAN8270A<\/font><\/h2>\n<p>  \u041a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 Kincony KC868-A8 \u0438\u043c\u0435\u0435\u0442 \u043d\u0430 \u0431\u043e\u0440\u0442\u0443 \u0447\u0438\u043f Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 LAN8270A \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 Ethernet \u0441\u0435\u0442\u0438. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c ESP32 \u0434\u0430\u0451\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u043c\u0443 Wi-Fi \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443. \u0422\u043e \u0435\u0441\u0442\u044c \u0443 \u043d\u0430\u0441 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043d\u0430\u0448 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043b\u0438\u0431\u043e \u043f\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u043c\u0443 Ethernet, \u043b\u0438\u0431\u043e \u043f\u043e \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u043c\u0443 Wi-Fi, \u043b\u0438\u0431\u043e \u0438 \u043f\u043e \u0442\u043e\u043c\u0443 \u0438 \u043f\u043e \u0434\u0440\u0443\u0433\u043e\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0433\u0438\u0431\u043a\u043e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f\u0445 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u0442\u0435\u0440\u0438 \u0441\u0432\u044f\u0437\u0438 \u043f\u043e \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u043c\u0443 \u043a\u0430\u043d\u0430\u043b\u0443 \u0438 \u0442. \u043f.).<\/p>\n<p>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 ESP32 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e. \u0412\u043d\u0430\u0447\u0430\u043b\u0435 \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438:<\/p>\n<pre><code class=\"java\">#include &lt;ETH.h> #include &lt;SPI.h> <\/code><\/pre>\n<p>  \u0417\u0430\u0442\u0435\u043c \u0442\u0438\u043f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u044b:<\/p>\n<pre><code class=\"java\">#define ETH_TYPE        ETH_PHY_LAN8720 <\/code><\/pre>\n<p>  \u041f\u0438\u043d\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f:<\/p>\n<pre><code class=\"java\">#define ETH_CLK_MODE    ETH_CLOCK_GPIO17_OUT #define ETH_MDC_PIN     23 #define ETH_MDIO_PIN    18 <\/code><\/pre>\n<p>  \u0418 \u043f\u0440\u043e\u0447\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430:<\/p>\n<pre><code class=\"java\">#define ETH_POWER_PIN   -1 #define ETH_ADDR        0 #define NRST            5 <\/code><\/pre>\n<p>  \u0414\u0430\u043b\u0435\u0435 \u0438\u0434\u0451\u0442 \u043a\u043e\u0434 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043a\u0435\u0442\u0447\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0441\u0430\u0439\u0442\u0443 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435.<\/p>\n<pre><code class=\"java\">\/*   Kincony KC868-A8   Ethernet example *\/  #include &lt;ETH.h> #include &lt;SPI.h>  #define ETH_CLK_MODE    ETH_CLOCK_GPIO17_OUT #define ETH_POWER_PIN   -1 #define ETH_TYPE        ETH_PHY_LAN8720 #define ETH_ADDR        0 #define ETH_MDC_PIN     23 #define ETH_MDIO_PIN    18 #define NRST            5  static bool eth_connected = false;  void WiFiEvent(WiFiEvent_t event) {   switch (event) {     case SYSTEM_EVENT_ETH_START:       Serial.println(\"ETH Started\");       ETH.setHostname(\"esp32-ethernet\");       break;     case SYSTEM_EVENT_ETH_CONNECTED:       Serial.println(\"ETH Connected\");       break;     case SYSTEM_EVENT_ETH_GOT_IP:       Serial.print(\"ETH MAC: \"); Serial.print(ETH.macAddress());       Serial.print(\", IPv4: \");  Serial.print(ETH.localIP());       if (ETH.fullDuplex()) {Serial.print(\", FULL_DUPLEX\");}       Serial.print(\", \"); Serial.print(ETH.linkSpeed()); Serial.println(\"Mbps\");       eth_connected = true;       break;     case SYSTEM_EVENT_ETH_DISCONNECTED:       Serial.println(\"ETH Disconnected\");       eth_connected = false;       break;     case SYSTEM_EVENT_ETH_STOP:       Serial.println(\"ETH Stopped\");       eth_connected = false;       break;     default:       break;   } } \/\/ WiFiEvent( )  void testClient(const char *host, uint16_t port) {   Serial.print(\"\\nconnecting to \"); Serial.println(host);    WiFiClient client;   if (!client.connect(host, port)) {     Serial.println(\"connection failed\");     return;   }     client.printf(\"GET \/ HTTP\/1.1\\r\\nHost: %s\\r\\n\\r\\n\", host);   while (client.connected() &amp;&amp; !client.available());   while (client.available()) {     Serial.write(client.read());   }    Serial.println(\"closing connection\\n\");   client.stop(); }  void setup() {   Serial.begin(115200);   Serial.println(F(\"Start Kincony KC868-A8 Ethernet example...\"));    WiFi.onEvent(WiFiEvent);    pinMode(NRST, OUTPUT);   digitalWrite(NRST, 0); delay(200);   digitalWrite(NRST, 1); delay(200);   digitalWrite(NRST, 0); delay(200);   digitalWrite(NRST, 1);    ETH.begin(ETH_ADDR, ETH_POWER_PIN, ETH_MDC_PIN, ETH_MDIO_PIN, ETH_TYPE, ETH_CLK_MODE); }  void loop() {   if (eth_connected) {     testClient(\"baidu.com\", 80);   }   delay(10000); } <\/code><\/pre>\n<p>  \u0417\u0434\u0435\u0441\u044c: \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439.<\/p>\n<pre><code class=\"java\">  WiFi.onEvent(WiFiEvent); <\/code><\/pre>\n<p>  \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0437\u0430\u043f\u0443\u0441\u043a \u0447\u0438\u043f\u0430 LAN8270A (\u0447\u0442\u043e \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u0437\u043b\u0438\u0448\u043d\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043d\u0430 KC868-A8 \u043f\u0438\u043d NRST \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d \u043a ESP32).<\/p>\n<pre><code class=\"java\">  pinMode(NRST, OUTPUT);   digitalWrite(NRST, 0); delay(200);   digitalWrite(NRST, 1); delay(200);   digitalWrite(NRST, 0); delay(200);   digitalWrite(NRST, 1); <\/code><\/pre>\n<p>  \u0418 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c\u0438:<\/p>\n<pre><code class=\"java\">  ETH.begin(ETH_ADDR, ETH_POWER_PIN, ETH_MDC_PIN, ETH_MDIO_PIN, ETH_TYPE, ETH_CLK_MODE); <\/code><\/pre>\n<p>  \u0414\u0430\u043b\u0435\u0435 \u0432 \u0446\u0438\u043a\u043b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u043a \u0441\u0430\u0439\u0442\u0443 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435:<\/p>\n<pre><code class=\"java\">void loop() {   if (eth_connected) {     testClient(\"baidu.com\", 80);   }   delay(10000); } <\/code><\/pre>\n<p>  \u0410 \u0441\u0430\u043c\u0443 \u0440\u0430\u0431\u043e\u0442\u0443 \u043f\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044f testClient().<\/p>\n<pre><code class=\"java\">void testClient(const char *host, uint16_t port) {   Serial.print(\"\\nconnecting to \"); Serial.println(host);    WiFiClient client;   if (!client.connect(host, port)) {     Serial.println(\"connection failed\");     return;   }     client.printf(\"GET \/ HTTP\/1.1\\r\\nHost: %s\\r\\n\\r\\n\", host);   while (client.connected() &amp;&amp; !client.available());   while (client.available()) {     Serial.write(client.read());   }    Serial.println(\"closing connection\\n\");   client.stop(); } <\/code><\/pre>\n<p>  \u0413\u0440\u043e\u043c\u043e\u0437\u0434\u043a\u0430\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430<\/p>\n<pre><code class=\"java\">void WiFiEvent(WiFiEvent_t event) {   switch (event) {     case SYSTEM_EVENT_ETH_START:       Serial.println(\"ETH Started\");       ETH.setHostname(\"esp32-ethernet\");       break;     case SYSTEM_EVENT_ETH_CONNECTED:       Serial.println(\"ETH Connected\");       break;     case SYSTEM_EVENT_ETH_GOT_IP:       Serial.print(\"ETH MAC: \"); Serial.print(ETH.macAddress());       Serial.print(\", IPv4: \");  Serial.print(ETH.localIP());       if (ETH.fullDuplex()) {Serial.print(\", FULL_DUPLEX\");}       Serial.print(\", \"); Serial.print(ETH.linkSpeed()); Serial.println(\"Mbps\");       eth_connected = true;       break;     case SYSTEM_EVENT_ETH_DISCONNECTED:       Serial.println(\"ETH Disconnected\");       eth_connected = false;       break;     case SYSTEM_EVENT_ETH_STOP:       Serial.println(\"ETH Stopped\");       eth_connected = false;       break;     default:       break;   } } \/\/ WiFiEvent( ) <\/code><\/pre>\n<p>  \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0430\u043d\u0430\u043b\u0438\u0437, \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0446\u0438\u044e \u0438 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0441\u0435\u0442\u0435\u0432\u044b\u0445 Ethernet \u0441\u043e\u0431\u044b\u0442\u0438\u0439.<\/p>\n<p>  \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u043a\u0435\u0442\u0447\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 Kincony KC868-A8 \u043f\u043e Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443:<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/fg\/c9\/ea\/fgc9ea2oxjohkl7pesuxxae_qhg.png\" data-src=\"https:\/\/habrastorage.org\/webt\/fg\/c9\/ea\/fgc9ea2oxjohkl7pesuxxae_qhg.png\"\/><\/p>\n<p>  \u0412\u0441\u0451 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0447\u0451\u0442\u043a\u043e \u0438 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e: \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0435 \u0431\u044b\u043b\u043e \u0437\u0430\u043c\u0435\u0447\u0435\u043d\u043e \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u0441\u0432\u044f\u0437\u043a\u0438 ESP32 \u0438 LAN8270A.<\/p>\n<h2><font color=\"#3AC1EF\">\u258d \u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/font><\/h2>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 Kincony KC868-A8. \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e \u043c\u044b \u043f\u043e\u0441\u0432\u044f\u0442\u0438\u043c \u0440\u0430\u0437\u0431\u043e\u0440\u0443 \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 KC868-A8 \u0438 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u0442\u0438\u043a\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e \u0434\u0432\u0443\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u043c \u2014 \u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u043c\u0443 Ethernet \u0438 \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u043c\u0443 Wi-Fi.<\/p>\n<p>  <a href=\"http:\/\/ruvds.com\/ru-rub?utm_source=habr&amp;utm_medium=article&amp;utm_campaign=smartalex&amp;utm_content=kincony_kc868-a8_starshij_brat_iz_xanchzhou_chast_2_programmiruem_a8\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/webt\/ou\/g5\/kh\/oug5kh6sjydt9llengsiebnp40w.png\" data-src=\"https:\/\/habrastorage.org\/webt\/ou\/g5\/kh\/oug5kh6sjydt9llengsiebnp40w.png\"\/><\/a><\/div>\n<\/div>\n<\/div>\n<div class=\"v-portal\" style=\"display:none;\"><\/div>\n<\/div>\n<p> <!----> <!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/652883\/\"> https:\/\/habr.com\/ru\/company\/ruvds\/blog\/652883\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\"><a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/652883\/\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/webt\/xs\/be\/zt\/xsbezt3hvfimclrbsmra7l5zute.jpeg\" data-src=\"https:\/\/habrastorage.org\/webt\/xs\/be\/zt\/xsbezt3hvfimclrbsmra7l5zute.jpeg\" data-blurred=\"true\"\/><\/a><\/p>\n<p>  \u0412 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 <a href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/651109\/\">\u0441\u0442\u0430\u0442\u044c\u0435<\/a> \u043c\u044b \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u043b\u0438\u0441\u044c \u0441 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c Kincony KC868-A8 \u0438 \u0435\u0433\u043e \u0441\u0445\u0435\u043c\u043e\u0442\u0435\u0445\u043d\u0438\u043a\u043e\u0439, \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0435\u0440\u0451\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0435\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0445 \u0431\u043b\u043e\u043a\u043e\u0432 (\u0432\u0445\u043e\u0434\u043e\u0432, \u0440\u0435\u043b\u0435, \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u043d\u044b\u0445 \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432, Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u0438 \u0442. \u0434.). \u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043a\u043e\u0434\u0430 \u0438\u0437 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438 \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u0432\u043e\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u043d\u0430 KC868-A8.<\/p>\n<p>  \u041c\u043d\u0435 \u043d\u0440\u0430\u0432\u0438\u0442\u0441\u044f \u0438 Kincony <a href=\"https:\/\/habr.com\/en\/company\/ruvds\/blog\/646923\/\">KC868-A4<\/a> \u0438 KC868-A8, \u043d\u043e \u043d\u0430\u0448 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0438\u0439 \u043f\u043e\u0434\u043e\u043f\u044b\u0442\u043d\u044b\u0439 \u0441 \u0435\u0433\u043e 8-\u044e \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u043c\u0438 \u0432\u0445\u043e\u0434\u0430\u043c\u0438, 8-\u044e \u0440\u0435\u043b\u0435 \u043d\u0430 \u0431\u043e\u0440\u0442\u0443, I2C \u0440\u0430\u0437\u044a\u0451\u043c\u043e\u043c \u0438 Ethernet \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u043c \u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u0432\u043d\u0443\u0448\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0438 \u0442\u0430\u043a \u0438 \u043f\u0440\u043e\u0441\u0438\u0442\u0441\u044f \u0432 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u0442\u0430\u043c \u0438 \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d\u043e, \u0438 \u043a\u0430\u043a \u0432\u0441\u0435\u043c \u044d\u0442\u0438\u043c \u043c\u043e\u0436\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c.<\/p>\n<p>  \u0420\u0430\u0437\u0431\u043e\u0440 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f KC868-A8 \u043c\u044b \u043d\u0430\u0447\u043d\u0451\u043c \u0441 \u0440\u0430\u0441\u043f\u0438\u043d\u043e\u0432\u043a\u0438 ESP32 \u0438 \u0432\u044b\u044f\u0441\u043d\u0435\u043d\u0438\u044f, \u0447\u0442\u043e \u0438 \u043a\u0430\u043a \u043a \u043d\u0435\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u043c\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Kincony.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-330127","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/330127","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=330127"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/330127\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=330127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=330127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=330127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}