{"id":340263,"date":"2022-10-26T15:00:05","date_gmt":"2022-10-26T15:00:05","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=340263"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=340263","title":{"rendered":"<span>\u041c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b Megawin \u0441\u0435\u0440\u0438\u0438 MG32F02: \u043c\u043e\u0434\u0443\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I2C<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0446\u0438\u043a\u043b \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0439 \u043f\u043e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u043c \u043d\u0430 \u044f\u0434\u0440\u0435 Cortex-M0 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Megawin (\u0441\u043c. \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/674788\/\" rel=\"noopener noreferrer nofollow\">1<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/675776\/\" rel=\"noopener noreferrer nofollow\">2<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/681702\/\" rel=\"noopener noreferrer nofollow\">3<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/684778\/\" rel=\"noopener noreferrer nofollow\">4<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/686416\/\" rel=\"noopener noreferrer nofollow\">5<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/690346\/\" rel=\"noopener noreferrer nofollow\">6<\/a>), \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043c\u043e\u0434\u0443\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I<sup>2<\/sup>C.<\/p>\n<h3>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043c\u043e\u0434\u0443\u043b\u044f I2C<\/h3>\n<p>\u041c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u0441\u0435\u0440\u0438\u0438 MG32F02 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043e\u0434\u0438\u043d (MG32F02A032) \u0438\u043b\u0438 \u0434\u0432\u0430 (\u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u041c\u041a) \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I<sup>2<\/sup>C. \u041c\u043e\u0434\u0443\u043b\u0438 \u0438\u043c\u0435\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438:<\/p>\n<ul>\n<li>\n<p>\u0440\u0430\u0431\u043e\u0442\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e (master) \u0438\u043b\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e (slave);<\/p>\n<\/li>\n<li>\n<p>\u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0448\u0438\u043d\u0430 \u0434\u043e 1 \u041c\u0413\u0446;<\/p>\n<\/li>\n<li>\n<p>\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430;<\/p>\n<\/li>\n<li>\n<p>\u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430;<\/p>\n<\/li>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u043e\u0434\u0442\u044f\u0436\u043a\u0438 \u0434\u043b\u044f \u043b\u0438\u043d\u0438\u0439 SCL \u0438 SDA;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043e \u0434\u0432\u0443\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u043e \u043c\u0430\u0441\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0430\u0434\u0440\u0435\u0441\u0430 \u043e\u0431\u0449\u0435\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u0435\u0434\u0443\u0449\u0438\u0445 (multi-master);<\/p>\n<\/li>\n<li>\n<p>\u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 &#171;\u043d\u0435\u0448\u0442\u0430\u0442\u043d\u044b\u0445&#187; \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0439 \u043d\u0430 \u0448\u0438\u043d\u0435 (\u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 NACK, \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0431\u0443\u0444\u0435\u0440\u0430, \u043f\u043e\u0442\u0435\u0440\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u0430);<\/p>\n<\/li>\n<li>\n<p>\u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (Byte mode) \u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (Buffer mode) \u0440\u0435\u0436\u0438\u043c\u044b \u0440\u0430\u0431\u043e\u0442\u044b;<\/p>\n<\/li>\n<li>\n<p>\u0431\u0443\u0444\u0435\u0440 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 4 \u0431\u0430\u0439\u0442\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 DMA;<\/p>\n<\/li>\n<li>\n<p>\u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u0448\u0438\u043d\u044b SMBus;<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP.<\/p>\n<\/li>\n<\/ul>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2C0 \u0438 I2C1 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0430 \u043d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/deb\/cec\/d9d\/debcecd9da71c62275b6e03f0121d622.png\" alt=\"\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C\" title=\"\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C\" width=\"800\" height=\"656\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/deb\/cec\/d9d\/debcecd9da71c62275b6e03f0121d622.png\"\/><figcaption>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C<\/figcaption><\/figure>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u043c\u043e\u0434\u0443\u043b\u044c I2Cx \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u0437\u043b\u044b:<\/p>\n<ul>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0443 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f,<\/p>\n<\/li>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0443 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u043b\u0438\u043d\u0438\u0438 SCL,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u043b\u0438\u043d\u0438\u0438 SDA,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0443\u0444\u0435\u0440\u043e\u043c Buffer Control,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0430\u043c\u0438 Master\/Slave,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a Error Detector,<\/p>\n<\/li>\n<li>\n<p>\u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430,<\/p>\n<\/li>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0443 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u0430\u043c\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f INT_I2Cx.<\/p>\n<\/li>\n<\/ul>\n<h3>\u0422\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u041c\u043e\u0434\u0443\u043b\u044c I2Cx \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u043c CK_I2Cx, \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CLK.I2Cx_CK_SEL<\/code> \u0438\u0437 \u0447\u0438\u0441\u043b\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445:<\/p>\n<ul>\n<li>\n<p>\u0441\u0438\u0433\u043d\u0430\u043b CK_I2Cx_PR \u0441 \u0432\u044b\u0445\u043e\u0434\u0430 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u041c\u041a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0438\u0442\u043e\u043c <code>CSC_CKS1.CSC_I2Cx_CKS<\/code> \u0438\u0437 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 CK_APB (0) \u0438\u043b\u0438 CK_AHB (1);<\/p>\n<\/li>\n<li>\n<p>\u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0430\u0439\u043c\u0435\u0440\u0430 TM00_TRGO.<\/p>\n<\/li>\n<\/ul>\n<p>\u0421\u0438\u0433\u043d\u0430\u043b CK_I2Cx \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u043d\u0430 \u043f\u0440\u0435\u0434\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0447\u0430\u0441\u0442\u043e\u0442\u044b Prescaler, \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b CK_I2Cx_PSC. \u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043f\u0440\u0435\u0434\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0438\u0437 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 2-16 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0432 4-\u0431\u0438\u0442\u043d\u043e\u043c \u043f\u043e\u043b\u0435 <code>I2Cx_CLK.I2Cx_CK_PSC<\/code> \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043e\u0442 1 \u0434\u043e 15 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u0414\u0430\u043b\u0435\u0435 \u0441\u0438\u0433\u043d\u0430\u043b \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u043d\u0430 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0447\u0430\u0441\u0442\u043e\u0442\u044b DIV, \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CLK.I2Cx_CK_DIV<\/code> \u0438\u0437 \u0440\u044f\u0434\u0430 2, 4, 8, &#8230;, 128. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043c\u043e\u0434\u0443\u043b\u044f CK_I2Cx_INT. \u0421 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0432\u044b\u0445\u043e\u0434\u0430 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0441 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u043e\u043c 64 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b CK_I2Cx_DIV64. \u0422\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 CK_I2Cx_TMO \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044f <code>I2Cx_CLK.I2Cx_TMO_CKS<\/code> \u043c\u043e\u0436\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0437 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx_DIV64 \u0438\u043b\u0438 \u043e\u0431\u0449\u0435\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_UT.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043e\u0442\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f CK_I2Cx_INT \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>F<sub>INT<\/sub> = F(CK_I2Cx_INT) = F(CK_I2Cx) \/ [ (PSC + 1)\u00b7DIV ],<\/p>\n<p>\u0433\u0434\u0435 F(CK_I2Cx) \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx, PSC \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f <code>I2Cx_CLK.I2Cx_CK_PSC<\/code>, DIV \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f <code>I2Cx_CLK.I2Cx_CK_DIV<\/code>.<\/p>\n<p>\u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 SCL \u0438 SDA.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/beb\/fc5\/696\/bebfc56968c8627f29bab2a8258801fa.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 SCL \u0438 SDA\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 SCL \u0438 SDA\" width=\"795\" height=\"486\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/beb\/fc5\/696\/bebfc56968c8627f29bab2a8258801fa.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 SCL \u0438 SDA<\/figcaption><\/figure>\n<p>\u0412 \u043c\u043e\u0434\u0443\u043b\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044b t<sub>HIGH<\/sub> \u0438 t<sub>LOW<\/sub> \u0447\u0435\u0440\u0435\u0437 \u043f\u043e\u043b\u044f <code>I2Cx_HT<\/code> \u0438 <code>I2Cx_LT<\/code> \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_CR1<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f t<sub>HIGH<\/sub> \u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f t<sub>LOW<\/sub> \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438<\/p>\n<p>t<sub>HIGH<\/sub> = (1 + HT)\u00b7T<sub>INT<\/sub>,<\/p>\n<p>t<sub>LOW<\/sub> = (1 + LT)\u00b7T<sub>INT<\/sub>,<\/p>\n<p>\u0433\u0434\u0435 HT \u0438 LT \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0439 <code>I2Cx_HT<\/code> \u0438 <code>I2Cx_LT<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0430 T<sub>INT<\/sub> = 1 \/ F<sub>INT<\/sub> \u2014 \u043f\u0435\u0440\u0438\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx_INT.<\/p>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u043c\u0430\u0441\u0442\u0435\u0440\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b t<sub>VD:DAT<\/sub> \u043c\u0435\u0436\u0434\u0443 \u0437\u0430\u0434\u043d\u0438\u043c \u0444\u0440\u043e\u043d\u0442\u043e\u043c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0438 \u043c\u043e\u043c\u0435\u043d\u0442\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SDA \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 2\u00b7T<sub>INT<\/sub>. \u0414\u0430\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0434\u043e \u043f\u0435\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 (LT-1)\u00b7T<sub>INT<\/sub>. \u041f\u0435\u0440\u0438\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043c\u0430\u0441\u0442\u0435\u0440\u043e\u043c, \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>T<sub>SCL<\/sub> = t<sub>HIGH<\/sub> + t<sub>LOW<\/sub> = (2 + HT + LT)\u00b7T<sub>INT<\/sub>.<\/p>\n<p>\u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u043d\u043e\u043c\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0448\u0438\u043d\u044b I<sup>2<\/sup>C \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>F<sub>SCL<\/sub> = 1 \/ T<sub>SCL<\/sub> = F<sub>INT<\/sub> \/ (2 + HT + LT) = F(CK_I2Cx) \/ [ (PSC + 1)\u00b7DIV\u00b7(2 + HT + LT) ].<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b HT \u0438 LT \u0438\u043c\u0435\u044e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 5 \u0438 4 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 &#171;\u0440\u0430\u0431\u043e\u0447\u0438\u043c\u0438&#187; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f 2 \u0438 2.<\/p>\n<h3>\u0420\u0435\u0436\u0438\u043c\u044b \u0440\u0430\u0431\u043e\u0442\u044b<\/h3>\n<h4>\u041e\u0431\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f<\/h4>\n<p>\u041c\u043e\u0434\u0443\u043b\u044c I2Cx \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_CR0.I2Cx_EN<\/code>. \u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f <em>\u043b\u043e\u0433\u0438\u043a\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/em> \u0432 \u043c\u043e\u0434\u0443\u043b\u044f\u0445 I2Cx \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<ul>\n<li>\n<p>I2C Byte mode \u2014 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439) \u0440\u0435\u0436\u0438\u043c \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u043f\u0440\u0438\u0435\u043c\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430,<\/p>\n<\/li>\n<li>\n<p>I2C Buffer mode \u2014 \u0432\u044b\u0441\u043e\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c),<\/p>\n<\/li>\n<li>\n<p>Monitor (Buffer mode) \u2014 \u0440\u0435\u0436\u0438\u043c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 (\u0441\u043d\u0438\u0444\u0444\u0435\u0440 \u0448\u0438\u043d\u044b).<\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u0432\u0443\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 (I2C) \u043c\u043e\u0434\u0443\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0438\u0433\u0440\u0430\u0442\u044c \u0440\u043e\u043b\u044c \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e (Master) \u0438\u043b\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e (Slave) \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u0448\u0438\u043d\u0435 I<sup>2<\/sup>C. \u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0438\u0442\u0430\u043c\u0438 <code>I2Cx_MDS<\/code> \u0438 <code>I2Cx_BUF_EN<\/code> \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_CR0<\/code> \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p><code>I2Cx_MDS<\/code><\/p>\n<\/th>\n<th>\n<p><code>I2Cx_BUF_EN<\/code><\/p>\n<\/th>\n<th>\n<p>\u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0 (I2C)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0 (Disable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">I2C Byte mode (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0 (I2C)<\/p>\n<\/td>\n<td>\n<p align=\"left\">1 (Enable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">I2C Buffer mode<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1 (Monitor)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0 (Disable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1 (Monitor)<\/p>\n<\/td>\n<td>\n<p align=\"left\">1 (Enable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">Monitor<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u0440\u0438 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u0437 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u0437\u043d\u0430\u043a\u043e\u043c \u0441 \u043e\u0431\u0449\u0438\u043c \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0448\u0438\u043d\u044b I<sup>2<\/sup>C. \u0414\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0438 \u0435\u0435 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0443 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u0438\u0439 \u044f\u0437\u044b\u043a:<\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/www.nxp.com\/docs\/en\/application-note\/AN10216.pdf\" rel=\"noopener noreferrer nofollow\">The I2C-bus specification<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"http:\/\/www.gaw.ru\/html.cgi\/txt\/interface\/iic\/start.htm\" rel=\"noopener noreferrer nofollow\">\u0428\u0438\u043d\u0430 I2C \u0438 \u043a\u0430\u043a \u0435\u0451 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e)<\/a><\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p>\u041e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/p>\n<\/th>\n<th>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">START<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u0421\u0442\u0430\u0440\u0442&#187; (Start)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">STOP<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u0421\u0442\u043e\u043f&#187; (Stop)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">RSTART<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0439 \u0441\u0442\u0430\u0440\u0442&#187; (Repeated Start)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">SLA<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0434\u0440\u0435\u0441\u043d\u044b\u0439 \u043a\u0430\u0434\u0440, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u043c\u0435\u043d \u0434\u0430\u043d\u043d\u044b\u043c\u0438 (Slave Address)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">SLA+W<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0434\u0440\u0435\u0441\u043d\u044b\u0439 \u043a\u0430\u0434\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0434\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 (SLA + Write)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">SLA+R<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0434\u0440\u0435\u0441\u043d\u044b\u0439 \u043a\u0430\u0434\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0434\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 (SLA + Read)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u043e&#187; (Acknowledgment)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">NACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u041d\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u043e&#187; (No Acknowledgment)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h4>\u0410\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u044f<\/h4>\n<p>\u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f <em>\u0440\u043e\u043b\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430<\/em> \u043d\u0430 \u0448\u0438\u043d\u0435 I<sup>2<\/sup>C \u0432 \u043c\u043e\u0434\u0443\u043b\u044f\u0445 I2Cx \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0440\u0435\u0436\u0438\u043c\u044b &#171;\u0432\u0435\u0434\u0443\u0449\u0435\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e&#187; (Master) \u0438 &#171;\u0432\u0435\u0434\u043e\u043c\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e&#187; (Slave). \u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432\u043a\u043b\u044e\u0447\u0435\u043d <em>\u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e<\/em> \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0420\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u0430.<\/p>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0437\u0430\u0434\u0430\u043d\u044b \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0434\u0432\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c. \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0430\u0434\u0440\u0435\u0441 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_SADR<\/code> \u0432 \u0431\u0438\u0442\u0430\u0445 1-7, \u0442.\u0435. \u0435\u0441\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442, \u0442\u043e \u0431\u0438\u0442 0 \u043c\u043e\u0436\u043d\u043e \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0432\u043d\u044b\u043c 0. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0431\u0438\u0442\u0430\u0445 9-15 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e. \u0414\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_SADR_EN<\/code>, \u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u2014 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_SADR2_EN<\/code> \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_CR0<\/code>. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u044d\u0442\u0438\u0445 \u0431\u0438\u0442\u043e\u0432 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442 \u043c\u043e\u0434\u0443\u043b\u044c \u0432 <em>\u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e<\/em> \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u043e\u043d\u0438\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f STOP, \u0435\u0441\u043b\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u044d\u0442\u0438\u0445 \u0431\u0438\u0442\u043e\u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d, \u043f\u0440\u0438 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0430 \u0448\u0438\u043d\u0435 \u043a\u0430\u0434\u0440\u0430 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443 \u043c\u043e\u0434\u0443\u043b\u044c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442 \u0444\u043b\u0430\u0433 \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f <strong>WUPF<\/strong>.<\/p>\n<p>\u0414\u043b\u044f <em>\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430<\/em> \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u0441\u043a\u0443 <code>I2Cx_MASK.I2Cx_SA_MSK<\/code> (\u0431\u0438\u0442\u044b 1-7 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430), \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u044e\u0449\u0443\u044e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c: \u0432 \u0430\u0434\u0440\u0435\u0441\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0432 1 \u0432 \u043c\u0430\u0441\u043a\u0435. \u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0432 \u043c\u0430\u0441\u043a\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0x7F, \u0442.\u0435. \u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_SADR<\/code> \u0430\u0434\u0440\u0435\u0441\u0443. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043c\u043e\u0434\u0443\u043b\u044c \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043d\u0430 \u043d\u0443\u043b\u0435\u0432\u043e\u0439 \u0430\u0434\u0440\u0435\u0441 (\u043e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432), \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0431\u0438\u0442 <code>I2Cx_CR0.I2Cx_GC_EN<\/code> (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u0431\u0440\u043e\u0448\u0435\u043d).<\/p>\n<h4>\u0411\u0443\u0444\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445<\/h4>\n<p>\u0412 \u043c\u043e\u0434\u0443\u043b\u0435 I2Cx \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0439 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_SBUF<\/code>, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0438\u0436\u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0436\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0441 32-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u043c <code>I2Cx_DAT<\/code>, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e 8-, 16- \u0438 32-\u0431\u0438\u0442\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430. \u0411\u0443\u0444\u0435\u0440 \u0442\u0435\u0441\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d \u0441 \u043f\u043e\u043b\u0435\u043c <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0447\u0438\u0441\u043b\u043e (1-4) \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u043c\u044b\u0445 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 (\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master) \u0438\u043b\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u0443\u0436\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0431\u0430\u0439\u0442 (\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Slave). \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u0439\u0442 \u043f\u0440\u0438 \u043f\u0440\u0438\u0435\u043c\u0435 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u2014 \u043e\u0442 \u043c\u043b\u0430\u0434\u0448\u0435\u0433\u043e \u043a \u0441\u0442\u0430\u0440\u0448\u0435\u043c\u0443.<\/p>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0441\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043c\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u0434\u043b\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442\u043e\u0432\u0443\u044e \u043f\u0435\u0440\u0435\u0441\u044b\u043b\u043a\u0443 (<code>STRB<\/code>) \u0432 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430, \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0431\u0430\u0439\u0442 \u2014 \u0434\u0432\u0443\u0445\u0431\u0430\u0439\u0442\u043e\u0432\u0443\u044e (<code>STRH<\/code>), \u0434\u043b\u044f 3-4 \u0431\u0430\u0439\u0442 \u2014 \u043f\u0435\u0440\u0435\u0441\u044b\u043b\u043a\u0443 \u0441\u043b\u043e\u0432\u0430 (<code>STR<\/code>).<\/p>\n<h4>\u041a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c<\/h4>\n<p>\u0414\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c \u0448\u0438\u043d\u044b I<sup>2<\/sup>C \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_CR2<\/code> \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u0431\u0438\u0442\u044b, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438\u043b\u0438 \u043f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0411\u0438\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p>\u0420\u0430\u0437\u0440\u044f\u0434 <code>I2Cx_CR2<\/code><\/p>\n<\/th>\n<th>\n<p>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<th>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f START<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STO<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">2<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_AA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ACK<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">3<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_CMD_TC<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u043e\u0432 PSTA, PSTO, PAA<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">4<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STA_LCK<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434\u044b <code>I2Cx_STA<\/code> \u0438 <code>I2Cx_PSTA<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">5<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STO_LCK<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434\u044b <code>I2Cx_STO<\/code> \u0438 <code>I2Cx_PSTO<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">6<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_AA_LCK<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434\u044b <code>I2Cx_AA<\/code> \u0438 <code>I2Cx_PAA<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">24<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_PSTA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f START \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">25<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_PSTO<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">26<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_PAA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ACK \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 STA<\/em> (START) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_STA<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 <code>I2Cx_STA_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f START, \u0435\u0441\u043b\u0438 \u0448\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u0430. \u0415\u0441\u043b\u0438 \u0448\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u0437\u0430\u043d\u044f\u0442\u0430, \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u043d\u0430 \u0448\u0438\u043d\u0435, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START. \u0415\u0441\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u0443\u0436\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b STA \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 RSTART.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 STO<\/em> (STOP) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_STO<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 <code>I2Cx_STO_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP. \u0415\u0441\u043b\u0438 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 STO \u0434\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 STA, \u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Slave \u043a\u043e\u043c\u0430\u043d\u0434\u0430 STO \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043e\u0448\u0438\u0431\u043a\u0438 \u043d\u0430 \u0448\u0438\u043d\u0435.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 AA<\/em> (ACK) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_AA<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 <code>I2Cx_AA_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ACK (\u043d\u0438\u0437\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SDA \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 9-\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043a\u0430\u0434\u0440\u0435) \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445:<\/p>\n<ul>\n<li>\n<p>\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u0440\u0438 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0438 \u0432 \u043a\u0430\u0434\u0440\u0435 SLA \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430,<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044f \u0431\u0430\u0439\u0442\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0432\u0435\u0434\u0443\u0449\u0438\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c,<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u0438\u044f \u0431\u0430\u0439\u0442\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0432\u0435\u0434\u043e\u043c\u044b\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c.<\/p>\n<\/li>\n<\/ul>\n<p>\u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0431\u0438\u0442 <code>I2Cx_AA_LCK<\/code> \u043f\u0440\u0438 <em>\u0441\u0431\u0440\u043e\u0448\u0435\u043d\u043d\u043e\u043c<\/em> \u0431\u0438\u0442\u0435 <code>I2Cx_AA<\/code>, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK (\u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0432\u044b\u0441\u043e\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SDA \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 9-\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043a\u0430\u0434\u0440\u0435) \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445:<\/p>\n<ul>\n<li>\n<p>\u043f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0432\u0435\u0434\u0443\u0449\u0438\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c,<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0432\u0435\u0434\u043e\u043c\u044b\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u043c.<\/p>\n<\/li>\n<\/ul>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u044b STO \u0438 AA \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0432 <em>\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435<\/em> (Byte mode). \u0412 <em>\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435<\/em> (Buffer mode) \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0438 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043b\u0438\u0448\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434 PSTA, PSTO \u0438 PAA. \u0414\u043b\u044f \u0438\u0445 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u043a\u0436\u0435 <em>\u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0431\u0438\u0442 <\/em><code>I2Cx_CMD_TC<\/code>.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 PSTA<\/em> \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_PSTA<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c <code>I2Cx_STA_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f RSTART \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 PSTO<\/em> \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_PSTO<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c <code>I2Cx_STO_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 PAA<\/em> \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_PAA<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c <code>I2Cx_STO_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0415\u0441\u043b\u0438 \u0431\u0438\u0442 <code>I2Cx_PAA<\/code> \u0441\u0431\u0440\u043e\u0448\u0435\u043d, \u0430 \u0431\u0438\u0442 <code>I2Cx_STO_LCK<\/code> \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d, \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442.<\/p>\n<h3>\u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c (Byte mode)<\/h3>\n<p>\u0412 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 Byte mode \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0438 \u043f\u0440\u0438\u0435\u043c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043a\u0430\u0434\u0440\u0430 \u0448\u0438\u043d\u044b I<sup>2<\/sup>C \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e <em>\u044d\u0442\u0430\u043f\u043e\u0432<\/em>, \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0437\u0443\u044e\u0449\u0438\u0445\u0441\u044f \u0442\u0435\u043c \u0438\u043b\u0438 \u0438\u043d\u044b\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c \u0448\u0438\u043d\u044b \u0438 \u043c\u043e\u0434\u0443\u043b\u044f. \u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u044d\u0442\u0430\u043f\u0430 \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 <em>\u0441\u043e\u0431\u044b\u0442\u0438\u0435<\/em>. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u0440\u0435\u0430\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u0435 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435: \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435. \u0412\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u0440\u043e\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u044b \u0438 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435. \u041e\u0442\u043c\u0435\u0442\u0438\u043c, \u0447\u0442\u043e \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u041c\u041a \u0441\u0435\u0440\u0438\u0438 MG32F02 \u0432\u0437\u044f\u043b\u0438 \u0441\u0445\u0435\u043c\u0443 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u044f I<sup>2<\/sup>C, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c\u0443\u044e \u0432 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0445 \u041c\u041a \u043d\u0430 \u044f\u0434\u0440\u0435 C8051 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, NXP, Silicon Labs) \u0438 \u041c\u041a \u0441\u0435\u0440\u0438\u0438 ATmega.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p>\u041a\u043e\u0434<\/p>\n<\/th>\n<th>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<th>\n<p>MT<\/p>\n<\/th>\n<th>\n<p>MR<\/p>\n<\/th>\n<th>\n<p>SR<\/p>\n<\/th>\n<th>\n<p>ST<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x00<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0448\u0438\u0431\u043a\u0430 \u0448\u0438\u043d\u044b<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x08<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x10<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 RSTART<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x18<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u043a\u0430\u0434\u0440 SLA+W \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 (ACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x20<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u043a\u0430\u0434\u0440 SLA+W, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e (NACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x28<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 (ACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x30<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e (NACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x38<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0435\u0440\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u0430 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u043a\u0430\u0434\u0440\u0430 SLA+R\/W \u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x40<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u043a\u0430\u0434\u0440 SLA+R \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 (ACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x48<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u043a\u0430\u0434\u0440 SLA+R, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e (NACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x50<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x58<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x60<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u043a\u0430\u0434\u0440 SLA+W \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x68<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u043a\u0430\u0434\u0440 SLA+W \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c, \u043f\u043e\u0442\u0435\u0440\u044f\u043d \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442, \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x70<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u043e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x78<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u043e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432, \u043f\u043e\u0442\u0435\u0440\u044f\u043d \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442, \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x80<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0443\u0436\u0435 \u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043e, \u043f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x88<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0443\u0436\u0435 \u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043e, \u043f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x90<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432, \u043f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0x98<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432, \u043f\u0440\u0438\u043d\u044f\u0442 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xA0<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0430\u0434\u0440\u0435\u0441\u043e\u0432\u0430\u043d\u043e, \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START \u0438\u043b\u0438 RSTART<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xA8<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u043a\u0430\u0434\u0440 SLA+R \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u0438 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xB0<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442 \u043a\u0430\u0434\u0440 SLA+R \u0441 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c, \u043f\u043e\u0442\u0435\u0440\u044f\u043d \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442, \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xB8<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 (ACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xC0<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e (NACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xC8<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u0434\u0430\u043d \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 (ACK)<\/p>\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0xF8<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b STOP \u0438\u043b\u0438 \u0448\u0438\u043d\u0430 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u0430<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<td>\n<p align=\"left\">v<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u043a\u043e\u043b\u043e\u043d\u043a\u0430\u0445 MT, MR, SR \u0438 ST \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u043c\u043e\u0441\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 &#171;\u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442&#187;, &#171;\u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442&#187;, &#171;\u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442&#187; \u0438 &#171;\u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442&#187; \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u041a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f (\u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f) \u0432\u0441\u0435\u0433\u0434\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_STA2.I2Cx_EVENT<\/code>, \u0430 \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0444\u043b\u0430\u0433\u0430 <strong>EVENTF<\/strong> \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u043c\u0443 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044e. \u0412 \u043f\u0440\u0438\u0435\u043c\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u044d\u0442\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e\u0431\u0430\u0439\u0442\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 <code>I2Cx_SBUF<\/code>. \u0414\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u043d\u0430 \u0448\u0438\u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u0432\u044b\u0448\u0435\u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b STA, STO \u0438 AA.<\/p>\n<p>\u0412 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 User Guide \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0435 \u0431\u043b\u043e\u043a-\u0441\u0445\u0435\u043c\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f\u043c\u0438 \u0434\u043b\u044f \u0440\u0435\u0436\u0438\u043c\u043e\u0432: &#171;\u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442&#187;, &#171;\u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442&#187;, &#171;\u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442&#187;, &#171;\u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442&#187; \u0438 &#171;\u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432&#187;. \u041e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430.<\/p>\n<h3>\u0410\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c (Buffer mode)<\/h3>\n<h4>\u041e\u0431\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f<\/h4>\n<p>\u0410\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c (Buffer mode) \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c I2C \u0438 \u0441\u0432\u0435\u0441\u0442\u0438 \u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u043a\u043e\u0434. \u0420\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0432 \u044d\u0442\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u044e 4-\u0431\u0430\u0439\u0442\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430, \u0430 \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0441 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043e\u0439 \u0434\u043e\u0441\u0442\u0438\u0433\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0444\u043b\u0430\u0433\u043e\u0432 <strong>RXF<\/strong> \u0438 <strong>TXF<\/strong>. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438 \u043f\u0440\u0438\u0435\u043c\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0442\u0430\u043a\u0436\u0435 32-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 (Shadow Buffer). \u0421 \u0431\u0443\u0444\u0435\u0440\u043e\u043c \u0441\u0432\u044f\u0437\u0430\u043d \u0441\u0447\u0435\u0442\u0447\u0438\u043a <code>I2Cx_ACNT<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 1 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445:<\/p>\n<ul>\n<li>\n<p>\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u2014 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0438\u0437 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 Shift Buffer \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440,<\/p>\n<\/li>\n<li>\n<p>\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u2014 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0438\u0437 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 \u0432 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440.<\/p>\n<\/li>\n<\/ul>\n<h4>\u0412\u0435\u0434\u0443\u0449\u0435\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e (Master)<\/h4>\n<p>\u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8e0\/d6e\/fc5\/8e0d6efc526a9d3691327633fc97fc01.png\" alt=\"\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode - Master\" title=\"\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode - Master\" width=\"800\" height=\"440\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8e0\/d6e\/fc5\/8e0d6efc526a9d3691327633fc97fc01.png\"\/><figcaption>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode &#8212; Master<\/figcaption><\/figure>\n<p>\u0412\u0435\u0434\u0443\u0449\u0435\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430 \u0448\u0438\u043d\u0435 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043a\u0430\u0434\u0440\u0430 SLA. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0434\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 STA \u0441 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code> \u0447\u0438\u0441\u043b\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 N \u043e\u0442 1 \u0434\u043e 4. \u0414\u0430\u043b\u0435\u0435 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435. <em>\u041f\u0435\u0440\u0432\u044b\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 \u0431\u0430\u0439\u0442\u043e\u043c \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0430\u0434\u0440\u0435\u0441<\/em> \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435, \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0439 \u043d\u0430 1 \u0440\u0430\u0437\u0440\u044f\u0434 \u0432\u043b\u0435\u0432\u043e. \u0415\u0441\u043b\u0438 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442 \u0431\u0430\u0439\u0442\u0430 \u0441\u0431\u0440\u043e\u0448\u0435\u043d, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u0434\u0440 SLA+W, \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u2014 \u043a\u0430\u0434\u0440 SLA+R. \u0415\u0441\u043b\u0438 \u0431\u044b\u043b\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u043e N>1, \u0442\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c ACK \u0432 \u043a\u0430\u0434\u0440\u0435 SLA+W \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u044d\u0442\u043e\u043c \u0436\u0435 \u043a\u0430\u0434\u0440\u0435. \u0412 \u043b\u044e\u0431\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0435\u0441\u043b\u0438 \u0431\u044b\u043b\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0431\u0430\u0439\u0442.  \u041f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <strong>TXF<\/strong>.<\/p>\n<p>\u041f\u0440\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0438 \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_BUF_CNT<\/code> \u0447\u0438\u0441\u043b\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 \u043d\u0443\u0436\u043d\u043e \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 PSTO \u0438\u043b\u0438 PSTA, \u0447\u0442\u043e\u0431\u044b \u043f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u0438\u043b\u0438 RSTART \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0431\u044b\u043b \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d \u043a\u0430\u0434\u0440 SLA+R, \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c \u043f\u0440\u0438\u0435\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043f\u043e\u043b\u0435 <code>I2Cx_BUF_CNT<\/code> \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0447\u0438\u0441\u043b\u043e \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 N \u043e\u0442 1 \u0434\u043e 4. \u041f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 N \u0431\u0430\u0439\u0442 \u0438\u0437 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <strong>RXF<\/strong>.<\/p>\n<p>\u0412 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u044e\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0435\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 PSTO \u0438\u043b\u0438 PSTA. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f <em>\u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e<\/em> \u0431\u0430\u0439\u0442\u0430 \u043c\u043e\u0434\u0443\u043b\u044c \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK, \u0441\u0438\u0433\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044f \u0442\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u043c\u0443 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443 \u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438. \u041f\u0440\u0438\u0435\u043c \u0432\u0441\u0435\u0445 <em>\u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445<\/em> \u0431\u0430\u0439\u0442\u043e\u0432 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438. \u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044c \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442, \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 PSTO (\u0438\u043b\u0438 PSTA) \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0442\u0430\u043a\u0436\u0435 \u0434\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 PAA.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043f\u0435\u0440\u0435\u0434 \u043f\u0440\u0438\u0435\u043c\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0444\u043b\u0430\u0433 <strong>RXF<\/strong>, \u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c &#171;\u0444\u0438\u043a\u0442\u0438\u0432\u043d\u043e\u0435&#187; \u0447\u0442\u0435\u043d\u0438\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_DAT<\/code>, \u0430 \u043d\u0435 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0442\u044c \u0444\u043b\u0430\u0433 \u044f\u0432\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u044c\u044e 1 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_STA<\/code>, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u0440\u0438\u0435\u043c\u0443 \u043b\u0438\u0448\u043d\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>\u0414\u043b\u044f \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 <em>\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445<\/em>:<\/p>\n<ol>\n<li>\n<p>\u0414\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>STA<\/code> \u0441 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e 1 \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0430\u0434\u0440\u0435\u0441 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0439 \u043d\u0430 1 \u0440\u0430\u0437\u0440\u044f\u0434 \u0432\u043b\u0435\u0432\u043e. \u041c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442 \u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c <em>\u043d\u0443\u043b\u0435\u0432\u044b\u043c<\/em>. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 SLA+W.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0436\u0438\u0434\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0444\u043b\u0430\u0433\u0430 <strong>TXF<\/strong>, \u0442.\u0435. \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u044c \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438\u043d\u044f\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code> \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0447\u0438\u0441\u043b\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 (1-4), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0438\u0442 <code>I2Cx_PSTO<\/code> \u0438\u043b\u0438 <code>I2Cx_PSTA<\/code> (\u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c <code>I2Cx_CMD_TC<\/code>), \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f <em>\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438<\/em> \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u0438\u043b\u0438 RSTART \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.<\/p>\n<\/li>\n<li>\n<p>\u0417\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> (\u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430).<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0430\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 (\u0431\u043e\u043b\u0435\u0435 4-\u0445 \u0431\u0430\u0439\u0442), \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u043f\u0443\u043d\u043a\u0442\u044b 3-5.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0438 <em>&#171;\u0440\u0443\u0447\u043d\u043e\u043c&#187; \u043c\u0435\u0442\u043e\u0434\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438<\/em> \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u0444\u043b\u0430\u0433\u0430 <strong>TSCF<\/strong> (\u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438) \u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0434\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>STO<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0438 <em>\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438<\/em> \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u043f\u0435\u0440\u0435\u0434 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u0430\u0434\u0440\u0430 (\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b <code>STA<\/code>) \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u0444\u043b\u0430\u0433\u0430 <strong>STOPF<\/strong>.<\/p>\n<\/li>\n<\/ol>\n<p>\u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u0441\u0431\u0440\u043e\u0441 \u0444\u043b\u0430\u0433\u0430 <strong>TXF<\/strong> \u043f\u0435\u0440\u0435\u0434 \u043f\u0443\u043d\u043a\u0442\u043e\u043c 4 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043a\u0430\u0434\u0440\u043e\u0432 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438.<\/p>\n<p>\u0414\u043b\u044f \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 <em>\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u0438\u0435\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445<\/em>:<\/p>\n<ol>\n<li>\n<p>\u0414\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>STA<\/code> \u0441 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e 1 \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0430\u0434\u0440\u0435\u0441 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044b\u0439 \u043d\u0430 1 \u0440\u0430\u0437\u0440\u044f\u0434 \u0432\u043b\u0435\u0432\u043e. \u041c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442 \u0430\u0434\u0440\u0435\u0441\u0430 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c <em>\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d<\/em>. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0431\u0443\u0434\u0435\u0442 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 SLA+R.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0436\u0438\u0434\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0444\u043b\u0430\u0433\u0430 <strong>SADRF<\/strong>, \u0442.\u0435. \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f SLA+R.<\/p>\n<\/li>\n<li>\n<p>\u0412 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code> \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0447\u0438\u0441\u043b\u043e \u043e\u0436\u0438\u0434\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 (1-4), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0438\u0442 <code>I2Cx_PAA<\/code> \u0438(\u0438\u043b\u0438) <code>I2Cx_PSTO<\/code> (\u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c <code>I2Cx_CMD_TC<\/code>), \u0435\u0441\u043b\u0438 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f  <em>\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438<\/em> \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u0438(\u0438\u043b\u0438) \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0436\u0438\u0434\u0430\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0444\u043b\u0430\u0433\u0430 <strong>RXF<\/strong>, \u0442.\u0435. \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0431\u0443\u0444\u0435\u0440\u0435.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_DAT<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0439 \u043f\u0440\u0438\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445 (\u0431\u043e\u043b\u0435\u0435 4-\u0445 \u0431\u0430\u0439\u0442), \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u043f\u0443\u043d\u043a\u0442\u044b 4-6.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0438 <em>&#171;\u0440\u0443\u0447\u043d\u043e\u043c&#187; \u043c\u0435\u0442\u043e\u0434\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438<\/em> \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u0434\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>STO<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0438 <em>\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438<\/em> \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u043f\u0435\u0440\u0435\u0434 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u0430\u0434\u0440\u0430 (\u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b <code>STA<\/code>) \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u044e \u0444\u043b\u0430\u0433\u0430 <strong>STOPF<\/strong>.<\/p>\n<\/li>\n<\/ol>\n<h4>\u0412\u0435\u0434\u043e\u043c\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e (Slave)<\/h4>\n<p>\u041c\u043e\u0434\u0443\u043b\u044c \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (slave) \u043f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0431\u0438\u0442\u043e\u0432 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u0430 <code>I2Cx_SADR_EN<\/code> \u0438\u043b\u0438 <code>I2Cx_SADR2_EN<\/code>. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/804\/9ed\/321\/8049ed3210d99b94ac2b755a4c230da4.png\" alt=\"\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode - Slave\" title=\"\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode - Slave\" width=\"800\" height=\"406\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/804\/9ed\/321\/8049ed3210d99b94ac2b755a4c230da4.png\"\/><figcaption>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode &#8212; Slave<\/figcaption><\/figure>\n<p>\u041f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0438 \u043a\u0430\u0434\u0440\u0430 SLA+R \u0441 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u043c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442 \u043a\u0430\u0434\u0440 \u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442 \u0444\u043b\u0430\u0433 <strong>SADRF<\/strong>. \u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 <code>I2Cx_DAT<\/code> (\u0440\u0435\u0436\u0438\u043c Slave Transmitter) \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440. \u0421\u0447\u0435\u0442\u0447\u0438\u043a \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_ACNT<\/code> \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0431\u0430\u0439\u0442 \u0438\u0437 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 \u0432 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0447\u0438\u0441\u043b\u043e N, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435 \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>, \u0431\u044b\u043b\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0435 \u043e\u0442 1 \u0434\u043e 4, \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 N \u0431\u0430\u0439\u0442 \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u043d\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <strong>TXF<\/strong>. \u0412 \u044d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435. \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0441\u0447\u0435\u0442\u0447\u0438\u043a <code>I2Cx_ACNT<\/code> <em>\u043e\u0431\u043d\u0443\u043b\u044f\u0435\u0442\u0441\u044f<\/em>. \u0415\u0441\u043b\u0438 \u043d\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0431\u044b\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u044b, \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441 \u043d\u0443\u043b\u0435\u0432\u043e\u0433\u043e \u043f\u043e (N-1)-\u0439 \u0431\u0430\u0439\u0442. \u0414\u0430\u043d\u043d\u044b\u0435 \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u0448\u0438\u043d\u0443 \u043f\u043e\u043a\u0430 \u0432\u0435\u0434\u0443\u0449\u0435\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0435 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u044b \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <code>I2Cx_BUF_CNT<\/code> \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043d\u0430 \u0448\u0438\u043d\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 c\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u0438\u043b\u0438 RSTART. \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f <code>I2Cx_BUF_CNT<\/code> \u0440\u0430\u0432\u043d\u043e 0, \u0444\u043b\u0430\u0433 <strong>TXF<\/strong> \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0441\u043b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 8-\u0433\u043e \u0431\u0430\u0439\u0442\u0430, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u0430\u043a\u0438\u043c-\u043b\u0438\u0431\u043e \u0431\u0430\u0439\u0442\u0430\u043c \u0431\u0443\u0444\u0435\u0440\u0430 \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u043a\u0430\u0434\u0440\u0430 SLA+W \u0442\u0430\u043a\u0436\u0435 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <strong>SADRF<\/strong> \u0438 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u0440\u0438\u0435\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445. \u041a\u0430\u0436\u0434\u044b\u0439 \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0439 \u0431\u0430\u0439\u0442 \u0438\u0437 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440. \u0427\u0435\u0442\u044b\u0440\u0435\u0445\u0431\u0430\u0439\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u043c\u043b\u0430\u0434\u0448\u0435\u0433\u043e \u0431\u0430\u0439\u0442\u0430. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0430\u0439\u0442, \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 \u0432 \u044d\u0442\u043e\u0442 \u0431\u0443\u0444\u0435\u0440, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_ACNT<\/code>. \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 4-\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0438\u043b\u0438 \u043f\u0440\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u043d\u0430 \u0448\u0438\u043d\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u0438\u043b\u0438 RSTART \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f:<\/p>\n<ul>\n<li>\n<p>\u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043f\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code>,<\/p>\n<\/li>\n<li>\n<p>\u0447\u0438\u0441\u043b\u043e \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0431\u0430\u0439\u0442 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>,<\/p>\n<\/li>\n<li>\n<p>\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f <code>I2Cx_CR2.I2Cx_ACNT<\/code> <em>\u043e\u0431\u043d\u0443\u043b\u044f\u0435\u0442\u0441\u044f<\/em>,<\/p>\n<\/li>\n<li>\n<p>\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <strong>RXF<\/strong>, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0438 \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u043b\u044f \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u043e\u0436\u043d\u043e \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 <em>\u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b<\/em>:<\/p>\n<ol>\n<li>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0430\u0434\u0440\u0435\u0441 \u0438\u043b\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 (\u043f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u0438 \u043c\u0430\u0441\u043a\u0443) \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c slave.<\/p>\n<\/li>\n<li>\n<p><em>\u041e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e:<\/em> \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0444\u043b\u0430\u0433\u0430 <strong>SADRF<\/strong> (\u043e\u0447\u0435\u0432\u0438\u0434\u043d\u043e, \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u0430\u0434\u0440\u0430 SLA+W \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439) \u0434\u043b\u044f \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u0430\u043a\u0442\u0430 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443 \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u043a \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e \u0437\u0430\u043f\u0440\u043e\u0441\u0430.<\/p>\n<\/li>\n<li>\n<p>\u041e\u0436\u0438\u0434\u0430\u0442\u044c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0444\u043b\u0430\u0433\u0430 <strong>RXF<\/strong>, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_DAT<\/code>, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0431\u0430\u0439\u0442 \u0432\u0437\u044f\u0442\u044c \u0438\u0437 \u043f\u043e\u043b\u044f <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435. \u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0439 \u043f\u0440\u0438\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u043f\u0443\u043d\u043a\u0442.<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u043c\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u0443 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043e\u0442\u0432\u0435\u0442, \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0431\u0430\u0439\u0442 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>, \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0438\u0445 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code>. \u042d\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c <em>\u043d\u0435 \u0434\u043e\u0436\u0438\u0434\u0430\u044f\u0441\u044c<\/em> \u0430\u043a\u0442\u0438\u0432\u0430\u0446\u0438\u0438 \u0444\u043b\u0430\u0433\u0430 <strong>SADRF<\/strong> \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043a\u0430\u0434\u0440\u0435 SLA+R.<\/p>\n<\/li>\n<li>\n<p>\u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0444\u043b\u0430\u0433\u0430 <strong>TXF<\/strong> \u0438 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u043f\u0443\u043d\u043a\u0442.<\/p>\n<\/li>\n<li>\n<p><em>\u041e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e:<\/em> \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0444\u043b\u0430\u0433\u043e\u0432 <strong>STOPF<\/strong> \u0438\u043b\u0438 <strong>RSTRF<\/strong>.<\/p>\n<\/li>\n<\/ol>\n<h3>\u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438<\/h3>\n<h4>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043b\u0438\u043d\u0438\u0435\u0439 SCL \u0434\u043b\u044f Slave<\/h4>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432\u0435\u0434\u043e\u043c\u043e\u043c\u0443 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b \u0432\u0435\u0434\u0443\u0449\u0438\u0439. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I<sup>2<\/sup>C \u0432\u0435\u0434\u043e\u043c\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0434\u0435\u0440\u0436\u0430\u0442\u044c \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u0443\u0442\u0435\u043c \u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u043b\u0438\u043d\u0438\u0438 SCL \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u043b\u0438\u043d\u0438\u0438 SCL \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e <em>\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430<\/em> \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f:<\/p>\n<ul>\n<li>\n<p><em>\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430<\/em> \u0431\u0443\u0444\u0435\u0440 \u0443\u0436\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d, \u043d\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0435\u0449\u0435 \u043d\u0435 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b\u0430 \u0438\u0437 \u043d\u0435\u0433\u043e \u0434\u0430\u043d\u043d\u044b\u0435;<\/p>\n<\/li>\n<li>\n<p><em>\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438<\/em> \u0431\u0443\u0444\u0435\u0440 \u0443\u0436\u0435 \u043e\u043f\u0443\u0441\u0442\u043e\u0448\u0435\u043d, \u043d\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0435\u0449\u0435 \u043d\u0435 \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0430 \u0432 \u043d\u0435\u0433\u043e \u043d\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u043b\u044f <em>\u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f<\/em> \u0434\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0443\u0436\u043d\u043e <em>\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c<\/em> \u0431\u0438\u0442 <code>I2Cx_CR0.I2Cx_SCLS_DIS<\/code>.<\/p>\n<h4>\u0422\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430<\/h4>\n<p>\u0412 \u0441\u043e\u0441\u0442\u0430\u0432 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2Cx \u0432\u0445\u043e\u0434\u0438\u0442 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0439 \u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 TMO. \u0422\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u043c CK_I2Cx_TMO (\u0441\u043c. \u043f. \u0422\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435). \u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u0442\u0430\u0439\u043c\u0435\u0440\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/0b3\/2d7\/9bc\/0b32d79bca2401fa9bd2c8c24920ed49.png\" alt=\"\u0422\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C\" title=\"\u0422\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C\" width=\"656\" height=\"360\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0b3\/2d7\/9bc\/0b32d79bca2401fa9bd2c8c24920ed49.png\"\/><figcaption>\u0422\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C<\/figcaption><\/figure>\n<p>\u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044f <code>I2Cx_TMOUT.I2Cx_TMO_MDS<\/code> \u0442\u0430\u0439\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445:<\/p>\n<ul>\n<li>\n<p>0 \u2014 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u043d\u0430 \u043b\u0438\u043d\u0438\u0438 SCL (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e),<\/p>\n<\/li>\n<li>\n<p>1 \u2014 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u043d\u0430 \u043b\u0438\u043d\u0438\u044f\u0445 SCL \u0438 SDA,<\/p>\n<\/li>\n<li>\n<p>2 \u2014 \u0442\u0430\u0439\u043c\u0435\u0440 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f.<\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0431\u0438\u0442 <code>I2Cx_TMOUT.I2Cx_TMO_EN<\/code>. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c I2Cx. \u041f\u0435\u0440\u0438\u043e\u0434 \u0441\u0447\u0435\u0442\u0430 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_TMOUT.I2Cx_TMO_CNT<\/code>. \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430 (\u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f) \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 <strong>TMOUTF<\/strong>. \u0415\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0431\u0438\u0442 <code>I2Cx_TMOUT.I2Cx_TMO_CTL<\/code>, \u0442\u043e \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u0431\u0440\u043e\u0441 \u0432\u0441\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f I2Cx. \u041f\u043e\u0441\u043b\u0435 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u0430 TMO \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u043e\u0439 \u043d\u0430 \u0441\u0431\u0440\u043e\u0441 \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0444\u043b\u0430\u0433 <strong>TMOUTF<\/strong>, \u0438\u043d\u0430\u0447\u0435 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0431\u0440\u043e\u0441 \u043c\u043e\u0434\u0443\u043b\u044f I2Cx \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c \u0431\u0438\u0442\u0435 <code>I2Cx_TMOUT.I2Cx_TMO_CTL<\/code> <em>\u043d\u0435 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442<\/em> \u043a \u0441\u0431\u0440\u043e\u0441\u0443 \u044d\u0442\u043e\u0433\u043e \u0444\u043b\u0430\u0433\u0430.<\/p>\n<h3>\u0421\u043e\u0431\u044b\u0442\u0438\u044f \u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/h3>\n<p>\u0421\u0445\u0435\u043c\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u0449\u0438\u0445 (\u0432\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0445) \u0444\u043b\u0430\u0433\u043e\u0432 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 <strong>BUFF<\/strong>, <strong>STPSTRF<\/strong> \u0438 <strong>ERRF<\/strong>, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u044e\u0449\u0438\u0445 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f INT_I2Cx, \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0430 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/bec\/50a\/cd8\/bec50acd839628f54335a9c23aad4b8f.png\" alt=\"\u0421\u0445\u0435\u043c\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u043e\u0432 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u044f I2C\" title=\"\u0421\u0445\u0435\u043c\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u043e\u0432 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u044f I2C\" width=\"704\" height=\"572\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bec\/50a\/cd8\/bec50acd839628f54335a9c23aad4b8f.png\"\/><figcaption>\u0421\u0445\u0435\u043c\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u043e\u0432 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u043c\u043e\u0434\u0443\u043b\u044f I2C<\/figcaption><\/figure>\n<p>\u0424\u043b\u0430\u0433\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_STA<\/code>, \u0430 \u0431\u0438\u0442\u044b \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u2014 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_INT<\/code>. \u041f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0438 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0444\u043b\u0430\u0433\u043e\u0432 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p>\u0420\u0430\u0437\u0440\u044f\u0434 <code>I2Cx_STA<\/code><\/p>\n<\/th>\n<th>\n<p>\u0424\u043b\u0430\u0433 \u0441\u043e\u0431\u044b\u0442\u0438\u044f<\/p>\n<\/th>\n<th>\n<p>\u0411\u0438\u0442 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/p>\n<\/th>\n<th>\n<p>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f<\/p>\n<\/th>\n<th>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUSYF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">I2C control busy<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041c\u043e\u0434\u0443\u043b\u044c \u0437\u0430\u043d\u044f\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\">EVENTF<\/p>\n<\/td>\n<td>\n<p align=\"left\">EVENT_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Event code change<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0418\u0437\u043c\u0435\u043d\u0438\u043b\u043e\u0441\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">2<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUFF<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Buffer mode event<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u0449\u0438\u0439 \u0444\u043b\u0430\u0433 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0432 \u0431\u0443\u0444\u0435\u0440\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">3<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Error detect<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u0449\u0438\u0439 \u0444\u043b\u0430\u0433 \u043e\u0448\u0438\u0431\u043e\u043a<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">4<\/p>\n<\/td>\n<td>\n<p align=\"left\">TMOUTF<\/p>\n<\/td>\n<td>\n<p align=\"left\">TMOUT_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Timeout detect<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">5<\/p>\n<\/td>\n<td>\n<p align=\"left\">WUPF<\/p>\n<\/td>\n<td>\n<p align=\"left\">WUP_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">STOP mode wakeup by I2C event<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0431\u044b\u0442\u0438\u0435 \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0438\u0442\u0430\u043d\u0438\u044f STOP \u043f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0438 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043a\u0430\u0434\u0440\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Slave<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">6<\/p>\n<\/td>\n<td>\n<p align=\"left\">RXF<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Receive data register not empty<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0440\u0438\u043d\u044f\u0442\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0433\u043e\u0442\u043e\u0432\u044b \u043a \u0447\u0442\u0435\u043d\u0438\u044e (Buffer mode)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">7<\/p>\n<\/td>\n<td>\n<p align=\"left\">TXF<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Transmit data register empty<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u0443\u0444\u0435\u0440 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0433\u043e\u0442\u043e\u0432 \u043a \u0437\u0430\u043f\u0438\u0441\u0438 \u043d\u043e\u0432\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 (Buffer mode)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">8<\/p>\n<\/td>\n<td>\n<p align=\"left\">RSTRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Repeat Start asserted<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b RSTART<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">9<\/p>\n<\/td>\n<td>\n<p align=\"left\">STOPF<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Stop detection<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b STOP<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">10<\/p>\n<\/td>\n<td>\n<p align=\"left\">CNTF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_CNT register empty<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0447\u0435\u0442\u0447\u0438\u043a BUF_CNT \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0438 0<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">11<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERRCF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">I2C error<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u0432 \u043a\u0430\u0434\u0440\u0435 SLA \u0438\u043b\u0438 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043d\u043d\u044b\u0445<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">12<\/p>\n<\/td>\n<td>\n<p align=\"left\">SADRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">BUF_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slave address asserted or match detect<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Slave \u2014 \u043f\u043e\u043b\u0443\u0447\u0435\u043d \u043a\u0430\u0434\u0440 SLA \u0441 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c, \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u2014 \u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b \u0430\u0434\u0440\u0435\u0441 \u0432 \u043a\u0430\u0434\u0440\u0435 SLA+R<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">13<\/p>\n<\/td>\n<td>\n<p align=\"left\">SLAF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slave mode detect<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d \u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">14<\/p>\n<\/td>\n<td>\n<p align=\"left\">MSTF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">Master mode detection<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412\u043a\u043b\u044e\u0447\u0435\u043d \u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">15<\/p>\n<\/td>\n<td>\n<p align=\"left\">RWF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">Read or write transfer direction<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 8-\u0433\u043e \u0431\u0438\u0442\u0430 \u0432 \u043a\u0430\u0434\u0440\u0435 SLA: 0 &#8212; \u043a\u0430\u0434\u0440 SLA+W, 1 &#8212; \u043a\u0430\u0434\u0440 SLA+R<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">16<\/p>\n<\/td>\n<td>\n<p align=\"left\">TSCF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">Shadow Buffer Transfer complete<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0431\u0430\u0439\u0442 \u0438\u0437 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d \u0432 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440, \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u2014 \u0438\u0437 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">17<\/p>\n<\/td>\n<td>\n<p align=\"left\">STPSTRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">STPSTR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">STOP or START detect<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u0438\u043b\u0438 START<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">18<\/p>\n<\/td>\n<td>\n<p align=\"left\">TXRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<td>\n<p align=\"left\">Slave mode transmit data register remained status<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0424\u043b\u0430\u0433 \u0430\u043a\u0442\u0438\u0432\u0435\u043d, \u0435\u0441\u043b\u0438 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u0438\u0437-\u0437\u0430 \u043e\u0448\u0438\u0431\u043a\u0438 \u0432 \u0431\u0443\u0444\u0435\u0440\u0435 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u043d\u0435\u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">19<\/p>\n<\/td>\n<td>\n<p align=\"left\">ROVRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Data buffer RX overrun<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438\u0435\u043c\u0430 (Buffer mode, \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430 SCL \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">20<\/p>\n<\/td>\n<td>\n<p align=\"left\">TOVRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Data buffer TX Overrun<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u0443\u0444\u0435\u0440 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043d\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u0430\u043d\u043d\u044b\u0445 (Buffer mode, \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430 SCL \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0430)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">21<\/p>\n<\/td>\n<td>\n<p align=\"left\">NACKF<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Invalid NoACK received Error<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b NACK<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">22<\/p>\n<\/td>\n<td>\n<p align=\"left\">ALOSF<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Arbitration lost error<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041f\u043e\u0442\u0435\u0440\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">23<\/p>\n<\/td>\n<td>\n<p align=\"left\">BERRF<\/p>\n<\/td>\n<td>\n<p align=\"left\">ERR_IE<\/p>\n<\/td>\n<td>\n<p align=\"left\">Bus error<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0448\u0438\u0431\u043a\u0430 \u0448\u0438\u043d\u044b<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Byte mode \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u041f\u041e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 EVENT_IE \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>EVENTF<\/strong>. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u041f\u041e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 BUF_IE \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>BUFF<\/strong>. \u0415\u0441\u043b\u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0430\u043d\u0430\u043b\u0438\u0437 \u043e\u0448\u0438\u0431\u043e\u043a, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0442\u0430\u043a\u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 ERR_IE \u043f\u043e \u043e\u0431\u0449\u0435\u043c\u0443 \u0444\u043b\u0430\u0433\u0443 <strong>ERRF<\/strong>. \u041f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 TMOUT_IE \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0442\u0443 \u043c\u043e\u0434\u0443\u043b\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 TMO.<\/p>\n<p>\u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0430 <em>\u043d\u0435\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<\/em>: \u0432 \u0441\u0442\u0430\u0440\u0448\u0435\u043c \u0431\u0430\u0439\u0442\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_STA<\/code> \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u0434 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f <code>I2Cx_EVENT<\/code>, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435, \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode.<\/p>\n<p>\u0414\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e:<\/p>\n<ol>\n<li>\n<p>\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0441\u043e\u0431\u044b\u0442\u0438\u0435 (\u0438\u043b\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u044f) \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_INT<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0430\u043c\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_INT.I2Cx_IEA<\/code>.<\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 IRQ \u043e\u0442 \u043c\u043e\u0434\u0443\u043b\u044f \u0432 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 NVIC \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>CPU_ISER<\/code>.<\/p>\n<\/li>\n<\/ol>\n<h3>\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<h4>\u0410\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c<\/h4>\n<p>\u0426\u0435\u043b\u044c\u044e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u041c\u041a \u0432 \u0440\u043e\u043b\u0438 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0448\u0438\u043d\u044b I<sup>2<\/sup>C. \u0412 \u0440\u043e\u043b\u0438 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u041c\u041a MG32F02A064AD48, \u0432 \u0440\u043e\u043b\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u2014 (1) &#171;\u044d\u0442\u0430\u043b\u043e\u043d\u043d\u044b\u0439&#187; Slave \u2014 \u0447\u0430\u0441\u044b \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 DS3231 \u0438 (2) \u041c\u041a MG32F02A032AT20. \u0421\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/441\/2b6\/440\/4412b6440d7425110b2c40a7e6e8ad52.png\" alt=\"\u0421\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u041c\u041a \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2C\" title=\"\u0421\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u041c\u041a \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2C\" width=\"1010\" height=\"586\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/441\/2b6\/440\/4412b6440d7425110b2c40a7e6e8ad52.png\"\/><figcaption>\u0421\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u041c\u041a \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2C<\/figcaption><\/figure>\n<p>\u0412\u0441\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0437\u0430\u043f\u0438\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043e\u0442 \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u0435\u043c 3.3 \u0412 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u0430 J-Link\/ST-Link. \u0414\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0438\u0439 SWD-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043c\u0435\u0436\u0434\u0443 \u041c\u041a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044c S1. \u0414\u043b\u044f \u043b\u0438\u043d\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I<sup>2<\/sup>C SCL \u0438 SDA \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u044b \u043f\u043e\u0434\u0442\u044f\u0436\u043a\u0438 R3 \u0438 R4. \u041f\u0440\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043c\u043e\u0434\u0443\u043b\u044f DS3231 \u041c\u041a U2 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u0448\u0438\u043d\u044b I<sup>2<\/sup>C \u043f\u0435\u0440\u0435\u043c\u044b\u0447\u043a\u0430\u043c\u0438 (\u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u044b), \u0430 \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 U2 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u2014 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043c\u043e\u0434\u0443\u043b\u044c DS3231, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u041c\u041a \u044d\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0443. \u041a\u0430\u0436\u0434\u044b\u0439 \u041c\u041a \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043a \u041f\u041a \u0447\u0435\u0440\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 UART (\u0432 \u043e\u0431\u043e\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043c\u043e\u0434\u0443\u043b\u044c \u041c\u041a URT0).<\/p>\n<h4>\u041f\u0440\u043e\u0435\u043a\u0442\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b<\/h4>\n<p>\u0412 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0434\u0432\u0430 &#171;\u043f\u043e\u0434\u043e\u043f\u044b\u0442\u043d\u044b\u0445&#187; \u041c\u041a, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0444\u0430\u0439\u043b\u0430\u0445 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0435\u0441\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f. \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u043f\u0443\u0442\u0435\u0439 \u043a \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u0447\u043d\u044b\u043c \u0444\u0430\u0439\u043b\u0430\u043c \u043e\u0442 \u0432\u0435\u043d\u0434\u043e\u0440\u0430 \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u0435\u043d\u044b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>setup_paths()<\/code> \u0432 \u0444\u0430\u0439\u043b\u0435 <code>premake5.lua<\/code>, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043f\u0443\u0442\u0438 \u0437\u0430\u0432\u0438\u0441\u044f\u0442 \u043e\u0442 \u0442\u0438\u043f\u0430 \u041c\u041a. \u0414\u043b\u044f \u041c\u041a MG32F02A032 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 <code>\"MG32F02A032\"<\/code>, \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u041c\u041a \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u0430 \u2014 \u0441\u0442\u0440\u043e\u043a\u0443 <code>\"MG32F02A128\"<\/code>. \u0412 \u0444\u0430\u0439\u043b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0446\u0435\u043b\u0438 \u0441\u0431\u043e\u0440\u043a\u0438:<\/p>\n<ul>\n<li>\n<p><code>svr32<\/code> \u2014 \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c (supervisor) \u0434\u043b\u044f \u041c\u041a MG32F02A032,<\/p>\n<\/li>\n<li>\n<p><code>svr64<\/code> \u2014 \u0431\u0430\u0437\u043e\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u041c\u041a MG32F02A064,<\/p>\n<\/li>\n<li>\n<p><code>app<\/code> \u2014 \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c (application) \u0434\u043b\u044f \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (MG32F02A064),<\/p>\n<\/li>\n<li>\n<p><code>slave<\/code> \u2014 \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (MG32F02A032),<\/p>\n<\/li>\n<li>\n<p><code>clock<\/code> \u2014 \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0447\u0430\u0441\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 LED-\u0434\u0438\u0441\u043f\u043b\u0435\u044f \u043d\u0430 \u043c\/\u0441 TM1637 (MG32F02A064), \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f.<\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b shell \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438, \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0438 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u043b\u0438\u0441\u0442\u0438\u043d\u0433\u0430 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430. \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u0447\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u044b\u0445 \u0434\u0430\u043b\u0435\u0435 \u043a \u041c\u041a, \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0434\u043a\u0430\u0442\u0430\u043b\u043e\u0433 <code>ic<\/code>.<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u041c\u041a, \u0432\u044b\u043d\u0435\u0441\u0435\u043d\u044b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0439 \u0444\u0430\u0439\u043b <code>hwcf.h<\/code>. \u041d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u0437\u0430\u0434\u0430\u043d\u044b \u0434\u0432\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043d\u0430\u0431\u043e\u0440 \u0434\u043b\u044f MG32F02A032:<\/p>\n<pre><code class=\"cpp\">#ifdef HWCF_A032 #define HW_CLK_AHB        12000000    \/\/ MHz  #define HW_LED1_CRH0      PB_CR2_h0   \/\/ control register #define HW_LED1_SCH0      PB_SC_h0    \/\/ set-clear register #define HW_LED1_MASK      (1 &lt;&lt; 2)    \/\/ bit mask  #define HW_LED2_CRH0      PB_CR3_h0   \/\/ control register #define HW_LED2_SCH0      PB_SC_h0    \/\/ set-clear register #define HW_LED2_MASK      (1 &lt;&lt; 3)    \/\/ bit mask  \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 URT0: #define HW_URT0_SETTX     RH(PC_CR0_h0) = (0xA &lt;&lt; 12) | 2 #define HW_URT0_SETRX     RH(PC_CR1_h0) = (0xA &lt;&lt; 12) | (1 &lt;&lt; 5) | 3  \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 I2C0: #define HW_I2C0_SETSCL    RH(PB_CR10_h0) = (2 &lt;&lt; 12) | (1 &lt;&lt; 5) | 1 #define HW_I2C0_SETSDA    RH(PB_CR11_h0) = (2 &lt;&lt; 12) | (1 &lt;&lt; 5) | 1  #endif \/\/ HWCF_A032 <\/code><\/pre>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432 \u0441\u0434\u0435\u043b\u0430\u043d\u044b \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 UART \u0438 I2C \u0437\u0430\u0434\u0430\u043d\u044b \u0432 \u0432\u0438\u0434\u0435 \u043f\u043e\u043b\u043d\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u0440\u0442\u043e\u0432.<\/p>\n<p>\u041d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u0432\u0435\u0441\u044c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438 \u0441\u043e\u043f\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0432 <a href=\"https:\/\/github.com\/reug\/mg32f02.git\" rel=\"noopener noreferrer nofollow\">\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 GitHub<\/a>.<\/p>\n<h4>\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c I2C<\/h4>\n<h4>\u041e\u0431\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438<\/h4>\n<p>\u0414\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u043d\u0430\u0431\u043e\u0440\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u0439 (\u0444\u0430\u0439\u043b\u044b <code>src\/i2c.h<\/code> \u0438 <code>src\/i2c.c<\/code>). \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e <em>\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c<\/em> Buffer mode. \u041a\u0430\u0436\u0434\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043f\u0435\u0440\u0432\u044b\u043c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f I2Cx \u0432 \u0432\u0438\u0434\u0435 \u0431\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432:<\/p>\n<pre><code class=\"cpp\">#define I2C0_id I2C0_Base #define I2C1_id I2C1_Base <\/code><\/pre>\n<p>\u0422\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u043c, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 &#171;\u0437\u0430\u0441\u0442\u0430\u0432\u0438\u043b&#187; \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 gcc \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u043f\u0430\u043c\u044f\u0442\u0438 \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043d\u043e\u0433\u043e \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u0432\u0438\u0434\u0430 <code>str r1, [r0, #16]<\/code> (\u0437\u0434\u0435\u0441\u044c <code>r0<\/code> \u2014 \u043f\u0435\u0440\u0432\u044b\u0439 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0430\u0434\u0440\u0435\u0441), \u0432\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0443 \u0432\u044b\u0434\u0435\u043b\u044f\u0442\u044c \u0432 \u0441\u0435\u043a\u0446\u0438\u0438 \u043a\u043e\u0434\u0430 \u0435\u0449\u0435 4 \u0431\u0430\u0439\u0442\u0430 \u0434\u043b\u044f \u0435\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430.<\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u043c\u043e\u0434\u0443\u043b\u0435\u043c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 <code>i2c_init()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f I2C (\u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f) void i2c_init(uint32_t id) {   RH(CSC_KEY_h0) = 0xA217; \/\/ unlock access to CSC regs #ifdef  MG32F02A032   RB(CSC_APB0_b1) |= CSC_APB0_I2C0_EN_enable_b1; #endif #ifdef  MG32F02A128   RB(CSC_APB0_b1) |= (id &amp; 0x00010000) ? CSC_APB0_I2C1_EN_enable_b1 : CSC_APB0_I2C0_EN_enable_b1; #endif   RH(CSC_KEY_h0) = 0; \/\/ lock access to CSC regs   \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f   RH(id+( I2C0_CLK_h0 -I2C0_Base)) =     I2C_CLK_TMO_CKS_div64_h0 |  \/\/ CK_TMO: F(CK_PSC)\/64 = 37500 Hz     ((5 -1) &lt;&lt; I2C_CLK_CK_PSC_shift_h0) | \/\/ CK_PSC: 12 MHz \/5 = 2400 kHz     I2C_CLK_CK_DIV_div4_h0 |    \/\/ CK_I2Cx_INT: 600 kHz => F(SCL) = 100 kHz     I2C_CLK_CK_SEL_proc_h0;     \/\/ I2Cx_CK_SEL: APB, 12 MHz   \/\/ \u0422\u0430\u0439\u043c\u0438\u043d\u0433 \u0440\u0435\u0436\u0438\u043c\u0430 master   RH(I2C0_CR1_h0) = 0x0202; \/\/ (2+HT+LT) = 6 } <\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0442\u0438\u043f\u0430 \u041c\u041a \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u0449\u0435\u0435 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f I2C0 \u0438\u043b\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0434\u0432\u0443\u0445 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 I2C0 \u0438\u043b\u0438 I2C1 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 <code>id<\/code>. \u0414\u0430\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u043c\u043e\u0434\u0443\u043b\u044f. \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u044b \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u0448\u0438\u043d\u044b 100 \u043a\u0413\u0446. \u0420\u0430\u0441\u0447\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439: \u0441\u0443\u043c\u043c\u0430\u0440\u043d\u044b\u0439 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u0434\u0435\u043b\u0435\u043d\u0438\u044f k = F(CK_I2Cx) \/ F<sub>SCL<\/sub> = 12 \u041c\u0413\u0446 \/ 100 \u043a\u0413\u0446 = 120. \u041f\u0440\u0438 HT=2 \u0438 LT=2 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c<\/p>\n<p>(PSC + 1)\u00b7DIV = k\/ (2 + HT + LT) = 20.<\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx_TMO \u0431\u044b\u043b\u0430 \u043a\u0430\u043a \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0448\u0435, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c PSC=4 (\u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043f\u0440\u0435\u0434\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f 4+1=5) \u0438 DIV=4. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 I2Cx_CK_PSC 2400 \u043a\u0413\u0446, \u0441\u0438\u0433\u043d\u0430\u043b\u0430 I2Cx_CK_INT \u2014 600 \u043a\u0413\u0446, \u0441\u0438\u0433\u043d\u0430\u043b\u0430 I2Cx_CK_TMO \u2014 37.5 \u043a\u0413\u0446.<\/p>\n<p>\u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>i2c_setup_mode()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C \u043f\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 CR0 (\u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 I2Cx_EN) inline void i2c_setup_mode(uint32_t id, uint32_t mode) {   RW(id+( I2C0_CR0_w -I2C0_Base)) = mode | I2C_CR0_EN_enable_w; \/\/ \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u044c } <\/code><\/pre>\n<p>\u0414\u043b\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_setup_int()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0412\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f INT_I2Cx \u043f\u043e \u0444\u043b\u0430\u0433\u0430\u043c, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0432 flags \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0443 I2Cx_INT void i2c_setup_int(uint32_t id, uint32_t flags) {   RW(id+( I2C0_INT_w -I2C0_Base)) = flags | I2C_INT_IEA_enable_w; \/\/ \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0432 \u043c\u043e\u0434\u0443\u043b\u0435   \/\/ \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0432 \u043c\u043e\u0434\u0443\u043b\u0435 NVIC:   RW(CPU_ISER_w) = 1 &lt;&lt; ((id &amp; 0x00010000) ? 29 : 28); \/\/ SETENA } <\/code><\/pre>\n<p>\u0412 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u043f\u0440\u043e\u0441\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430, \u0437\u0430\u043f\u0443\u0441\u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 ~ 1 \u043c\u0441 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 <code>i2c_setup_tmout()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430, \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b mode \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0443 \u043c\u043b\u0430\u0434\u0448\u0435\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 I2Cx_TMOUT. inline void i2c_setup_tmout(uint32_t id, uint8_t mode) {   RH(id+( I2C0_TMOUT_h0 -I2C0_Base)) =     (38 &lt;&lt; I2C_TMOUT_TMO_CNT_shift_h0) | \/\/ \u043f\u0435\u0440\u0438\u043e\u0434 \u0441\u0447\u0435\u0442\u0430 ~1 \u043c\u0441 \u0434\u043b\u044f F(CK_TMO)=37.5 \u043a\u0413\u0446     mode |     \/\/ I2C_TMOUT_TMO_MDS_scl_low_h0 |     \/\/ I2C_TMOUT_TMO_MDS_scl_sda_high_h0 |     I2C_TMOUT_TMO_CTL_enable_h0 |     I2C_TMOUT_TMO_EN_enable_h0; } <\/code><\/pre>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 <code>i2c_get_tmout()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 1, \u0435\u0441\u043b\u0438 \u0442\u0430\u0439\u043c\u0430\u0443\u0442, \u0438\u043d\u0430\u0447\u0435 0. inline uint32_t i2c_get_tmout(uint32_t id) {   return (RB(id+( I2C0_STA_b0 -I2C0_Base)) &amp; I2C_STA_TMOUTF_happened_b0) != 0; } <\/code><\/pre>\n<p>\u0412\u0441\u0435 \u0431\u0438\u0442\u044b \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_get_status()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 I2Cx_STA inline uint32_t i2c_get_status(uint32_t id) {   return RW(id+( I2C0_STA_w -I2C0_Base)); } <\/code><\/pre>\n<p>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>i2c_wait_start()<\/code> \u0438 <code>i2c_wait_stop()<\/code> \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u044b \u0434\u043b\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 RSTART \u0438 STOP:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u041e\u0436\u0438\u0434\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 REPEAT START void i2c_wait_start(uint32_t id) {   i2c_setup_tmout(id,0);   while (! (RW(id+( I2C0_STA_w -I2C0_Base)) &amp; (I2C_STA_RSTRF_happened_w | I2C_STA_TMOUTF_happened_w) )) ; }  \/\/\/ \u041e\u0436\u0438\u0434\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP void i2c_wait_stop(uint32_t id) {   i2c_setup_tmout(id,0);   while (! (RW(id+( I2C0_STA_w -I2C0_Base)) &amp; (I2C_STA_STOPF_happened_w | I2C_STA_TMOUTF_happened_w) )) ; } <\/code><\/pre>\n<h4>\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (Master)<\/h4>\n<p>\u0412 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u043c\u044b\u0445 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u0445 \u0440\u0430\u0431\u043e\u0442\u0430 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0449\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0441 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0431\u0435\u0437 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f. \u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_master_startw()<\/code> \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043a\u0430\u0434\u0440 SLA+W \u0438 \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044f (\u043f\u0435\u0440\u0435\u0434 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u043b\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u043a\u0430\u0434\u0440\u0430):<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START + WRITE \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c (\u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c 0). void i2c_master_startw(uint32_t id, uint8_t addr) {   RW(id+( I2C0_CR2_w -I2C0_Base)) =       (1 &lt;&lt; 8) | \/\/ BUF_CNT       I2C_CR2_STA_LCK_un_locked_w | I2C_CR2_STA_mask_w; \/\/ STA   RB(id+( I2C0_DAT_b0 -I2C0_Base)) = addr;   i2c_setup_tmout(id,0);   while (! (RW(id+( I2C0_STA_w -I2C0_Base)) &amp; (I2C_STA_TXF_happened_w | I2C_STA_TMOUTF_happened_w) )) ; } <\/code><\/pre>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_master_startr()<\/code> \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043a\u0430\u0434\u0440 SLA+R \u0438 \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0435\u0433\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START + READ \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c (\u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c 0). void i2c_master_startr(uint32_t id, uint8_t addr) {   RW(id+( I2C0_CR2_w -I2C0_Base)) =       (1 &lt;&lt; 8) | \/\/ BUF_CNT       I2C_CR2_STA_LCK_un_locked_w | I2C_CR2_STA_mask_w; \/\/ STA   RB(id+( I2C0_DAT_b0 -I2C0_Base)) = addr | 0x01;   i2c_setup_tmout(id,0);   while (! (RW(id+( I2C0_STA_w -I2C0_Base)) &amp; (I2C_STA_SADRF_happened_w | I2C_STA_TMOUTF_happened_w) )) ; } <\/code><\/pre>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_master_send()<\/code> \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 <code>data<\/code> \u0434\u043b\u0438\u043d\u043e\u0439 <code>len<\/code> \u043e\u0442 1 \u0434\u043e 4 \u0431\u0430\u0439\u0442 \u0438 \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0438\u0445 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0443 \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0420\u0435\u0436\u0438\u043c master: \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer len \u0431\u0430\u0439\u0442 (1-4) \u0438\u0437 data. \/\/\/ \u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP, \u0435\u0441\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u043e\u043f\u0446\u0438\u044f I2C_STOP. \/\/\/ \u0411\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u043e\u043c: \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0444\u043b\u0430\u0433 TXF. void i2c_master_send(uint32_t id, uint32_t opts, uint8_t len, uint32_t data) {   RW(id+( I2C0_STA_w -I2C0_Base)) |= I2C_STA_TXF_mask_w; \/\/ \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u043c TXF, \u0438\u043d\u0430\u0447\u0435 \u0444\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0432 \u043a\u043e\u043d\u0446\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043c\u043e\u0436\u0435\u0442 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u0441\u0442\u0430\u0440\u0442\u0430   RW(id+( I2C0_CR2_w -I2C0_Base)) = opts | (len &lt;&lt; 8); \/\/ BUF_CNT   RW(id+( I2C0_DAT_w -I2C0_Base)) = data;   i2c_setup_tmout(id,0);   while (! (RW(id+( I2C0_STA_w -I2C0_Base)) &amp; (I2C_STA_TXF_happened_w | I2C_STA_TMOUTF_happened_w) )) ; } <\/code><\/pre>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_master_recv()<\/code> \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u043f\u0440\u0438\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 <code>len<\/code> \u0431\u0430\u0439\u0442 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 32-\u0431\u0438\u0442\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0420\u0435\u0436\u0438\u043c master: \u043f\u0440\u0438\u0435\u043c \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer len \u0431\u0430\u0439\u0442 (1-4). \/\/\/ \u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 ACK, \u0435\u0441\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u043e\u043f\u0446\u0438\u044f I2C_ACK. \/\/\/ \u0413\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP, \u0435\u0441\u043b\u0438 \u0443\u043a\u0430\u0437\u0430\u043d\u0430 \u043e\u043f\u0446\u0438\u044f I2C_STOP. \/\/\/ \u0411\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0449\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0441 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u043e\u043c: \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0444\u043b\u0430\u0433 RXF. uint32_t i2c_master_recv(uint32_t id, uint32_t opts, uint8_t len) {   RW(id+( I2C0_CR2_w -I2C0_Base)) = opts | (len &lt;&lt; 8); \/\/ BUF_CNT   i2c_setup_tmout(id,0);   while (! (RW(id+( I2C0_STA_w -I2C0_Base)) &amp; (I2C_STA_RXF_happened_w | I2C_STA_TMOUTF_happened_w) )) ;   return RW(id+( I2C0_DAT_w -I2C0_Base)); } <\/code><\/pre>\n<p>\u0423\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0434\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u044e\u0442 \u0432\u0442\u043e\u0440\u044b\u043c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u043c <code>opts<\/code> \u043e\u043f\u0446\u0438\u0438 \u0432 \u0432\u0438\u0434\u0435 \u0434\u0432\u043e\u0438\u0447\u043d\u044b\u0445 \u0444\u043b\u0430\u0433\u043e\u0432 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_CR2<\/code>. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u043e\u043f\u0446\u0438\u0438 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0438 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0432 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0438:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u041e\u043f\u0446\u0438\u0438 \u043f\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 I2Cx_CR2 enum I2C_Options {   I2C_NOOPTS    = 0,   I2C_NACK      = I2C_CR2_CMD_TC_enable_w | I2C_CR2_AA_LCK_un_locked_w,   I2C_ACK       = I2C_CR2_CMD_TC_enable_w | I2C_CR2_AA_LCK_un_locked_w | I2C_CR2_PAA_mask_w,   I2C_STOP      = I2C_CR2_CMD_TC_enable_w | I2C_CR2_STO_LCK_un_locked_w | I2C_CR2_PSTO_mask_w,   I2C_START     = I2C_CR2_CMD_TC_enable_w | I2C_CR2_STA_LCK_un_locked_w | I2C_CR2_PSTA_mask_w }; <\/code><\/pre>\n<h4>\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 (Slave)<\/h4>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043d\u0435\u0431\u043b\u043e\u043a\u0438\u0440\u0443\u044e\u0449\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0441 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435\u043c \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0435\u0433\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430 \u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f I2Cx.<\/p>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_write()<\/code> \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0442 1 \u0434\u043e 4 \u0431\u0430\u0439\u0442 \u0432 \u0431\u0443\u0444\u0435\u0440 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0417\u0430\u043f\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 (1-4 \u0431\u0430\u0439\u0442\u0430) inline void i2c_write(uint32_t id, uint32_t data, uint8_t len) {   RB(id+( I2C0_CR2_b1 -I2C0_Base)) = (len &amp; I2C_CR2_BUF_CNT_mask_b1); \/\/ BUF_CNT   RW(id+( I2C0_DAT_w -I2C0_Base)) = data; } <\/code><\/pre>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_read()<\/code> \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 (4 \u0431\u0430\u0439\u0442\u0430) \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0427\u0442\u0435\u043d\u0438\u0435 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438\u0435\u043c\u0430 (4 \u0431\u0430\u0439\u0442\u0430) inline uint32_t i2c_read(uint32_t id) {   return RW(id+( I2C0_DAT_w -I2C0_Base)); } <\/code><\/pre>\n<p>\u0414\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431\u044a\u0435\u043c\u043e\u043c \u0431\u043e\u043b\u0435\u0435 4 \u0431\u0430\u0439\u0442 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>i2c_writebuf()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0417\u0430\u043f\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0432 \u0431\u0443\u0444\u0435\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438. \/\/\/ \u041d\u0430 \u0432\u0445\u043e\u0434\u0435: *p - \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0431\u0443\u0444\u0435\u0440\u0435 (\u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0431\u0430\u0439\u0442 \u043f\u043e\u0441\u043b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e). \/\/\/ \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435: *p - \u043d\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u0447\u0438\u0441\u043b\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0431\u0430\u0439\u0442. \/\/\/ \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043e\u0441\u0442\u0430\u0432\u0448\u0435\u0435\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u0431\u0430\u0439\u0442. uint32_t i2c_writebuf(uint32_t id, const void* buf, uint32_t* p, uint32_t len) {   uint8_t m;   int32_t n;   n = len - *p;   if (n > 0) {     m = n &lt; 4 ? n : 4;     RB(id+( I2C0_CR2_b1 -I2C0_Base)) = (m &amp; I2C_CR2_BUF_CNT_mask_b1); \/\/ BUF_CNT     switch (m) {       case 1: RB(id+( I2C0_DAT_b0 -I2C0_Base)) = *((uint8_t*)buf + *p); break;       case 2: RH(id+( I2C0_DAT_h0 -I2C0_Base)) = *(uint16_t*)((uint8_t*)buf + *p); break;       default:         RW(id+( I2C0_DAT_w -I2C0_Base)) = *(uint32_t*)((uint8_t*)buf + *p); break;     }     *p += m;   }   return len-*p; } <\/code><\/pre>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0437\u0430 \u043e\u0434\u0438\u043d \u0432\u044b\u0437\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 4 \u0431\u0430\u0439\u0442 \u0438 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u0432\u0435\u0441\u044c \u0431\u0443\u0444\u0435\u0440 \u0434\u043b\u0438\u043d\u043e\u0439 <code>len<\/code> \u0431\u0430\u0439\u0442 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443. \u041d\u0430 \u0432\u0445\u043e\u0434\u0435 \u0442\u0430\u043a\u0436\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0430\u0434\u0440\u0435\u0441 \u0431\u0443\u0444\u0435\u0440\u0430 <code>buf<\/code>, \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0430\u0434\u0440\u0435\u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 <code>p<\/code>, \u0445\u0440\u0430\u043d\u044f\u0449\u0435\u0439 \u0442\u0435\u043a\u0443\u0449\u0443\u044e \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u0432 \u0431\u0443\u0444\u0435\u0440\u0435. \u0421\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0431\u0443\u0444\u0435\u0440\u0430 \u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <code>len<\/code> \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c\u0441\u044f \u043f\u043e\u043a\u0430 \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b. \u041f\u0435\u0440\u0435\u0434 \u043f\u0435\u0440\u0432\u044b\u043c \u0432\u044b\u0437\u043e\u0432\u043e\u043c \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 <code>p<\/code> \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0430\u043d 0. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u043e\u0441\u0442\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u043d\u0435\u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0431\u0430\u0439\u0442.<\/p>\n<p>\u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0434\u043b\u044f \u043f\u0440\u0438\u0435\u043c\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0431\u044a\u0435\u043c\u043e\u043c \u0431\u043e\u043b\u0435\u0435 4 \u0431\u0430\u0439\u0442 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>i2c_readbuf()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0427\u0442\u0435\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0438\u0445 \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440. \/\/\/ \u041d\u0430 \u0432\u0445\u043e\u0434\u0435: *p - \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0432 \u0431\u0443\u0444\u0435\u0440\u0435 (\u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0431\u0430\u0439\u0442 \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e). \/\/\/ \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435: *p - \u043d\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u043d\u043e\u0435 \u043d\u0430 \u0447\u0438\u0441\u043b\u043e \u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0445 \u0431\u0430\u0439\u0442. \/\/\/ \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u0445 \u0431\u0430\u0439\u0442. uint8_t i2c_readbuf(uint32_t id, void* buf, uint32_t* p) {   uint8_t n = RB(id+( I2C0_CR2_b1 -I2C0_Base)) &amp; I2C_CR2_BUF_CNT_mask_b1; \/\/ BUF_CNT   *(uint32_t*)((uint8_t*)buf + *p) = RW(id+( I2C0_DAT_w -I2C0_Base));   *p += n;   return n; } <\/code><\/pre>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0437\u0430 \u043e\u0434\u0438\u043d \u0432\u044b\u0437\u043e\u0432 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u043d\u044f\u0442\u044c \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 4 \u0431\u0430\u0439\u0442. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u0436\u0434\u044b\u0439 \u0440\u0430\u0437 \u043f\u043e\u0441\u043b\u0435 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u0430 <strong>RXF<\/strong> \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u044f\u0442 \u0432\u0435\u0441\u044c \u043e\u0431\u044a\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445. \u041d\u0430 \u0432\u0445\u043e\u0434\u0435 \u0442\u0430\u043a\u0436\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0430\u0434\u0440\u0435\u0441 \u0431\u0443\u0444\u0435\u0440\u0430 <code>buf<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0430\u0434\u0440\u0435\u0441 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 <code>p<\/code>, \u0445\u0440\u0430\u043d\u044f\u0449\u0435\u0439 \u0442\u0435\u043a\u0443\u0449\u0443\u044e \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u0432 \u0431\u0443\u0444\u0435\u0440\u0435. \u041f\u0435\u0440\u0435\u0434 \u043f\u0435\u0440\u0432\u044b\u043c \u0432\u044b\u0437\u043e\u0432\u043e\u043c \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 <code>p<\/code> \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0430\u043d 0. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u0431\u0430\u0439\u0442, \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0437\u0430 \u043e\u0434\u0438\u043d \u0432\u044b\u0437\u043e\u0432.<\/p>\n<h4>\u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0447\u0430\u0441\u0430\u043c\u0438 DS3231<\/h4>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043c\/\u0441 DS3231 \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u044b \u0432 \u0444\u0430\u0439\u043b <code>ic\/ds3231.c<\/code>. \u0412 \u0444\u0430\u0439\u043b\u0435 <code>ic\/ds3231.h<\/code> \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043c\u043e\u0434\u0443\u043b\u044f <code>DS3231_PORT<\/code> \u0438 \u0430\u0434\u0440\u0435\u0441 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e <code>DS3231_ADDR<\/code>:<\/p>\n<pre><code class=\"cpp\">#define DS3231_PORT   I2C0_id   \/\/ I2C module base address #define DS3231_ADDR   0xD0      \/\/ 0b1101000X, X - direction: 0 - write, 1 - read. <\/code><\/pre>\n<p>\u0414\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u043c\u0430\u043a\u0440\u043e\u0441\u044b:<\/p>\n<pre><code class=\"cpp\">#define TMOUT_CHECK     if (i2c_get_tmout(DS3231_PORT)) return; #define TMOUT_CHECK2    if (i2c_get_tmout(DS3231_PORT)) goto failure; <\/code><\/pre>\n<p>\u0412 \u0444\u0430\u0439\u043b\u0435 \u0442\u0430\u043a\u0436\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0435 <code>DS3231_Registers<\/code> \u0441 \u0430\u0434\u0440\u0435\u0441\u0430\u043c\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 DS3231 \u0438 \u043f\u0440\u043e\u0442\u043e\u0442\u0438\u043f\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0447\u0430\u0441\u0430\u043c\u0438. \u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>ds3231_read()<\/code> \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0437\u0430\u043f\u0440\u043e\u0441 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>reg<\/code> (\u0432\u0441\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0435):<\/p>\n<pre><code class=\"cpp\">uint8_t ds3231_read(uint8_t reg) {   uint32_t d;   i2c_master_startw(DS3231_PORT, DS3231_ADDR); TMOUT_CHECK2   i2c_master_send(DS3231_PORT, I2C_START, 1, reg); TMOUT_CHECK2   i2c_wait_start(DS3231_PORT); TMOUT_CHECK2    i2c_master_startr(DS3231_PORT, DS3231_ADDR); TMOUT_CHECK2   d=i2c_master_recv(DS3231_PORT, I2C_STOP, 1); TMOUT_CHECK2   i2c_wait_stop(DS3231_PORT); TMOUT_CHECK2   return d; failure:   return 0; <\/code><\/pre>\n<p>\u0412\u043d\u0430\u0447\u0430\u043b\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u0434\u0440 SLA+W \u0441 \u043e\u0434\u043d\u0438\u043c \u0431\u0430\u0439\u0442\u043e\u043c-\u0430\u0434\u0440\u0435\u0441\u043e\u043c, \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0431\u0430\u0439\u0442 \u0441 \u043d\u043e\u043c\u0435\u0440\u043e\u043c \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c RSTART \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438. \u041f\u0435\u0440\u0435\u0434 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u043c\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u043c\u0438 \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0448\u0438\u043d\u044b \u0432 \u044d\u0442\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435. \u0414\u0430\u043b\u0435\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u0434\u0440 SLA+R, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442\u0441\u044f 1 \u0431\u0430\u0439\u0442 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u0438 \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0435\u0433\u043e \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f. \u041d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430.<\/p>\n<p>\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u043c \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u0447\u0442\u0435\u043d\u0438\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 DS3231 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u0431\u0430\u0439\u0442\u043e\u0432\u044b\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 (\u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>ds3231_read_multi()<\/code>), \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u043e\u043c\u0435\u0440 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430, \u0430 \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0447\u0442\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK:<\/p>\n<pre><code class=\"cpp\">uint32_t ds3231_read_multi(uint8_t first_reg, uint8_t len) {   uint32_t d;   i2c_master_startw(DS3231_PORT, DS3231_ADDR); TMOUT_CHECK2   i2c_master_send(DS3231_PORT, I2C_START, 1, first_reg); TMOUT_CHECK2   i2c_wait_start(DS3231_PORT); TMOUT_CHECK2   i2c_master_startr(DS3231_PORT, DS3231_ADDR); TMOUT_CHECK2   d=i2c_master_recv(DS3231_PORT, I2C_STOP, len &amp; 0x07); TMOUT_CHECK2   i2c_wait_stop(DS3231_PORT); TMOUT_CHECK2   return d; failure:   return 0; } <\/code><\/pre>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u043c\u043e\u0434\u0443\u043b\u044f DS3231, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043e \u0447\u0438\u0441\u043b\u043e\u043c 4 \u043f\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0443 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438\u0435\u043c\u0430 (4 \u0431\u0430\u0439\u0442\u0430). \u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 NACK \u043c\u043e\u0434\u0443\u043b\u044c I2C \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0431\u0430\u0439\u0442 <code>len<\/code> \u043f\u0435\u0440\u0435\u0434 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP. \u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u0432\u0430 \u0432\u0438\u0434\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b DS3231:<\/p>\n<pre><code class=\"cpp\">void ds3231_write(uint8_t reg, uint8_t val) {   i2c_master_startw(DS3231_PORT, DS3231_ADDR); TMOUT_CHECK   i2c_master_send(DS3231_PORT, I2C_STOP, 2, ((uint32_t)val &lt;&lt; 8) | reg ); TMOUT_CHECK   i2c_wait_stop(DS3231_PORT); TMOUT_CHECK }  void ds3231_write_multi(uint8_t first_reg, uint8_t len, uint32_t vals) {   i2c_master_startw(DS3231_PORT, DS3231_ADDR); TMOUT_CHECK   i2c_master_send(DS3231_PORT, I2C_NOOPTS, 1, first_reg); TMOUT_CHECK   i2c_master_send(DS3231_PORT, I2C_STOP, len &amp; 0x07, vals); TMOUT_CHECK   i2c_wait_stop(DS3231_PORT); TMOUT_CHECK } <\/code><\/pre>\n<p>\u0417\u0430\u043f\u0438\u0441\u044c \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0449\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u043e\u0434\u043d\u0438\u043c \u043f\u0430\u043a\u0435\u0442\u043e\u043c \u043f\u043e\u0441\u043b\u0435 \u043a\u0430\u0434\u0440\u0430 SLA+W. \u0422\u0430\u043a\u0436\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0434\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 &#171;\u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e&#187; \u0443\u0440\u043e\u0432\u043d\u044f \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0432 \u0434\u0432\u043e\u0438\u0447\u043d\u043e-\u0434\u0435\u0441\u044f\u0442\u0438\u0447\u043d\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435 (BCD) 0xHHMMSS:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 BCD: 0xHHMMSS void clock_set_bcd(uint32_t t) {   ds3231_write(REG_SEC, t);   ds3231_write(REG_MIN, t >> 8);   ds3231_write(REG_HOUR,t >> 16); }  \/\/\/ \u0421\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 BCD: 0xHHMMSS uint32_t clock_get_bcd() {   uint8_t d[4];   d[0]=ds3231_read(REG_SEC);   d[1]=ds3231_read(REG_MIN);   d[2]=ds3231_read(REG_HOUR);   d[3]=0;   return *(uint32_t*)d; } <\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0434\u043b\u044f \u043d\u0430\u0433\u043b\u044f\u0434\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432\u0435\u0440\u0441\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0441 \u043f\u043e\u0431\u0430\u0439\u0442\u043e\u0432\u044b\u043c\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u043c\u0430\u043a\u0440\u043e\u0441\u0430 <code>DS3231_ONEBYTE_MODE<\/code>. \u0415\u0441\u043b\u0438 \u043c\u0430\u043a\u0440\u043e\u0441 \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d, \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043c\u0443\u043b\u044c\u0442\u0438\u0431\u0430\u0439\u0442\u043e\u0432\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u0438\u0445 \u0434\u0432\u0443\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439.<\/p>\n<h4>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430<\/h4>\n<p>\u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 (Buffer mode). \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c \u0447\u0430\u0441\u043e\u0432 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043c\/\u0441 DS3231. \u0422\u0435\u0441\u0442\u043e\u0432\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u043e\u043c\u0435\u0449\u0435\u043d\u044b \u0432 \u0444\u0430\u0439\u043b <code>src\/i2c_test.c<\/code>, \u0430 \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043e\u043d\u0438 \u0438\u0437 \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>app()<\/code>.<\/p>\n<p>\u041f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043c\u043e\u0434\u0443\u043b\u044f <code>i2c_test_master_setup()<\/code>:<\/p>\n<pre><code class=\"cpp\">void i2c_test_master_setup() {   i2c_init(DS3231_PORT);   HW_I2C0_SETSCL;   HW_I2C0_SETSDA;    \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b   i2c_setup_mode(DS3231_PORT,       I2C_CR0_PDRV_SEL_1t_w |       I2C_CR0_BUF_EN_enable_w |   \/\/ \u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0447\u0435\u0440\u0435\u0437 \u0431\u0443\u0444\u0435\u0440       I2C_CR0_MDS_i2c_w           \/\/ I2C : Single\/Multi-Master\/ Slave mode   ); } <\/code><\/pre>\n<p>\u0412 \u043d\u0435\u0439 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 SCL \u0438 SDA, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f I2C. \u0414\u0430\u043b\u0435\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u0430 \u0438\u0437 \u0442\u0440\u0435\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u044b:<\/p>\n<ul>\n<li>\n<p><code>i2c_test_master_w1r_ds3231()<\/code> \u2014 \u0437\u0430\u043f\u0440\u043e\u0441 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 DS3231;<\/p>\n<\/li>\n<li>\n<p><code>i2c_test_master_wN()<\/code> \u2014 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0432 \u0432\u0435\u0434\u043e\u043c\u043e\u043c;<\/p>\n<\/li>\n<li>\n<p><code>i2c_test_master_w1r()<\/code> \u2014 \u0437\u0430\u043f\u0440\u043e\u0441 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u0431\u0430\u0439\u0442 \u0432 \u0432\u0435\u0434\u043e\u043c\u043e\u043c.<\/p>\n<\/li>\n<\/ul>\n<p>\u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0435\u0440\u0432\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e:<\/p>\n<pre><code class=\"cpp\">void i2c_test_master_w1r_ds3231() {   uint32_t d;   while (1) {     d=clock_get_bcd();     if (i2c_get_tmout(I2C_PORT)) {       d=i2c_get_status(I2C_PORT);       debug32hex('S',d); i2c_print_status(d);       led2_flash();       i2c_clr_status(I2C_PORT, I2C_STA_TMOUTF_mask_w);     }     else {       debug32hex('T',d);     }     delay_ms(1000);   } } <\/code><\/pre>\n<p>\u0412 \u0446\u0438\u043a\u043b\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 1 \u0440\u0430\u0437 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u043e\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u044e\u0442\u0441\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0435 \u0441\u0435\u043a\u0443\u043d\u0434\u044b, \u043c\u0438\u043d\u0443\u0442\u044b \u0438 \u0447\u0430\u0441\u044b. \u0415\u0441\u043b\u0438 \u043d\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0435 24-\u0431\u0438\u0442\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 0xHHMMSS \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b. \u0415\u0441\u043b\u0438 \u0442\u0430\u0439\u043c\u0435\u0440 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442, \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0441\u0442\u0430\u0442\u0443\u0441 \u043c\u043e\u0434\u0443\u043b\u044f I2C \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0444\u043b\u0430\u0433\u0430\u043c\u0438 \u0432 \u043c\u043d\u043e\u0433\u043e\u0441\u0442\u0440\u043e\u0447\u043d\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435 (\u043f\u043e 8 \u0444\u043b\u0430\u0433\u043e\u0432 \u0432 \u0441\u0442\u0440\u043e\u043a\u0443). \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 <code>i2c_print_status()<\/code>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c \u043c\u0430\u043a\u0440\u043e\u0441\u0435 <code>I2C_DEBUG<\/code>. \u041f\u043e\u0441\u043b\u0435 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0444\u043b\u0430\u0433 <strong>TMOUTF<\/strong> \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f. \u0414\u043b\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0442\u0430\u043a\u0436\u0435 \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434 D2.<\/p>\n<p>\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0447\u0430\u0441\u044b DS3231 \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435. \u0427\u0435\u0440\u0435\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434 \u0440\u0430\u0437\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 \u0432\u0435\u0434\u043e\u043c\u044b\u043c, \u0437\u0430\u0442\u0435\u043c \u0432\u043d\u043e\u0432\u044c \u0435\u0433\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c:<\/p>\n<pre><code>Hello T 00180353 T 00180354 T 00180355 T 00180356 S F8000010 ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- TMOUT ----- ----- ----- ----- S F8000010 ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- ----- TMOUT ----- ----- ----- ----- T 00180359 T 00180400 T 00180401 <\/code><\/pre>\n<p>\u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0442\u0440\u0435\u0445 \u0431\u0430\u0439\u0442 \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0422\u0430\u043a\u0436\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0442\u0430\u0439\u043c\u0435\u0440 TMO \u043f\u0440\u0438 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u0438 \u0441\u0432\u044f\u0437\u0438: \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u0432 \u0441\u043b\u043e\u0432\u0435 \u0441\u0442\u0430\u0442\u0443\u0441\u0430 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u043b\u0430\u0433 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 (\u0431\u0438\u0442 4), \u0430 \u0441\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f 0xF8 (\u043d\u0435\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f). \u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 Saleae Logic \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u0448\u0438\u043d\u044b (\u043a\u0430\u043d\u0430\u043b 0 (\u0431\u0435\u043b\u044b\u0439) \u2014 \u0441\u0438\u0433\u043d\u0430\u043b SDA, \u043a\u0430\u043d\u0430\u043b 1 (\u043a\u043e\u0440\u0438\u0447\u043d\u0435\u0432\u044b\u0439) \u2014 \u0441\u0438\u0433\u043d\u0430\u043b SCL):<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/95b\/97e\/47a\/95b97e47a0a78a49772859c80b813327.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231\" width=\"846\" height=\"132\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/95b\/97e\/47a\/95b97e47a0a78a49772859c80b813327.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231<\/figcaption><\/figure>\n<p>\u0417\u0430\u043f\u0440\u043e\u0441 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u043a\u0430\u0434\u0440\u0430 SLA+W, \u0430\u0434\u0440\u0435\u0441 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0441\u044f (ACK), \u0437\u0430\u0442\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u043e\u043c\u0435\u0440 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441\u0435\u043a\u0443\u043d\u0434 (0x00). \u0414\u0430\u043b\u0435\u0435, \u043f\u043e\u0441\u043b\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f RSTART (\u0437\u0435\u043b\u0435\u043d\u044b\u0439 \u043a\u0440\u0443\u0436\u043e\u043a) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u0434\u0440 SLA+R, \u0430\u0434\u0440\u0435\u0441 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0441\u044f (ACK) \u0438 \u0434\u0430\u043b\u0435\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0442\u0440\u0435\u0445 \u0431\u0430\u0439\u0442 \u0441 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u0432\u0443\u0445 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442 \u043d\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0438 \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP (\u043a\u0440\u0430\u0441\u043d\u044b\u0439 \u043a\u0440\u0443\u0436\u043e\u043a).<\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u043e\u0431\u0440\u044b\u0432\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u0432\u0435\u0434\u043e\u043c\u044b\u043c:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/bc1\/34e\/27e\/bc134e27e8d7ec2c47006660b5943d3e.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231\" width=\"846\" height=\"132\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bc1\/34e\/27e\/bc134e27e8d7ec2c47006660b5943d3e.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231<\/figcaption><\/figure>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043e\u0431\u0440\u044b\u0432\u0430 \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b ACK \u0432 \u043a\u0430\u0434\u0440\u0435 SLA+W, \u043f\u0440\u0435\u0440\u0432\u0430\u043b \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0435\u0440\u0435\u0448\u0435\u043b \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f. \u0423\u043c\u0435\u043d\u044c\u0448\u0438\u043c \u043c\u0430\u0441\u0448\u0442\u0430\u0431 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u043d\u0430 \u043b\u0438\u043d\u0438\u0438 SCL:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9ae\/0b8\/452\/9ae0b8452bbb07816a474f10437ed5bd.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231\" width=\"846\" height=\"132\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9ae\/0b8\/452\/9ae0b8452bbb07816a474f10437ed5bd.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441 \u0447\u0430\u0441\u043e\u0432 DS3231<\/figcaption><\/figure>\n<p>\u0412\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e 1 \u043c\u0441, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044c &#171;\u0441\u0431\u0440\u043e\u0441\u0438\u043b\u0441\u044f&#187; \u0438 \u043f\u0435\u0440\u0435\u0448\u0435\u043b \u0432 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435. \u0422\u0435\u0441\u0442 \u043f\u0440\u043e\u0439\u0434\u0435\u043d \u0443\u0441\u043f\u0435\u0448\u043d\u043e.<\/p>\n<h3>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430<\/h3>\n<h4>\u041e\u0431\u0449\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f<\/h4>\n<p>\u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u041c\u041a MG32F02A032. \u041c\u043e\u0434\u0443\u043b\u044c I2C \u0442\u0430\u043a\u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435. \u0414\u043b\u044f \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0443\u0434\u043e\u0431\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u043d\u0430 \u0448\u0438\u043d\u0435 I<sup>2<\/sup>C \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u0431\u0443\u0434\u0443\u0442 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u043c\u0438. \u0412 \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0446\u0435\u043b\u044c <code>slave<\/code> \u0441 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0433\u043b\u0430\u0432\u043d\u044b\u043c \u0444\u0430\u0439\u043b\u043e\u043c \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 <code>app_slave.c<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u0432\u0441\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f. \u0412 \u0444\u0430\u0439\u043b\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043f\u043e\u0440\u0442\u0430 <code>I2C_PORT<\/code> \u0438 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u0431\u0443\u0444\u0435\u0440:<\/p>\n<pre><code class=\"cpp\">#define I2C_PORT I2C0_id  #define BUFLEN 16  \/\/\/ \u0411\u0443\u0444\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043b\u044d\u0439\u0432\u0430 uint8_t  buf[BUFLEN]; \/\/\/&lt; \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0444\u0435\u0440\u0430 uint32_t bufp;        \/\/\/&lt; \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0431\u0443\u0444\u0435\u0440\u0430 uint32_t bufn;        \/\/\/&lt; \u0440\u0430\u0437\u043c\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 <\/code><\/pre>\n<p>\u0423\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c <code>bufp<\/code> \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0442\u0435\u043a\u0443\u0449\u0443\u044e \u043f\u043e\u0437\u0438\u0446\u0438\u044e \u0432 \u0431\u0443\u0444\u0435\u0440\u0435 <code>buf<\/code> \u0434\u043b\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u0447\u0442\u0435\u043d\u0438\u044f \u0438\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043e\u0431\u043d\u0443\u043b\u0435\u043d \u043f\u0435\u0440\u0435\u0434 \u043d\u0430\u0447\u0430\u043b\u043e\u043c \u0440\u0430\u0431\u043e\u0442\u044b. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>i2c_test_slave()<\/code>:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u041e\u0431\u0449\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u0441\u043b\u044d\u0439\u0432\u0430 void i2c_test_slave() {   uint32_t i;   for (i=0; i&lt; BUFLEN; i++) buf[i]=((i+1)&lt;&lt; 4) | (i+1); \/\/ \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0431\u0443\u0444\u0435\u0440\u0430    \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f:   i2c_init(I2C_PORT);   \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 I2C:   HW_I2C0_SETSCL;  HW_I2C0_SETSDA;    \/\/ \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b   i2c_setup_mode(I2C_PORT,       I2C_CR0_PDRV_SEL_1t_w |       I2C_CR0_BUF_EN_enable_w |   \/\/ \u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u0447\u0435\u0440\u0435\u0437 \u0431\u0443\u0444\u0435\u0440       I2C_CR0_MDS_i2c_w |         \/\/ I2C : Single\/Multi-Master\/ Slave mode       I2C_CR0_SADR_EN_enable_b0   \/\/ \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 \u0441\u043b\u044d\u0439\u0432\u0430   );   \/\/ \u0410\u0434\u0440\u0435\u0441 \u0441\u043b\u044d\u0439\u0432\u0430:   RB(I2C0_SADR_b0) = DS3231_ADDR; \/\/ \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0430\u0434\u0440\u0435\u0441\u0430   RB(I2C0_MASK_b0) = 0xFE; \/\/ \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043c\u0430\u0441\u043a\u0438    \/\/ \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0443 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u043e\u0442 \u0441\u043b\u044d\u0439\u0432\u0430   RB(I2C0_CR0_b1) |= I2C_CR0_SCLS_DIS_disable_b1;    \/\/ \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439:   SVC2(SVC_HANDLER_SET,28,i2c_hdl_w1rN);   \/\/ \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0432 \u043c\u043e\u0434\u0443\u043b\u0435:   RW(I2C0_INT_w) =     I2C_INT_BUF_IE_enable_w | \/\/ flags: RXF, TXF, RSTRF, STOPF, SADRF     I2C_INT_IEA_enable_w;   \/\/ \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0432 \u043c\u043e\u0434\u0443\u043b\u0435 NVIC:   RW(CPU_ISER_w) = (1 &lt;&lt; 28); \/\/ SETENA 28    while (1) {     \/\/ \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 ACNT:     if (RB(I2C0_CR2_b2) &amp; 0x07) led2_on(); else led2_off();   } } <\/code><\/pre>\n<p>\u0412 \u043d\u0430\u0447\u0430\u043b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0431\u0443\u0444\u0435\u0440 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 0x11, 0x22, \u0438 \u0442.\u0434. \u0414\u0430\u043b\u0435\u0435 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u043d\u0430\u0437\u043d\u0430\u0447\u0430\u044e\u0442\u0441\u044f \u0432\u044b\u0432\u043e\u0434\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u0438 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430, \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u043a\u0430\u043a \u0438 \u0443 \u0447\u0430\u0441\u043e\u0432 DS3231. \u0417\u0430\u0442\u0435\u043c \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>BUFF<\/strong>, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0435 \u0432\u0441\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f (\u043a\u0440\u043e\u043c\u0435 \u043e\u0448\u0438\u0431\u043e\u043a), \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0442\u0438 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode. \u0421 \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0431\u0443\u0434\u0435\u0442 \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<h4>\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0443 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e<\/h4>\n<p>\u041d\u0430\u0447\u043d\u0435\u043c \u0441 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 <code>i2c_hdl_w1rN()<\/code>, \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u0431\u0430\u0439\u0442 \u0438\u0437 \u0441\u0432\u043e\u0435\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430. \u041f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043e\u0431\u043c\u0435\u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439: \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u0430\u043a\u0435\u0442 SLA+W \u0441 \u043e\u0434\u043d\u0438\u043c \u0431\u0430\u0439\u0442\u043e\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442. \u0412\u0435\u0434\u043e\u043c\u044b\u0439 \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u0430\u0434\u0440\u0430 SLA+R \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u0437\u0430\u043f\u0440\u043e\u0448\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442 \u043f\u0440\u0438\u0435\u043c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430, \u043a\u0440\u043e\u043c\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP. \u0420\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f I2C0 void i2c_hdl_w1rN() {   uint32_t d; \/\/ \u0444\u043b\u0430\u0433\u0438   uint32_t n;    led1_on();   d=i2c_get_status(I2C_PORT);    if (d &amp; I2C_STA_SADRF_mask_w) {     if (d &amp; I2C_STA_RWF_read_w) {       \/\/ \u041c\u0430\u0441\u0442\u0435\u0440 \u0447\u0438\u0442\u0430\u0435\u0442     }     else {       \/\/ \u041c\u0430\u0441\u0442\u0435\u0440 \u043f\u0438\u0448\u0435\u0442     }   }   if (d &amp; I2C_STA_TXF_mask_w) {     \/\/if (bufp==bufn) led2_on();     if (bufn > bufp) {i2c_writebuf(I2C_PORT,buf,&amp;bufp,bufn); led1_on();}   }   if (d &amp; I2C_STA_RXF_mask_w) {     n=i2c_read(I2C_PORT) &amp; 0xFF;     bufn = (n &lt;= BUFLEN) ? n : BUFLEN;     bufp=0;     i2c_writebuf(I2C_PORT,buf,&amp;bufp,bufn); \/\/ \u041f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 (\u043a\u043e\u043f\u0438\u0440\u0443\u0435\u043c \u0432 \u0431\u0443\u0444\u0435\u0440 \u043c\u0430\u043a\u0441\u0438\u043c\u0443\u043c \u0431\u0430\u0439\u0442 (4))   }   if (d &amp; I2C_STA_STOPF_mask_w) {   }   if (d &amp; I2C_STA_RSTRF_mask_w) {   }   led1_off();   i2c_clr_status(I2C_PORT, 0x00ffffff); }  <\/code><\/pre>\n<p>\u0421\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043d\u044b\u0435 \u0432\u044b\u0432\u043e\u0434\u044b \u041c\u041a \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043c \u043a \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u043c\u0443 \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0443 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0441\u0438\u0433\u043d\u0430\u043b\u0430\u043c\u0438 SCL \u0438 SDA. \u0421\u0438\u0433\u043d\u0430\u043b \u0441\u043e \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430 D1 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u043c\u043e\u043c\u0435\u043d\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u0430 \u0441\u0438\u0433\u043d\u0430\u043b \u0441 D2 \u2014 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0444\u043b\u0430\u0433\u043e\u0432. \u0412 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0444\u043b\u0430\u0433\u043e\u0432 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0442\u0435 \u0438\u043b\u0438 \u0438\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0444\u043b\u0430\u0433\u043e\u0432.<\/p>\n<p>\u041f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c \u0444\u043b\u0430\u0433\u0435 <strong>SADRF<\/strong> \u0434\u0430\u043b\u0435\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0442\u0438\u043f \u043a\u0430\u0434\u0440\u0430 SLA (\u0447\u0442\u0435\u043d\u0438\u0435 \u0438\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u044c) \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u043f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f (\u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430). \u041f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c \u0444\u043b\u0430\u0433\u0435 <strong>RXF<\/strong> \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u0440\u0438\u0435\u043c\u0430 \u0432 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e <code>n<\/code> \u2014 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0431\u0430\u0439\u0442, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043d\u0430 \u043d\u0435\u043f\u0440\u0435\u0432\u044b\u0448\u0435\u043d\u0438\u0435 <code>BUFLEN<\/code>. \u0414\u0430\u043b\u0435\u0435 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043d\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0447\u0435\u0440\u0435\u0437 \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>i2c_writebuf()<\/code>. \u041f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c \u0444\u043b\u0430\u0433\u0435 <strong>TXF<\/strong> \u0432\u043d\u043e\u0432\u044c \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>i2c_writebuf()<\/code> \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043e\u0441\u0442\u0430\u0432\u0448\u0435\u0439\u0441\u044f \u043f\u043e\u0440\u0446\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0448\u0430\u0431\u043b\u043e\u043d\u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u043a\u043e\u0434 \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0444\u043b\u0430\u0433\u043e\u0432 <strong>STOPF<\/strong> \u0438 <strong>RSTRF<\/strong>. \u0412 \u043a\u043e\u043d\u0446\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441\u0438\u0433\u043d\u0430\u043b D1 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0432 0 \u0438 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432\u0441\u0435 \u0444\u043b\u0430\u0433\u0438.<\/p>\n<p>\u041d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u0444\u0430\u0439\u043b\u0435 <code>i2c_test.c<\/code> \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0430 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>i2c_test_master_w1r()<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0431\u0430\u0439\u0442 (9) \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>i2c_test_master_req()<\/code>. \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043c\u0435\u0449\u0430\u044e\u0442\u0441\u044f \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 (\u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0432\u0435\u0434\u043e\u043c\u043e\u043c\u0443) \u0438 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0432\u044b\u0434\u0430\u044e\u0442\u0441\u044f \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b \u0447\u0435\u0440\u0435\u0437 \u043e\u0442\u043b\u0430\u0434\u043e\u0447\u043d\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>debugbuf()<\/code>. \u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>i2c_test_master_w1r_ds3231()<\/code>. \u041a\u043e\u0434 \u044d\u0442\u0438\u0445 \u0434\u0432\u0443\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438.<\/p>\n<p>\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0432\u043c\u0435\u0441\u0442\u043e DS3231 \u041c\u041a MG32F02A032 \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e:<\/p>\n<pre><code>11 22 33 44 55 66 77 88 99 11 22 33 44 55 66 77 88 99 11 22 33 44 55 66 77 88 99 <\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b (\u043a\u0430\u043d\u0430\u043b 2 (\u043a\u0440\u0430\u0441\u043d\u044b\u0439) \u2014 \u0441\u0438\u0433\u043d\u0430\u043b D1, \u043a\u0430\u043d\u0430\u043b 3 (\u0436\u0435\u043b\u0442\u044b\u0439) \u2014 \u0441\u0438\u0433\u043d\u0430\u043b D2):<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/591\/6e3\/d0b\/5916e3d0b29ccd28ab12e9fe5eda18d0.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a\" width=\"846\" height=\"216\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/591\/6e3\/d0b\/5916e3d0b29ccd28ab12e9fe5eda18d0.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a<\/figcaption><\/figure>\n<p>\u0412 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>i2c_test_slave()<\/code> \u043f\u043e\u0441\u043b\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u043c\u044b \u043e\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0446\u0438\u043a\u043b\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u043f\u0440\u043e\u0441 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 <code>I2Cx_ACNT<\/code>: \u043a\u043e\u0433\u0434\u0430 \u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u043e\u0442 \u043d\u0443\u043b\u044f, \u0441\u0438\u0433\u043d\u0430\u043b D2 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u0442 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f. \u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b. \u041f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0432\u0441\u0435\u0433\u043e \u0442\u0440\u0438 \u0440\u0430\u0437\u0430: \u043f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437 \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>RXF<\/strong> \u043f\u043e\u0441\u043b\u0435 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f RSTART, \u0447\u0442\u043e \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0442\u0430 \u0436\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0432 \u0431\u043e\u043b\u044c\u0448\u0435\u043c \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0435:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/454\/5aa\/29c\/4545aa29c33428f1f9f9d8c8ca3662a4.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a\" width=\"846\" height=\"216\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/454\/5aa\/29c\/4545aa29c33428f1f9f9d8c8ca3662a4.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a<\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438, \u043d\u0435 \u0434\u043e\u0436\u0438\u0434\u0430\u044f\u0441\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0431\u044b \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 (\u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u044d\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e). \u0421\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c 0x09 \u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435\u043c ACK \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 ACNT \u0441\u0442\u0430\u043b\u043e \u0440\u0430\u0432\u043d\u043e 1, \u043d\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044f \u0432\u0435\u0440\u043d\u0443\u043b\u043e\u0441\u044c \u0432 0.<\/p>\n<p>\u0412\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>TXF<\/strong> \u043f\u043e\u0441\u043b\u0435 \u043a\u0430\u0434\u0440\u0430 SLA+R \u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f ACK \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u043e\u0442 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b9a\/321\/904\/b9a321904c1c1a62fddc2ef5eeb7deeb.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a\" width=\"846\" height=\"216\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b9a\/321\/904\/b9a321904c1c1a62fddc2ef5eeb7deeb.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 9 \u0431\u0430\u0439\u0442 \u0441 \u041c\u041a<\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0435\u0440\u0432\u044b\u0435 4 \u0431\u0430\u0439\u0442\u0430 \u0443\u0436\u0435 \u0431\u044b\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u044b \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0431\u0443\u0444\u0435\u0440 <code>I2Cx_DAT<\/code> \u043e\u0441\u0432\u043e\u0431\u043e\u0434\u0438\u043b\u0441\u044f \u0434\u043b\u044f \u043d\u043e\u0432\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0444\u043b\u0430\u0433\u0430. \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0432 \u044d\u0442\u043e\u0442 \u0431\u0443\u0444\u0435\u0440 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 4 \u0431\u0430\u0439\u0442\u0430. \u041f\u043e\u0441\u043b\u0435 \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 (0x11) \u0432 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 ACNT \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u043e\u0441\u044c \u043d\u0430 1 \u0438 \u0434\u0430\u043b\u044c\u0448\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0441 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u043e\u0439 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0431\u0430\u0439\u0442\u0430.<\/p>\n<p>\u0422\u0440\u0435\u0442\u0438\u0439 \u0440\u0430\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0442\u0430\u043a\u0436\u0435 \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>TXF<\/strong> \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u044b\u0445 4 \u0431\u0430\u0439\u0442 \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0441\u0431\u0440\u043e\u0441\u0438\u043b\u043e\u0441\u044c \u0432 0. \u041c\u044b \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439, 9-\u0439 \u0431\u0430\u0439\u0442. \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 4 \u0431\u0430\u0439\u0442\u0430 0x55-0x88 \u0431\u044b\u043b\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b \u0438\u0437 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 \u0441\u0440\u0430\u0437\u0443. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e, \u043a\u043e\u0433\u0434\u0430 \u0441\u0447\u0435\u0442\u0447\u0438\u043a ACNT \u0432\u043d\u043e\u0432\u044c \u0441\u0431\u0440\u043e\u0441\u0438\u043b\u0441\u044f, \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442 0x99 \u0431\u044b\u043b \u0442\u0430\u043a\u0436\u0435 \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d \u0432 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u0435\u043d.<\/p>\n<h4>\u041f\u0440\u0438\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e<\/h4>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a <code>i2c_hdl_wN()<\/code> \u0441\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c: slave-\u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u043f\u0430\u043a\u0435\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442 \u043a\u0430\u0436\u0434\u044b\u0439 \u0431\u0430\u0439\u0442 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u0432\u0435\u0434\u043e\u043c\u044b\u0439 \u0438\u0445 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0434\u0430\u043c\u043f \u0431\u0443\u0444\u0435\u0440\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b:<\/p>\n<pre><code class=\"cpp\">\/\/\/ \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f I2C0 void i2c_hdl_wN() {   uint32_t d;    led1_on();   d=i2c_get_status(I2C_PORT);    if (d &amp; I2C_STA_SADRF_mask_w) {     if (d &amp; I2C_STA_RWF_read_w) { \/\/ Master reads     }     else { \/\/ Master writes       bufp=0;     }   }   if (d &amp; I2C_STA_RXF_mask_w) {     i2c_readbuf(I2C_PORT,buf,&amp;bufp);   }   if (d &amp; I2C_STA_STOPF_mask_w) {     debugbuf(buf,bufp);   }   led1_off();   i2c_clr_status(I2C_PORT, 0x00ffffff); } <\/code><\/pre>\n<p>\u041d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u0444\u0430\u0439\u043b\u0435 <code>i2c_test.c<\/code> \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0430 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>i2c_test_master_wN()<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 1 \u0431\u0430\u0439\u0442 \u0441 0x01, \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438\u0437 4 \u0431\u0430\u0439\u0442 0xA1, 0xB2, 0xC3, 0xD4.<\/p>\n<p>\u0421\u043c\u043e\u0442\u0440\u0438\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e:<\/p>\n<pre><code>01 A1 B2 C3 D4 01 A1 B2 C3 D4 01 A1 B2 C3 D4 <\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u044b:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/ffb\/d3d\/698\/ffbd3d69801007ddbfa18a3a7da35612.png\" alt=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 5 \u0431\u0430\u0439\u0442\" title=\"\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 5 \u0431\u0430\u0439\u0442\" width=\"846\" height=\"216\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ffb\/d3d\/698\/ffbd3d69801007ddbfa18a3a7da35612.png\"\/><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 5 \u0431\u0430\u0439\u0442<\/figcaption><\/figure>\n<p>\u041f\u0435\u0440\u0432\u044b\u0439 \u0440\u0430\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>SADRF<\/strong> \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043a\u0430\u0434\u0440\u0430 SLA+W \u0434\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f ACK. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0438\u0437 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441\u0447\u0435\u0442\u0447\u0438\u043a ACNT \u043f\u0440\u0438\u043d\u044f\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 1. \u0412\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043f\u043e \u0444\u043b\u0430\u0433\u0443 <strong>RXF<\/strong> \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u043f\u0435\u0440\u0432\u044b\u0445 4 \u0431\u0430\u0439\u0442, \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u0431\u044b\u043b\u0438 \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043d\u044b, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0441\u0447\u0435\u0442\u0447\u0438\u043a ACNT \u0441\u0431\u0440\u043e\u0441\u0438\u043b\u0441\u044f. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0441\u0447\u0435\u0442\u0447\u0438\u043a ACNT \u0432\u043d\u043e\u0432\u044c \u043f\u0440\u0438\u043d\u044f\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 1. \u0422\u0440\u0435\u0442\u0438\u0439 \u0440\u0430\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043f\u043e \u0434\u0432\u0443\u043c \u0444\u043b\u0430\u0433\u0430\u043c <strong>STOPF<\/strong> \u0438 <strong>RXF<\/strong>. \u041c\u044b \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u043b\u0438 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0431\u0430\u0439\u0442 \u0438 \u0441\u0442\u0430\u043b\u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u043f\u043e \u0432\u044b\u0432\u043e\u0434\u0443 \u0431\u0443\u0444\u0435\u0440\u0430 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b, \u043d\u0430 \u0447\u0442\u043e \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 1,4 \u043c\u0441 (\u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441 \u0442\u0430\u043a\u0438\u043c \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u043e\u043c \u043d\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0438\u0433\u043d\u0430\u043b\u044b D1 \u0438 D2 \u0441\u0440\u0430\u0437\u0443 \u043d\u0435 \u0432\u0435\u0440\u043d\u0443\u043b\u0438\u0441\u044c \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 0.<\/p>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p>\u041c\u044b \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u0432 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2C. \u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u0434\u0430\u0447 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 \u0440\u0435\u0436\u0438\u043c Byte mode. \u041c\u043e\u0434\u0443\u043b\u044c \u043f\u043e\u043a\u0430\u0437\u0430\u043b \u043f\u043e\u043b\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u0438 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f. \u041f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u044b\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0432\u0437\u044f\u0442\u044b \u0437\u0430 \u043e\u0441\u043d\u043e\u0432\u0443 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u043e\u0448\u0438\u0432\u043e\u043a \u041c\u041a. \u0417\u0430 \u0440\u0430\u043c\u043a\u0430\u043c\u0438 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u043f\u043e User Guide:<\/p>\n<ul>\n<li>\n<p>\u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u043e\u0434\u0442\u044f\u0436\u043a\u043e\u0439 \u0434\u043b\u044f \u043b\u0438\u043d\u0438\u0439 SCL \u0438 SDA (16.12.1),<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP (16.12.3),<\/p>\n<\/li>\n<li>\n<p>\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043e\u0448\u0438\u0431\u043e\u043a (16.13),<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 DMA (16.14),<\/p>\n<\/li>\n<li>\n<p>\u0440\u0435\u0436\u0438\u043c Monitor.<\/p>\n<\/li>\n<\/ul>\n<\/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\/post\/695670\/\"> https:\/\/habr.com\/ru\/post\/695670\/<\/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 article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0446\u0438\u043a\u043b \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0439 \u043f\u043e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u043c \u043d\u0430 \u044f\u0434\u0440\u0435 Cortex-M0 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Megawin (\u0441\u043c. \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0435 \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/674788\/\" rel=\"noopener noreferrer nofollow\">1<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/675776\/\" rel=\"noopener noreferrer nofollow\">2<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/681702\/\" rel=\"noopener noreferrer nofollow\">3<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/684778\/\" rel=\"noopener noreferrer nofollow\">4<\/a>, <a href=\"https:\/\/habr.com\/ru\/post\/686416\/\" rel=\"noopener noreferrer nofollow\">5<\/a> \u0438 <a href=\"https:\/\/habr.com\/ru\/post\/690346\/\" rel=\"noopener noreferrer nofollow\">6<\/a>), \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043c\u043e\u0434\u0443\u043b\u044c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I<sup>2<\/sup>C.<\/p>\n<h3>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043c\u043e\u0434\u0443\u043b\u044f I2C<\/h3>\n<p>\u041c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b \u0441\u0435\u0440\u0438\u0438 MG32F02 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442 \u043e\u0434\u0438\u043d (MG32F02A032) \u0438\u043b\u0438 \u0434\u0432\u0430 (\u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u041c\u041a) \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 I<sup>2<\/sup>C. \u041c\u043e\u0434\u0443\u043b\u0438 \u0438\u043c\u0435\u044e\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u0438:<\/p>\n<ul>\n<li>\n<p>\u0440\u0430\u0431\u043e\u0442\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e (master) \u0438\u043b\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e (slave);<\/p>\n<\/li>\n<li>\n<p>\u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0448\u0438\u043d\u0430 \u0434\u043e 1 \u041c\u0413\u0446;<\/p>\n<\/li>\n<li>\n<p>\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430;<\/p>\n<\/li>\n<li>\n<p>\u0443\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430;<\/p>\n<\/li>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u043e\u0434\u0442\u044f\u0436\u043a\u0438 \u0434\u043b\u044f \u043b\u0438\u043d\u0438\u0439 SCL \u0438 SDA;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0434\u043e \u0434\u0432\u0443\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u043e \u043c\u0430\u0441\u043a\u0435;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0430\u0434\u0440\u0435\u0441\u0430 \u043e\u0431\u0449\u0435\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u0435\u0434\u0443\u0449\u0438\u0445 (multi-master);<\/p>\n<\/li>\n<li>\n<p>\u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 &#171;\u043d\u0435\u0448\u0442\u0430\u0442\u043d\u044b\u0445&#187; \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0439 \u043d\u0430 \u0448\u0438\u043d\u0435 (\u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b\u0439 NACK, \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0431\u0443\u0444\u0435\u0440\u0430, \u043f\u043e\u0442\u0435\u0440\u044f \u043f\u0440\u0438\u043e\u0440\u0438\u0442\u0435\u0442\u0430);<\/p>\n<\/li>\n<li>\n<p>\u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (Byte mode) \u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (Buffer mode) \u0440\u0435\u0436\u0438\u043c\u044b \u0440\u0430\u0431\u043e\u0442\u044b;<\/p>\n<\/li>\n<li>\n<p>\u0431\u0443\u0444\u0435\u0440 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 4 \u0431\u0430\u0439\u0442\u0430;<\/p>\n<\/li>\n<li>\n<p>\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 DMA;<\/p>\n<\/li>\n<li>\n<p>\u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 \u0448\u0438\u043d\u044b SMBus;<\/p>\n<\/li>\n<li>\n<p>\u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP.<\/p>\n<\/li>\n<\/ul>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 I2C0 \u0438 I2C1 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0430 \u043d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435.<\/p>\n<figure class=\"full-width\"><figcaption>\u0424\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0441\u0445\u0435\u043c\u0430 \u043c\u043e\u0434\u0443\u043b\u044f I2C<\/figcaption><\/figure>\n<p>\u041a\u0430\u0436\u0434\u044b\u0439 \u043c\u043e\u0434\u0443\u043b\u044c I2Cx \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0443\u0437\u043b\u044b:<\/p>\n<ul>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0443 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f,<\/p>\n<\/li>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0443 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u043b\u0438\u043d\u0438\u0438 SCL,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u043b\u0438\u043d\u0438\u0438 SDA,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0431\u0443\u0444\u0435\u0440\u043e\u043c Buffer Control,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0436\u0438\u043c\u0430\u043c\u0438 Master\/Slave,<\/p>\n<\/li>\n<li>\n<p>\u0431\u043b\u043e\u043a \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a Error Detector,<\/p>\n<\/li>\n<li>\n<p>\u0442\u0430\u0439\u043c\u0435\u0440 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430,<\/p>\n<\/li>\n<li>\n<p>\u0441\u0445\u0435\u043c\u0443 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u043b\u0430\u0433\u0430\u043c\u0438 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f INT_I2Cx.<\/p>\n<\/li>\n<\/ul>\n<h3>\u0422\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u041c\u043e\u0434\u0443\u043b\u044c I2Cx \u0442\u0430\u043a\u0442\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u043c CK_I2Cx, \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CLK.I2Cx_CK_SEL<\/code> \u0438\u0437 \u0447\u0438\u0441\u043b\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445:<\/p>\n<ul>\n<li>\n<p>\u0441\u0438\u0433\u043d\u0430\u043b CK_I2Cx_PR \u0441 \u0432\u044b\u0445\u043e\u0434\u0430 \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u041c\u041a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0438\u0442\u043e\u043c <code>CSC_CKS1.CSC_I2Cx_CKS<\/code> \u0438\u0437 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 CK_APB (0) \u0438\u043b\u0438 CK_AHB (1);<\/p>\n<\/li>\n<li>\n<p>\u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0430\u0439\u043c\u0435\u0440\u0430 TM00_TRGO.<\/p>\n<\/li>\n<\/ul>\n<p>\u0421\u0438\u0433\u043d\u0430\u043b CK_I2Cx \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u043d\u0430 \u043f\u0440\u0435\u0434\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0447\u0430\u0441\u0442\u043e\u0442\u044b Prescaler, \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b CK_I2Cx_PSC. \u041a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043f\u0440\u0435\u0434\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0438\u0437 \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430 2-16 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0432 4-\u0431\u0438\u0442\u043d\u043e\u043c \u043f\u043e\u043b\u0435 <code>I2Cx_CLK.I2Cx_CK_PSC<\/code> \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043e\u0442 1 \u0434\u043e 15 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u0414\u0430\u043b\u0435\u0435 \u0441\u0438\u0433\u043d\u0430\u043b \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0435\u0442 \u043d\u0430 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0447\u0430\u0441\u0442\u043e\u0442\u044b DIV, \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_CLK.I2Cx_CK_DIV<\/code> \u0438\u0437 \u0440\u044f\u0434\u0430 2, 4, 8, &#8230;, 128. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043c\u043e\u0434\u0443\u043b\u044f CK_I2Cx_INT. \u0421 \u0434\u0440\u0443\u0433\u043e\u0433\u043e \u0432\u044b\u0445\u043e\u0434\u0430 \u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044f \u0441 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u043e\u043c 64 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u0438\u0433\u043d\u0430\u043b CK_I2Cx_DIV64. \u0422\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0442\u0430\u0439\u043c\u0430\u0443\u0442\u0430 CK_I2Cx_TMO \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044f <code>I2Cx_CLK.I2Cx_TMO_CKS<\/code> \u043c\u043e\u0436\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0437 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx_DIV64 \u0438\u043b\u0438 \u043e\u0431\u0449\u0435\u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_UT.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043e\u0442\u0430 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0442\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f CK_I2Cx_INT \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>F<sub>INT<\/sub> = F(CK_I2Cx_INT) = F(CK_I2Cx) \/ [ (PSC + 1)\u00b7DIV ],<\/p>\n<p>\u0433\u0434\u0435 F(CK_I2Cx) \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx, PSC \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f <code>I2Cx_CLK.I2Cx_CK_PSC<\/code>, DIV \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f <code>I2Cx_CLK.I2Cx_CK_DIV<\/code>.<\/p>\n<p>\u041d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 SCL \u0438 SDA.<\/p>\n<figure class=\"full-width\"><figcaption>\u0412\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 SCL \u0438 SDA<\/figcaption><\/figure>\n<p>\u0412 \u043c\u043e\u0434\u0443\u043b\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044b t<sub>HIGH<\/sub> \u0438 t<sub>LOW<\/sub> \u0447\u0435\u0440\u0435\u0437 \u043f\u043e\u043b\u044f <code>I2Cx_HT<\/code> \u0438 <code>I2Cx_LT<\/code> \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_CR1<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f t<sub>HIGH<\/sub> \u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043d\u0438\u0437\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f t<sub>LOW<\/sub> \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438<\/p>\n<p>t<sub>HIGH<\/sub> = (1 + HT)\u00b7T<sub>INT<\/sub>,<\/p>\n<p>t<sub>LOW<\/sub> = (1 + LT)\u00b7T<sub>INT<\/sub>,<\/p>\n<p>\u0433\u0434\u0435 HT \u0438 LT \u2014 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u0435\u0439 <code>I2Cx_HT<\/code> \u0438 <code>I2Cx_LT<\/code> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0430 T<sub>INT<\/sub> = 1 \/ F<sub>INT<\/sub> \u2014 \u043f\u0435\u0440\u0438\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 CK_I2Cx_INT.<\/p>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u043c\u0430\u0441\u0442\u0435\u0440\u0430 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b t<sub>VD:DAT<\/sub> \u043c\u0435\u0436\u0434\u0443 \u0437\u0430\u0434\u043d\u0438\u043c \u0444\u0440\u043e\u043d\u0442\u043e\u043c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0438 \u043c\u043e\u043c\u0435\u043d\u0442\u043e\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SDA \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 2\u00b7T<sub>INT<\/sub>. \u0414\u0430\u043b\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0434\u043e \u043f\u0435\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 (LT-1)\u00b7T<sub>INT<\/sub>. \u041f\u0435\u0440\u0438\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL, \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043c\u0430\u0441\u0442\u0435\u0440\u043e\u043c, \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>T<sub>SCL<\/sub> = t<sub>HIGH<\/sub> + t<sub>LOW<\/sub> = (2 + HT + LT)\u00b7T<sub>INT<\/sub>.<\/p>\n<p>\u0418\u0442\u043e\u0433\u043e\u0432\u0430\u044f \u043d\u043e\u043c\u0438\u043d\u0430\u043b\u044c\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0448\u0438\u043d\u044b I<sup>2<\/sup>C \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435\u043c<\/p>\n<p>F<sub>SCL<\/sub> = 1 \/ T<sub>SCL<\/sub> = F<sub>INT<\/sub> \/ (2 + HT + LT) = F(CK_I2Cx) \/ [ (PSC + 1)\u00b7DIV\u00b7(2 + HT + LT) ].<\/p>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b HT \u0438 LT \u0438\u043c\u0435\u044e\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e 5 \u0438 4 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e. \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 &#171;\u0440\u0430\u0431\u043e\u0447\u0438\u043c\u0438&#187; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f 2 \u0438 2.<\/p>\n<h3>\u0420\u0435\u0436\u0438\u043c\u044b \u0440\u0430\u0431\u043e\u0442\u044b<\/h3>\n<h4>\u041e\u0431\u0449\u0438\u0435 \u0441\u0432\u0435\u0434\u0435\u043d\u0438\u044f<\/h4>\n<p>\u041c\u043e\u0434\u0443\u043b\u044c I2Cx \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_CR0.I2Cx_EN<\/code>. \u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f <em>\u043b\u043e\u0433\u0438\u043a\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0443\u0440\u044b \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b<\/em> \u0432 \u043c\u043e\u0434\u0443\u043b\u044f\u0445 I2Cx \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<ul>\n<li>\n<p>I2C Byte mode \u2014 \u043d\u0438\u0437\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e-\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439) \u0440\u0435\u0436\u0438\u043c \u0441 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u043f\u0440\u0438\u0435\u043c\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430,<\/p>\n<\/li>\n<li>\n<p>I2C Buffer mode \u2014 \u0432\u044b\u0441\u043e\u043a\u043e\u0443\u0440\u043e\u0432\u043d\u0435\u0432\u044b\u0439 (\u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c),<\/p>\n<\/li>\n<li>\n<p>Monitor (Buffer mode) \u2014 \u0440\u0435\u0436\u0438\u043c \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 (\u0441\u043d\u0438\u0444\u0444\u0435\u0440 \u0448\u0438\u043d\u044b).<\/p>\n<\/li>\n<\/ul>\n<p>\u0412 \u043f\u0435\u0440\u0432\u044b\u0445 \u0434\u0432\u0443\u0445 \u0440\u0435\u0436\u0438\u043c\u0430\u0445 (I2C) \u043c\u043e\u0434\u0443\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0438\u0433\u0440\u0430\u0442\u044c \u0440\u043e\u043b\u044c \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e (Master) \u0438\u043b\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e (Slave) \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u0448\u0438\u043d\u0435 I<sup>2<\/sup>C. \u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u0438\u0442\u0430\u043c\u0438 <code>I2Cx_MDS<\/code> \u0438 <code>I2Cx_BUF_EN<\/code> \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 <code>I2Cx_CR0<\/code> \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p><code>I2Cx_MDS<\/code><\/p>\n<\/th>\n<th>\n<p><code>I2Cx_BUF_EN<\/code><\/p>\n<\/th>\n<th>\n<p>\u0420\u0435\u0436\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u044b<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0 (I2C)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0 (Disable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">I2C Byte mode (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0 (I2C)<\/p>\n<\/td>\n<td>\n<p align=\"left\">1 (Enable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">I2C Buffer mode<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1 (Monitor)<\/p>\n<\/td>\n<td>\n<p align=\"left\">0 (Disable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">&#8212;<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1 (Monitor)<\/p>\n<\/td>\n<td>\n<p align=\"left\">1 (Enable)<\/p>\n<\/td>\n<td>\n<p align=\"left\">Monitor<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041f\u0440\u0438 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0438\u0437 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u0437\u043d\u0430\u043a\u043e\u043c \u0441 \u043e\u0431\u0449\u0438\u043c \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0448\u0438\u043d\u044b I<sup>2<\/sup>C. \u0414\u043b\u044f \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c\u0441\u044f \u043a \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0438 \u0435\u0435 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0443 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u0438\u0439 \u044f\u0437\u044b\u043a:<\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/www.nxp.com\/docs\/en\/application-note\/AN10216.pdf\" rel=\"noopener noreferrer nofollow\">The I2C-bus specification<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"http:\/\/www.gaw.ru\/html.cgi\/txt\/interface\/iic\/start.htm\" rel=\"noopener noreferrer nofollow\">\u0428\u0438\u043d\u0430 I2C \u0438 \u043a\u0430\u043a \u0435\u0451 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e)<\/a><\/p>\n<\/li>\n<\/ul>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p>\u041e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435<\/p>\n<\/th>\n<th>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">START<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u0421\u0442\u0430\u0440\u0442&#187; (Start)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">STOP<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u0421\u0442\u043e\u043f&#187; (Stop)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">RSTART<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0439 \u0441\u0442\u0430\u0440\u0442&#187; (Repeated Start)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">SLA<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0434\u0440\u0435\u0441\u043d\u044b\u0439 \u043a\u0430\u0434\u0440, \u0441 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u043c\u0435\u043d \u0434\u0430\u043d\u043d\u044b\u043c\u0438 (Slave Address)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">SLA+W<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0434\u0440\u0435\u0441\u043d\u044b\u0439 \u043a\u0430\u0434\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0434\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 (SLA + Write)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">SLA+R<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0410\u0434\u0440\u0435\u0441\u043d\u044b\u0439 \u043a\u0430\u0434\u0440, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u0435\u0434\u0443\u0449\u0438\u0439 \u0434\u0430\u043b\u0435\u0435 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 (SLA + Read)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">ACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u043e&#187; (Acknowledgment)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">NACK<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0448\u0438\u043d\u044b &#171;\u041d\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u043e&#187; (No Acknowledgment)<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h4>\u0410\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u044f<\/h4>\n<p>\u0421 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f <em>\u0440\u043e\u043b\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430<\/em> \u043d\u0430 \u0448\u0438\u043d\u0435 I<sup>2<\/sup>C \u0432 \u043c\u043e\u0434\u0443\u043b\u044f\u0445 I2Cx \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u044b \u0440\u0435\u0436\u0438\u043c\u044b &#171;\u0432\u0435\u0434\u0443\u0449\u0435\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e&#187; (Master) \u0438 &#171;\u0432\u0435\u0434\u043e\u043c\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e&#187; (Slave). \u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432\u043a\u043b\u044e\u0447\u0435\u043d <em>\u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e<\/em> \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0420\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0434\u0440\u0435\u0441\u0430.<\/p>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u043c\u043e\u0433\u0443\u0442 \u0431\u044b\u0442\u044c \u0437\u0430\u0434\u0430\u043d\u044b \u043e\u0434\u0438\u043d \u0438\u043b\u0438 \u0434\u0432\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0430\u0434\u0440\u0435\u0441\u0430, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c. \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0430\u0434\u0440\u0435\u0441 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_SADR<\/code> \u0432 \u0431\u0438\u0442\u0430\u0445 1-7, \u0442.\u0435. \u0435\u0441\u043b\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442, \u0442\u043e \u0431\u0438\u0442 0 \u043c\u043e\u0436\u043d\u043e \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0432\u043d\u044b\u043c 0. \u0414\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441 \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0431\u0438\u0442\u0430\u0445 9-15 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u043e. \u0414\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430 \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_SADR_EN<\/code>, \u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u2014 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u0431\u0438\u0442\u0430 <code>I2Cx_SADR2_EN<\/code> \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_CR0<\/code>. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0445\u043e\u0442\u044f \u0431\u044b \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u044d\u0442\u0438\u0445 \u0431\u0438\u0442\u043e\u0432 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442 \u043c\u043e\u0434\u0443\u043b\u044c \u0432 <em>\u0440\u0435\u0436\u0438\u043c \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e<\/em> \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 \u043f\u043e\u043d\u0438\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f STOP, \u0435\u0441\u043b\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u044d\u0442\u0438\u0445 \u0431\u0438\u0442\u043e\u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d, \u043f\u0440\u0438 \u0434\u0435\u0442\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0430 \u0448\u0438\u043d\u0435 \u043a\u0430\u0434\u0440\u0430 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0443 \u043c\u043e\u0434\u0443\u043b\u044c \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0443\u0435\u0442 \u0444\u043b\u0430\u0433 \u043f\u0440\u043e\u0431\u0443\u0436\u0434\u0435\u043d\u0438\u044f <strong>WUPF<\/strong>.<\/p>\n<p>\u0414\u043b\u044f <em>\u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u0430\u0434\u0440\u0435\u0441\u0430<\/em> \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043c\u0430\u0441\u043a\u0443 <code>I2Cx_MASK.I2Cx_SA_MSK<\/code> (\u0431\u0438\u0442\u044b 1-7 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430), \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u044e\u0449\u0443\u044e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u044c: \u0432 \u0430\u0434\u0440\u0435\u0441\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u0432 1 \u0432 \u043c\u0430\u0441\u043a\u0435. \u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0432 \u043c\u0430\u0441\u043a\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0x7F, \u0442.\u0435. \u0441\u0442\u0440\u043e\u0433\u043e\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c\u0443 \u0432 \u043f\u043e\u043b\u0435 <code>I2Cx_SADR<\/code> \u0430\u0434\u0440\u0435\u0441\u0443. \u041a\u0440\u043e\u043c\u0435 \u0442\u043e\u0433\u043e, \u043c\u043e\u0434\u0443\u043b\u044c \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043d\u0430 \u043d\u0443\u043b\u0435\u0432\u043e\u0439 \u0430\u0434\u0440\u0435\u0441 (\u043e\u0431\u0449\u0438\u0439 \u0432\u044b\u0437\u043e\u0432), \u0435\u0441\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0431\u0438\u0442 <code>I2Cx_CR0.I2Cx_GC_EN<\/code> (\u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u0431\u0440\u043e\u0448\u0435\u043d).<\/p>\n<h4>\u0411\u0443\u0444\u0435\u0440 \u0434\u0430\u043d\u043d\u044b\u0445<\/h4>\n<p>\u0412 \u043c\u043e\u0434\u0443\u043b\u0435 I2Cx \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d 8-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u0439 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_SBUF<\/code>, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0438\u0436\u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0436\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u0442 \u0441 32-\u0440\u0430\u0437\u0440\u044f\u0434\u043d\u044b\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u043c <code>I2Cx_DAT<\/code>, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0449\u0438\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0431\u0443\u0444\u0435\u0440\u0430 \u0432\u0435\u0440\u0445\u043d\u0435\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e 8-, 16- \u0438 32-\u0431\u0438\u0442\u043d\u043e\u0433\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u0430. \u0411\u0443\u0444\u0435\u0440 \u0442\u0435\u0441\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d \u0441 \u043f\u043e\u043b\u0435\u043c <code>I2Cx_CR2.I2Cx_BUF_CNT<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode \u0437\u0430\u0434\u0430\u0435\u0442\u0441\u044f \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0447\u0438\u0441\u043b\u043e (1-4) \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u043c\u044b\u0445 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0431\u0430\u0439\u0442 (\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master) \u0438\u043b\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u043e \u0443\u0436\u0435 \u043f\u0440\u0438\u043d\u044f\u0442\u044b\u0445 \u0431\u0430\u0439\u0442 (\u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Slave). \u041f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0431\u0430\u0439\u0442 \u043f\u0440\u0438 \u043f\u0440\u0438\u0435\u043c\u0435 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u2014 \u043e\u0442 \u043c\u043b\u0430\u0434\u0448\u0435\u0433\u043e \u043a \u0441\u0442\u0430\u0440\u0448\u0435\u043c\u0443.<\/p>\n<p>\u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Buffer mode \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0441\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 <code>I2Cx_DAT<\/code> \u0434\u043e\u043b\u0436\u043d\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043c\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u0434\u043b\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0431\u0430\u0439\u0442\u043e\u0432\u0443\u044e \u043f\u0435\u0440\u0435\u0441\u044b\u043b\u043a\u0443 (<code>STRB<\/code>) \u0432 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0430\u0439\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430, \u0434\u043b\u044f \u0434\u0432\u0443\u0445 \u0431\u0430\u0439\u0442 \u2014 \u0434\u0432\u0443\u0445\u0431\u0430\u0439\u0442\u043e\u0432\u0443\u044e (<code>STRH<\/code>), \u0434\u043b\u044f 3-4 \u0431\u0430\u0439\u0442 \u2014 \u043f\u0435\u0440\u0435\u0441\u044b\u043b\u043a\u0443 \u0441\u043b\u043e\u0432\u0430 (<code>STR<\/code>).<\/p>\n<h4>\u041a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c<\/h4>\n<p>\u0414\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435\u043c \u0448\u0438\u043d\u044b I<sup>2<\/sup>C \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <code>I2Cx_CR2<\/code> \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u0431\u0438\u0442\u044b, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043d\u043e\u0432\u043e\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u0438\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438\u043b\u0438 \u043f\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044e \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0445. \u0411\u0438\u0442\u044b \u043a\u043e\u043c\u0430\u043d\u0434 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p>\u0420\u0430\u0437\u0440\u044f\u0434 <code>I2Cx_CR2<\/code><\/p>\n<\/th>\n<th>\n<p>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<th>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">0<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f START<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">1<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STO<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">2<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_AA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ACK<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">3<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_CMD_TC<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u043e\u0432 PSTA, PSTO, PAA<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">4<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STA_LCK<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434\u044b <code>I2Cx_STA<\/code> \u0438 <code>I2Cx_PSTA<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">5<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_STO_LCK<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434\u044b <code>I2Cx_STO<\/code> \u0438 <code>I2Cx_PSTO<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">6<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_AA_LCK<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0420\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0440\u0430\u0437\u0440\u044f\u0434\u044b <code>I2Cx_AA<\/code> \u0438 <code>I2Cx_PAA<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">24<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_PSTA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f START \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">25<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_PSTO<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">26<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>I2Cx_PAA<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ACK \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 STA<\/em> (START) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_STA<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 <code>I2Cx_STA_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f START, \u0435\u0441\u043b\u0438 \u0448\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u0430. \u0415\u0441\u043b\u0438 \u0448\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u0437\u0430\u043d\u044f\u0442\u0430, \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 STOP \u043d\u0430 \u0448\u0438\u043d\u0435, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START. \u0415\u0441\u043b\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u0443\u0436\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0432\u0435\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b STA \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043f\u0440\u0438\u0435\u043c\u0430 \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 RSTART.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 STO<\/em> (STOP) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_STO<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 <code>I2Cx_STO_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 Master \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP. \u0415\u0441\u043b\u0438 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 STO \u0434\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 STA, \u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f STOP \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 START. \u0412 \u0440\u0435\u0436\u0438\u043c\u0435 Slave \u043a\u043e\u043c\u0430\u043d\u0434\u0430 STO \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u043e\u0448\u0438\u0431\u043a\u0438 \u043d\u0430 \u0448\u0438\u043d\u0435.<\/p>\n<p><em>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 AA<\/em> (ACK) \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0431\u0438\u0442\u0430 <code>I2Cx_AA<\/code> \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0431\u0438\u0442\u043e\u043c \u0440\u0430\u0437\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 <code>I2Cx_AA_LCK<\/code> \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f ACK (\u043d\u0438\u0437\u043a\u0438\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SDA \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 9-\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 SCL \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u043c \u043a\u0430\u0434\u0440\u0435) \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u044f\u0445:<\/p>\n<ul>\n<li>\n<p>\u043f\u043e\u0434\u0442\u0432\u0435\u0440<\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\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-340263","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/340263","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=340263"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/340263\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=340263"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=340263"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=340263"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}