{"id":321854,"date":"2021-04-21T21:00:27","date_gmt":"2021-04-21T21:00:27","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=321854"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=321854","title":{"rendered":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 UDB \u0432 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u0445 PSOC 4 \u0438 5LP Infineon (Cypress) \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430\u043c\u0438 WS2812"},"content":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ab0\/87e\/6a4\/ab087e6a415e3bfe60e37b23ae940e6f.jpg\" width=\"600\" height=\"436\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u044b \u0442\u0438\u043f\u0430 <a href=\"https:\/\/www.dropbox.com\/s\/4fv63speqlt1rdo\/WS2812B_datasheet_EN.pdf?dl=1\" rel=\"noopener noreferrer nofollow\">WS2812<\/a> \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b, \u0438\u043c\u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c, \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0432\u043e\u0434\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f <abbr title=\"\u0432 datasheet \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432 1024, \u043f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f 30fps\">\u0441\u043e\u0442\u0435\u043d<\/abbr> \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432. \u041e\u043d\u0438 \u0438\u043c\u0435\u044e\u0442, \u0441 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u0430 \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0432 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u0445 \u043d\u0435\u0442 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044f \u0432\u044b\u0432\u043e\u0434\u043e\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430.  \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <abbr title=\"\u0431\u043b\u043e\u043a\u0430 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0438\">UDB<\/abbr> \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 \u0441\u0435\u0440\u0438\u0438 PSOC 4 \u0438 PSOC 5LP \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 <abbr title=\"\u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cypress Semiconductor \u0432\u043e\u0448\u043b\u0430 \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 Infineon Technologies \u0432 2020 \u0433\u043e\u0434\u0443\">Infineon<\/abbr> \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043c\u043e\u0434\u0443\u043b\u044c \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u043c\u0438 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430\u043c\u0438.<\/p>\n<p>\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 <abbr title=\"Universal Digital Blocks\">UDB<\/abbr> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438. \u0414\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438: \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443, \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0431\u043b\u043e\u043a-\u0441\u0445\u0435\u043c\u0443 \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435, \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044f\u0437\u044b\u043a\u0430 \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f Verilog. \u042f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a Verilog, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0435\u043c\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438 UDB.<\/p>\n<p>\u041d\u0430 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0431\u043b\u043e\u043a-\u0441\u0445\u0435\u043c\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 <a href=\"https:\/\/www.cypress.com\/products\/32-bit-arm-cortex-m0-psoc-4200-programmable-digital-blocks\" rel=\"noopener noreferrer nofollow\">PSOC 5LP Family<\/a>.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2ae\/393\/f47\/2ae393f4755df427965f8c82c45f6701.png\" width=\"1155\" height=\"933\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u0432\u0438\u0434\u0435\u043d \u0431\u043b\u043e\u043a Universal Digital Block Array, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0432\u044f\u0437\u0430\u043d \u0447\u0435\u0440\u0435\u0437 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0448\u0438\u043d\u044b Digital Interconnect \u0438 System Bus \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430. <\/p>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0447\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c <a href=\"https:\/\/www.cypress.com\/products\/psoc-creator-integrated-design-environment-ide\" rel=\"noopener noreferrer nofollow\">PSOC Creator<\/a>. \u042d\u0442\u0430 IDE \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u0441 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c GCC, \u0442\u0430\u043a \u0438 Keil. <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b \u0443\u0432\u0438\u0434\u0438\u0442\u0435 \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/294\/454\/52f\/29445452f6254b02a1ef6d6ff38135f9.png\" width=\"1515\" height=\"1011\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c File-&gt;New-&gt;Project \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u0432 \u043e\u043a\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/05e\/a8b\/82d\/05ea8b82db496d466df4133adf6a50f5.png\" width=\"1512\" height=\"1014\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043e\u043a\u043d\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0446\u0435\u043b\u0435\u0432\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0446\u0435\u043d\u043e\u0447\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/www.cypress.com\/documentation\/development-kitsboards\/cy8ckit-059-psoc-5lp-prototyping-kit-onboard-programmer-and\" rel=\"noopener noreferrer nofollow\">CY8CKIT-059<\/a>. \u041d\u043e \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0430 \u043f\u043b\u0430\u0442\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u043f\u0430\u043a\u0435\u0442.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/18a\/966\/543\/18a966543af7b872b4c36c929a6b6fa8.png\" width=\"741\" height=\"467\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0432\u0441\u0435\u0445 \u043e\u0446\u0435\u043d\u043e\u0447\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0430\u0445 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a KitProg, \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u044b \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b72\/d85\/61a\/b72d8561ac674133ea5fbe98ee1b03ad.png\" width=\"1134\" height=\"782\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b PSOC 4 \u0438 PSOC 5LP \u043c\u043e\u0433\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u0439 \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u043e\u0442 1.7 \u0434\u043e 5.5 \u0432\u043e\u043b\u044c\u0442. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043a \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0443 WS2812 \u0431\u0435\u0437 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430.<\/p>\n<p>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043e\u0446\u0435\u043d\u043e\u0447\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443 CY8CKIT-059, \u0436\u043c\u0435\u043c Next&gt;. \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u043d\u0430\u0434\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0442\u043e, \u0441 \u0447\u0435\u0433\u043e \u043c\u044b \u043d\u0430\u0447\u043d\u0435\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0438\u043b\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/427\/f37\/9db\/427f379dbcdd053bb7ba14b8ed0c0fce.png\" width=\"1521\" height=\"1022\"><figcaption><\/figcaption><\/figure>\n<p>\u0416\u043c\u0435\u043c Next&gt;, \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u043d\u0430\u0434\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0438\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u043c\u0435\u0441\u0442\u043e \u0435\u0433\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0438\u043c\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430. <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/aa3\/f7f\/9b6\/aa3f7f9b6701cffd42435ed0829cf3d3.png\" width=\"1521\" height=\"1019\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Finish \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u043d\u0430 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0443 \u0441\u0445\u0435\u043c\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6a7\/ffb\/d74\/6a7ffbd74d11257083476e615ef9eb87.png\" width=\"1515\" height=\"1019\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441\u043b\u0435\u0432\u0430, \u0434\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0444\u0430\u0439\u043b  main.c. \u041c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0443\u0436\u0435 \u043d\u0430\u043f\u043e\u043b\u043d\u0438\u043b \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e7f\/6b6\/8f7\/e7f6b68f7601cebbfe7977f8264d1f47.png\" width=\"1517\" height=\"1018\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0430\u0432 SHIFT+F6 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0440\u043e\u0439\u0442\u0438 \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043e\u043a.<\/p>\n<p>\u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u0441\u043b\u0435\u0432\u0430 \u0436\u043c\u0435\u043c \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0443 Components.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7a5\/064\/668\/7a5064668886ffb4ff824448d819f682.png\" width=\"1376\" height=\"913\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0430\u0442\u0435\u043c \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043d\u0430 \u0441\u0442\u0440\u043e\u0447\u043a\u0435 Project \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Add Component Item.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0f3\/a3c\/3d9\/0f3a3c3d9c802f3cc0ab01bd67b85239.png\" alt=\"\" title=\"\" width=\"1382\" height=\"904\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c, \u044d\u0442\u043e \u0441\u0438\u043c\u0432\u043e\u043b \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 Symbol Wizard, \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0438\u043c\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, Cypress \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440 \u0432\u0435\u0440\u0441\u0438\u0438 \u0432 \u0438\u043c\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u00ab\u0418\u043c\u044f_\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u00bb_v1_0, \u0446\u0438\u0444\u0440\u044b 1_0 \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/7f9\/1e8\/c6d\/7f91e8c6dd42d419e50f7a69d80a8473.png\" width=\"1385\" height=\"917\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c Create New \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u0432 \u043c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, \u0433\u0434\u0435 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0447\u0435\u0442\u044b\u0440\u0435 \u0432\u044b\u0432\u043e\u0434\u0430: \u0432\u0445\u043e\u0434 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430, \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430, \u0432\u044b\u0445\u043e\u0434 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430\u043c\u0438 \u0438 \u0432\u044b\u0445\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0438\u043b\u0438 DMA, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u00ab1\u00bb \u043f\u0440\u0438 \u043e\u043f\u0443\u0441\u0442\u043e\u0448\u0435\u043d\u0438\u0438 \u0431\u0443\u0444\u0435\u0440\u0430 FIFO. \u0412\u044b\u0432\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043d\u0435\u0442 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/329\/44a\/69e\/32944a69e7f55f1a70feacf2b11356bb.png\" width=\"1379\" height=\"910\"><figcaption><\/figcaption><\/figure>\n<p>\u0416\u043c\u0435\u043c OK \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 \u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c. \u0429\u0435\u043b\u043a\u0430\u0435\u043c \u043d\u0430 \u043f\u0443\u0441\u0442\u043e\u043c \u043c\u0435\u0441\u0442\u0435 \u043b\u0438\u0441\u0442\u0430 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043c\u044b\u0448\u0438 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 PROPERTIES.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a6f\/f1b\/5cf\/a6ff1b5cfad022f61f094c785bb4670c.png\" width=\"1376\" height=\"907\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0434\u0435\u0441\u044c \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0434\u0432\u0430 \u0438\u043c\u0435\u043d\u0438 Doc.ApiPrefix \u0438 Doc.DefaultInstanceName.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5f3\/3c2\/fd9\/5f33c2fd9764de68cf28e127e6a3e730.png\" width=\"1520\" height=\"1021\"><figcaption><\/figcaption><\/figure>\n<p>\u0416\u043c\u0435\u043c OK, \u0437\u0430\u0442\u0435\u043c \u0441\u043d\u043e\u0432\u0430  \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043c\u044b\u0448\u0438 \u043d\u0430 \u043f\u0443\u0441\u0442\u043e\u043c \u043c\u0435\u0441\u0442\u0435 \u043b\u0438\u0441\u0442\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Generate Verilog:<\/p>\n<p>\u0422\u0443\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Generate.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/66a\/e74\/242\/66ae74242751e7f5ba0acdd8f63b4e09.png\" width=\"1377\" height=\"913\"><figcaption><\/figcaption><\/figure>\n<p>\u0414\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c Verilog \u0444\u0430\u0439\u043b.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3cf\/ace\/ba6\/3cfaceba60546299283cb59abd71831f.png\" width=\"1379\" height=\"912\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Tools-&gt;DataPath Config Tool.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5fb\/ebf\/705\/5fbebf705da4f2e86121550cb824077c.png\" width=\"1370\" height=\"912\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 DataPath Config Tool \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 Verilog \u0444\u0430\u0439\u043b.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/1f4\/b3b\/ce0\/1f4b3bce00d71c90a13602bcff99977a.png\" width=\"1238\" height=\"868\"><figcaption><\/figcaption><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5dc\/be9\/bde\/5dcbe9bded4f3907f61482d76e69d533.png\" width=\"1258\" height=\"912\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c DataPath \u0432 \u043d\u0430\u0448 Verilog \u0444\u0430\u0439\u043b. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Edit-&gt;New DataPath.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f63\/d16\/3ab\/f63d163ab6b996e8cfc31baa79a30209.png\" width=\"1260\" height=\"913\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043e\u043a\u043d\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0438\u043c\u044f Datapath \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0441\u0442\u044c DataPath, 8 \u0431\u0438\u0442 \u043d\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/343\/6dd\/30c\/3436dd30c95dbe2c633afd40e94f8e0a.png\" width=\"1261\" height=\"911\"><figcaption><\/figcaption><\/figure>\n<p>\u041c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043b Datapath, \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c2d\/7a7\/a74\/c2d7a7a74f2dea8b615c7515bdb68e7c.png\" width=\"1289\" height=\"915\"><figcaption><\/figcaption><\/figure>\n<p>\u041e\u0431\u043b\u0430\u0441\u0442\u044c 1 \u2014 \u044d\u0442\u043e 8 \u043a\u043e\u043c\u0430\u043d\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c DataPath. \u041e\u0431\u043b\u0430\u0441\u0442\u044c 2 \u2014 \u044d\u0442\u043e \u043c\u0430\u0441\u043a\u0438. \u041e\u0431\u043b\u0430\u0441\u0442\u044c 3 \u2014 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 Datapath.<\/p>\n<p>\u041d\u0430\u0441\u0442\u0430\u043b \u043c\u043e\u043c\u0435\u043d\u0442, \u043a\u043e\u0433\u0434\u0430 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 DataPath. UDB \u0441\u043e\u0441\u0442\u043e\u0438\u0442: \u0438\u0437 \u0431\u043b\u043e\u043a\u0430 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432, \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430, \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 Status \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 Control \u0434\u043b\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 UDB.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/aaa\/82d\/2f6\/aaa82d2f69908d3600cd5061ce95c2db.png\" alt=\" \" title=\" \" width=\"1130\" height=\"771\"><figcaption> <\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0432 \u043d\u0435\u0433\u043e \u0432\u0445\u043e\u0434\u044f\u0442 \u0434\u0432\u0435 PLD \u043c\u0430\u0442\u0440\u0438\u0446\u044b \u043d\u0430 12 \u0432\u0445\u043e\u0434\u043e\u0432 \u0438 4 \u0432\u044b\u0445\u043e\u0434\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/085\/4cd\/dad\/0854cddad8bca36a06f22ddff9b87651.png\" width=\"873\" height=\"757\"><figcaption><\/figcaption><\/figure>\n<p>\u0418 \u0441\u0435\u0440\u0434\u0446\u0435\u043c UDB \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f DataPath. \u041c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440. \u0423 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c: ALU, \u043f\u0430\u043c\u044f\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u044f\u0447\u0435\u0435\u043a, \u0447\u0435\u0442\u044b\u0440\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0434\u0432\u0430 \u0431\u0443\u0444\u0435\u0440\u0430 \u0433\u043b\u0443\u0431\u0438\u043d\u043e\u0439 \u0447\u0435\u0442\u044b\u0440\u0435 \u0431\u0430\u0439\u0442\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u0430\u043a FIFO, \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440, \u0434\u0432\u0435 \u043c\u0430\u0441\u043a\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0432\u0430 \u0431\u043b\u043e\u043a\u0430 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0434\u0432\u0430 \u0431\u043b\u043e\u043a\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e 0x00 \u0438 0xFF \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 A0, A1. \u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u0438 \u0431\u043b\u043e\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0442\u044c \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c 16, 24, 32 \u0431\u0438\u0442\u043d\u0443\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u041c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u043f\u0438\u0441\u0430\u0442\u044c \u0438 \u0447\u0438\u0442\u0430\u0442\u044c, \u043a\u0430\u043a \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b A0,A1,D0,D1, \u0442\u0430\u043a \u0438 \u0432 FIFO. <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fc8\/84a\/c75\/fc884ac7543cb929b39d56fbc83b89ec.png\" width=\"1084\" height=\"857\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 datasheet \u043a \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0443 <a href=\"https:\/\/www.dropbox.com\/s\/4fv63speqlt1rdo\/WS2812B_datasheet_EN.pdf?dl=1\" rel=\"noopener noreferrer nofollow\">WS2812<\/a> \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430\u043c \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/p>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6f4\/1f7\/5f1\/6f41f75f1d33b852322571858de90224.png\" alt=\"\u0421\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0438\u0442 \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u043c \" title=\"\u0421\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0438\u0442 \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u043c \" width=\"373\" height=\"218\"><figcaption>\u0421\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0438\u0442 \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u043c <\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043e\u043f\u0438\u0441\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043e\u0442 \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f. \u0415\u0441\u043b\u0438 FIFO \u043f\u0443\u0441\u0442, \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0431\u0430\u0439\u0442 \u0432 FIFO, \u043d\u0430\u0448 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430. \u041f\u043e\u0441\u043b\u0435 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430, \u0447\u0438\u0442\u0430\u0435\u0442 \u0431\u0430\u0439\u0442 \u0438\u0437 FIFO \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0433\u043e. \u0418 \u0442\u0430\u043a \u0432\u0441\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u0431\u0430\u0439\u0442\u0430, \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 FIFO \u043d\u0435 \u043e\u043f\u0443\u0441\u0442\u0435\u0435\u0442. \u0424\u043b\u0430\u0433 \u043f\u0443\u0441\u0442\u043e\u0433\u043e FIFO \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \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 \u0438\u043b\u0438 DMA. \u0415\u0441\u043b\u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0432\u0437\u044f\u0442\u043e\u0433\u043e \u0438\u0437 FIFO \u0431\u0430\u0439\u0442\u0430, \u0442\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441 \u0441\u0431\u0440\u043e\u0441\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442.<\/p>\n<p>\u0420\u0438\u0441\u0443\u0435\u043c \u0431\u043b\u043e\u043a \u0441\u0445\u0435\u043c\u0443 \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0443\u044e \u0438\u0437 8 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/842\/b42\/541\/842b42541d767d2e91ce42243422fe93.png\" alt=\"\" title=\"\" width=\"1039\" height=\"812\"><figcaption><\/figcaption><\/figure>\n<p>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u0442\u0430 200ns, \u0442\u0430\u043a\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0442\u044c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0432 datasheet WS2812B. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430 \u0432 \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 255*0.2\u00b5s= 51\u00b5s. \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u043e\u043b\u044f \u0432 DataPath Configuration Tool.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cde\/db3\/f84\/cdedb3f849c8165f2e977be43cba32c0.png\" width=\"1155\" height=\"889\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0435\u0440\u0432\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u2014 \u044d\u0442\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043c\u044b \u043e\u0431\u043d\u0443\u043b\u044f\u0435\u043c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0435\u0439 \u0418\u0441\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0435 \u0418\u041b\u0418 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 A1. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u044b\u0431\u0440\u0430\u043d\u0430 XOR, \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a A \u0438 B \u0440\u0435\u0433\u0438\u0441\u0442\u0440 A1, \u0437\u0430\u043f\u0438\u0441\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1 \u0432\u044b\u0431\u0440\u0430\u043d\u0430 \u0438\u0437 ALU. <\/p>\n<p>\u041d\u0430 \u0432\u0442\u043e\u0440\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043c\u044b \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043f\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0443 FIFO empty == 0. \u0422\u043e \u0435\u0441\u0442\u044c \u0432 FIFO \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435, \u0432 \u044d\u0442\u043e\u0442 \u0436\u0435 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u044b \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 \u00ab0\u00bb. \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043c\u044b \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u043c \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 A1 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043e\u043d \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0xFF. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0442\u0440\u0438, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 \u00ab1\u00bb.<\/p>\n<p>\u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0442\u0440\u0438 \u043c\u044b \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0431\u0430\u0439\u0442 \u0438\u0437 FIFO \u0432 A0 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442 \u0438\u0437 D1 \u0432 A1, \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0447\u0435\u0442\u044b\u0440\u0435.<\/p>\n<p>\u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u0438 \u043f\u044f\u0442\u044c DataPath \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442. \u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0448\u0435\u0441\u0442\u044c \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c \u0434\u0435\u043a\u0440\u0435\u043c\u0435\u043d\u0442 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0443  \u0431\u0438\u0442 \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0441\u0435\u043c\u044c, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u0432\u044b\u0445\u043e\u0434 \u0432 \u00ab1\u00bb. \u041d\u0430\u0434\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0438\u043b\u0438 \u0444\u043b\u0430\u0433, \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0442\u0430\u043a\u0442\u0435.<\/p>\n<p>\u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0441\u0435\u043c\u044c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0442\u0440\u0435\u043c \u0430\u0434\u0440\u0435\u0441\u0430\u043c. \u0415\u0441\u043b\u0438 \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442 A1 != 0, \u0442\u043e \u043c\u044b \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0432\u043e\u0441\u0435\u043c\u044c, \u0447\u0442\u043e\u0431\u044b \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u0442\u0430\u043a\u0442 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u00ab1\u00bb. \u0415\u0441\u043b\u0438 A1 == 0 \u0438 FIFO \u043f\u0443\u0441\u0442, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043f\u0435\u0440\u0432\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO. \u0415\u0441\u043b\u0438 FIFO \u043d\u0435 \u043f\u0443\u0441\u0442, \u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0442\u0440\u0438, \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 FIFO \u0432 A0 \u0438 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442 A1 \u0438\u0437 D1.<\/p>\n<p>\u041d\u0430\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0434\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043c\u0430\u0441\u043a\u0443 0 \u0438 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c \u0435\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0x80. \u041f\u0440\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u043d\u0430 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A0 \u0441 \u043c\u0430\u0441\u043a\u043e\u0439 0x80, \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0443 D0 \u0440\u0430\u0432\u043d\u043e\u043c\u0443 0x80 \u044d\u0442\u043e \u0434\u0430\u0441\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430. FIFO \u0443 \u043d\u0430\u0441 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u0432\u0432\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 DataPath.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bb2\/095\/ee0\/bb2095ee00c75e625dc9916f1b764850.png\" width=\"1204\" height=\"884\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u043f\u0438\u0448\u0435\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 D0 (\u043c\u0430\u0441\u043a\u0430 \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u0431\u0438\u0442\u0430) = 8&#8217;h80 \u0438 D1 (\u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442) = 0&#8217;h08, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e View-&gt;Initial Register Values.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b44\/171\/cfe\/b44171cfe53d26d9a77dfa88e49094d7.png\" width=\"1143\" height=\"902\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c (Ctrl+S) \u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c Datapath Configuration Tool. \u041d\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0432 Verilog \u0444\u0430\u0439\u043b\u0435. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u043c  \u0441\u0438\u0433\u043d\u0430\u043b\u0430\u043c \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u043c\u0435\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043d\u0430\u043c\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u0438 \u0444\u043b\u0430\u0433\u043e\u0432.<\/p>\n<pre><code class=\"cpp\">udb8(         \/*  input                   *\/  .reset(rst),\/\/\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0441\u0431\u0440\u043e\u0441\u0430         \/*  input                   *\/  .clk(clk),\/\/\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b         \/*  input   [02:00]         *\/  .cs_addr(state),\/\/\u0420\u0435\u0433\u0438\u0441\u0442\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u044b DataPath         \/*  input                   *\/  .route_si(1'b0),         \/*  input                   *\/  .route_ci(1'b0),         \/*  input                   *\/  .f0_load(1'b0),         \/*  input                   *\/  .f1_load(1'b0),         \/*  input                   *\/  .d0_load(1'b0),         \/*  input                   *\/  .d1_load(1'b0),         \/*  output                  *\/  .ce0(send_bit),\/\/\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430         \/*  output                  *\/  .cl0(),         \/*  output                  *\/  .z0(),         \/*  output                  *\/  .ff0(),         \/*  output                  *\/  .ce1(),         \/*  output                  *\/  .cl1(),         \/*  output                  *\/  .z1(z_count_bit),\/\/\u0424\u043b\u0430\u0433 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0443 0 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442         \/*  output                  *\/  .ff1(end_ws2812_reset),\/\/\u0424\u043b\u0430\u0433 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0443 0xFF \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1         \/*  output                  *\/  .ov_msb(),         \/*  output                  *\/  .co_msb(),         \/*  output                  *\/  .cmsb(),         \/*  output                  *\/  .so(),         \/*  output                  *\/  .f0_bus_stat(),         \/*  output                  *\/  .f0_blk_stat(fifo_empty),\/\/\u0424\u043b\u0430\u0433 \u043f\u0443\u0441\u0442\u043e\u0433\u043e FIFO         \/*  output                  *\/  .f1_bus_stat(),         \/*  output                  *\/  .f1_blk_stat() );<\/code><\/pre>\n<p>\u041f\u0435\u0440\u0432\u044b\u0435 \u0434\u0432\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u2014 \u044d\u0442\u043e \u0432\u0445\u043e\u0434 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430 \u0438 \u0432\u0445\u043e\u0434 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/p>\n<p>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u044d\u0442\u043e \u0442\u0440\u0435\u0445-\u0431\u0438\u0442\u043d\u044b\u0439 \u0432\u0445\u043e\u0434 \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u0430\u043c\u044f\u0442\u0438 \u043a\u043e\u043c\u0430\u043d\u0434 DataPath. \u041c\u044b \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u044d\u0442\u043e\u043c\u0443 \u0432\u0445\u043e\u0434\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 state. \u0414\u0430\u043b\u0435\u0435 \u0438\u0434\u0443\u0442 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u044b UDB: ce0 \u2014 \u044d\u0442\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430. \u041f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 DataPath \u043c\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u043c\u0430\u0441\u043a\u0443 0 \u0438 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u043b\u0438 \u0435\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0x80, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f send_bit=(A0 &amp; 0x80==D0) ? 1 : 0;<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cab\/5ec\/cd9\/cab5eccd92763a0dcdbc3b777744b192.png\" width=\"1436\" height=\"749\"><figcaption><\/figcaption><\/figure>\n<p>\u0424\u043b\u0430\u0433 z1, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u043d\u0430 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e 0 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1, \u044d\u0442\u043e \u0443 \u043d\u0430\u0441 \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0431\u0438\u0442, \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u0435\u043c\u0443 \u0441\u0438\u0433\u043d\u0430\u043b z_count_bit.<\/p>\n<p>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0444\u043b\u0430\u0433 \u2014 ff1, \u043e\u043d \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432 1 \u043f\u0440\u0438 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1 &#8212; 0xFF. \u042d\u0442\u043e\u0442 \u0444\u043b\u0430\u0433 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043f\u0440\u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0438 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430 \u0434\u043b\u044f WS2812, \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u0435\u043c\u0443 \u0438\u043c\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 end_ws2812_reset.<\/p>\n<p>\u0418 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0444\u043b\u0430\u0433 \u2014 f0_blk_stat, \u043e\u043d \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0432 1, \u043a\u043e\u0433\u0434\u0430 FIFO 0 \u043f\u0443\u0441\u0442. \u041f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u0435\u043c\u0443 \u0438\u043c\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 fifo_empty.<\/p>\n<p>\u041d\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b \u0438 \u0444\u043b\u0430\u0433\u0438, \u0438 \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439.<\/p>\n<pre><code class=\"vhdl\">    localparam IDLE = 3'h0;     localparam WS2812_RESET = 3'h1;     localparam LOAD_A0 = 3'h2;     localparam CHECK_BIT = 3'h3;     localparam SEND_BIT = 3'h4;     localparam DEC_BIT_CNT = 3'h5;     localparam SHIFT_DATA = 3'h6;     localparam NOP = 3'h7;      reg [2:0]state;\/\/\u0410\u0434\u0440\u0435\u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u044b     reg out;\/\/\u0420\u0435\u0433\u0438\u0441\u0442\u0440 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430     reg send_tic;\/\/\u0420\u0435\u0433\u0438\u0441\u0442\u0440 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0430\u043a\u0442\u0430     wire fifo_empty;\/\/\u0424\u043b\u0430\u0433 \u043f\u0443\u0441\u0442\u043e\u0433\u043e FIFO     wire send_bit;\/\/\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430     wire end_ws2812_reset;\/\/\u0424\u043b\u0430\u0433 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 0xFF \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1     wire z_count_bit;\/\/\u0424\u043b\u0430\u0433 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 0 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442     assign irq=fifo_empty;\/\/\u041f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u0443 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0444\u043b\u0430\u0433 \u043f\u0443\u0441\u0442\u043e\u0433\u043e FIFO     assign ws2812=out;\/\/\u041f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0443 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430  \talways @(posedge clk or posedge rst )\/\/  \tbegin \t\tif (rst) \t\tbegin       \/\/ \u0410\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u044b\u0439 \u0441\u0431\u0440\u043e\u0441 \t\t\tstate &lt;= IDLE;             out&lt;=1'b1; \t\tend \t\telse \t\tbegin \t\t\tcase (state) \t\t\t\t \t\t\tIDLE:\/\/\u041e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u043f\u043e\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO \t\t\tbegin \t\t\t\tif(fifo_empty==1'b0) \t\t\t\tbegin \t\t\t\t\tstate &lt;= WS2812_RESET;\/\/\u0415\u0441\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 FIFO \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0438,                      out&lt;=1'b0;\/\/\u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430, \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 0 \t\t\t\tend \t\t\t\telse \t\t\t\tbegin                     out&lt;=1'b1;\/\/\u0415\u0441\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO \u043d\u0435\u0442, \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 1                 end \t\t\tend \t\t\t\t\t \t\t\tWS2812_RESET:\/\/\u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430 \t\t\tbegin                 if(end_ws2812_reset)\/\/\u0416\u0434\u0435\u043c \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 0xFF \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1                 begin                     state &lt;= LOAD_A0;\/\/\u0415\u0441\u043b\u0438 A1=0xFF, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 FIFO                     out&lt;=1'b1;\/\/\u0412\u044b\u0445\u043e\u0434 \u0432 1                 end \t\t\tend \t\t\tLOAD_A0:\/\/\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0431\u0430\u0439\u0442\u0430 \u0438\u0437 FIFO \t\t\tbegin                 state &lt;= CHECK_BIT;\/\/\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430 \t\t\tend \t\t\tCHECK_BIT:\/\/\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430 \t\t\tbegin                 send_tic &lt;= 1'b0;\/\/\u041e\u0431\u043d\u0443\u043b\u044f\u0435\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0430\u043a\u0442\u0430                 state &lt;= SEND_BIT;\/\/\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0431\u0438\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445                 if(send_bit==1'b0)                 begin                     out &lt;= 1'b0;\/\/\u0415\u0441\u043b\u0438 \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u044b\u0439 \u0431\u0438\u0442 0, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434 \u0432 0                 end \t\t\tend \t\t\tSEND_BIT:\/\/\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0431\u0438\u0442\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \t\t\tbegin                 if(send_tic)\/\/\u0415\u0441\u043b\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0430\u043a\u0442 \u0443\u0436\u0435 \u0431\u044b\u043b                 begin                     state &lt;= DEC_BIT_CNT;\/\/\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0434\u0435\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442                     out &lt;= 1'b0;\/\/\u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 0                 end                 else                 begin                     send_tic &lt;= 1'b1;\/\/\u0415\u0441\u043b\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0430\u043a\u0442\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0444\u043b\u0430\u0433 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0430\u043a\u0442\u0430                 end \t\t\tend \t\t\tDEC_BIT_CNT:\/\/\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u0435\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442 \t\t\tbegin                 state &lt;= SHIFT_DATA;\/\/\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0441\u0434\u0432\u0438\u0433\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0432\u043b\u0435\u0432\u043e \t\t\tend \t\t\tSHIFT_DATA:\/\/\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0441\u0434\u0432\u0438\u0433\u0430 \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0432\u043b\u0435\u0432\u043e \t\t\tbegin                 out&lt;=1'b1;\/\/\u0412\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 1                 if(z_count_bit)\/\/\u0415\u0441\u043b\u0438 \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0432\u044b\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0431\u0438\u0442 \u0440\u0430\u0432\u0435\u043d 0                 begin                     if(fifo_empty == 1'b0)\/\/\u0415\u0441\u043b\u0438 FIFO \u043d\u0435 \u043f\u0443\u0441\u0442                     begin                         state &lt;= LOAD_A0;\/\/\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u043d\u043e\u0432\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430                     end                     else                     begin                         state &lt;= IDLE;\/\/\u0415\u0441\u043b\u0438 \u043f\u0443\u0441\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u0440\u0435\u0436\u0438\u043c \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043f\u0440\u0438\u0445\u043e\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO                     end                 end                 else                 begin                     state &lt;= NOP;\/\/\u0415\u0441\u043b\u0438 \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442 \u043d\u0435 \u0440\u0430\u0432\u0435\u043d 0, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0430\u043a\u0442\u0430                 end \t\t\tend \t\t\tNOP:\/\/\u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0430\u043a\u0442\u0430 \t\t\tbegin                 state &lt;= CHECK_BIT;\/\/\u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0432\u043e\u0434\u0438\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430 \t\t\tend \t\tendcase \t\tend \tend<\/code><\/pre>\n<p>\u00ab\u0416\u0435\u043b\u0435\u0437\u043d\u0443\u044e\u00bb \u0447\u0430\u0441\u0442\u044c \u043c\u044b \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b\u0438, \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 API, \u0447\u0442\u043e\u0431\u044b \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043c\u043e\u0433 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0441 \u043d\u0430\u0448\u0438\u043c \u043c\u043e\u0434\u0443\u043b\u0435\u043c. \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c Vetilog \u0444\u0430\u0439\u043b.<\/p>\n<p>\u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u0447\u043d\u044b\u0439 \u0444\u0430\u0439\u043b, \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043c\u044b\u0448\u0438 \u043d\u0430 \u0438\u043c\u0435\u043d\u0438 \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c Add Component Item.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/40a\/61a\/a16\/40a61aa16e5418ddb6cf485d0e800ec0.png\" width=\"1366\" height=\"899\"><figcaption><\/figcaption><\/figure>\n<p>\u0418\u0449\u0435\u043c API Header File, \u0432\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0438\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c Create.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d63\/88d\/308\/d6388d3086b01338a8ae56363ba598de.png\" width=\"1375\" height=\"912\"><figcaption><\/figcaption><\/figure>\n<p>\u0414\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c \u043f\u043e \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441\u043b\u0435\u0432\u0430 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0444\u0430\u0439\u043b \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u043d\u0435\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0442\u0440\u043e\u043a\u0438.<\/p>\n<pre><code class=\"cpp\">#include \"cytypes.h\"  #define `$INSTANCE_NAME`_SHIFT_MASK 0x80 #define `$INSTANCE_NAME`_NUM_SHIFT_BITS 8 #define `$INSTANCE_NAME`_FIFO_LEVELS 4 #define `$INSTANCE_NAME`_bit_cnt (*(reg8 *)`$INSTANCE_NAME`_udb8_u0__D1_REG) #define `$INSTANCE_NAME`_shift_mask (*(reg8 *)`$INSTANCE_NAME`_udb8_u0__D0_REG) #define `$INSTANCE_NAME`_data_fifo (*(reg8 *)`$INSTANCE_NAME`_udb8_u0__F0_REG) #define `$INSTANCE_NAME`_actl (*(reg8 *)`$INSTANCE_NAME`_udb8_u0__DP_AUX_CTL_REG)  void `$INSTANCE_NAME`_Start(void);<\/code><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0440\u0430\u0437\u044a\u044f\u0441\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 $INSTANCE_NAME. \u042d\u0442\u043e \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u0432\u0432\u043e\u0434\u0438\u043b\u0438 \u0432 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u043e Doc.DefaultINstanceName \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0431\u0443\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u043c\u044f ws2812_1_bit_cnt, \u0433\u0434\u0435 1 \u043f\u043e\u0441\u043b\u0435 ws2812 \u2014 \u044d\u0442\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435. \u0418 \u0434\u0430, \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u044d\u0442\u043e \u0438\u043c\u044f \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043d\u0430 \u043b\u044e\u0431\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435. \u0425\u0438\u0442\u0440\u0443\u044e \u043a\u0430\u0432\u044b\u0447\u043a\u0443 \u043c\u043e\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0442\u0430\u043a: &lt;ALT&gt;+&lt;96&gt;. \u0418\u043c\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430, \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u043f\u0440\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438, \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u0440\u0451\u0445 \u0447\u0430\u0441\u0442\u0435\u0439, $INSTANCE_NAME \u2014 \u044d\u0442\u043e \u0438\u043c\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, udb8 \u2014 \u044d\u0442\u043e \u0438\u043c\u044f DataPath, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043d\u043e\u0432\u043e\u0433\u043e DataPath \u0438 u0__D1_REG \u2014 \u044d\u0442\u043e \u0438\u043c\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0448\u0438\u0431\u043a\u0438, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u044d\u0442\u0438 \u0438\u043c\u0435\u043d\u0430 \u0432 \u0444\u0430\u0439\u043b\u0435 cyfitter.h \u043f\u043e\u0441\u043b\u0435 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438. <\/p>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044e Start \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u0441\u043b\u0435 \u0441\u0431\u0440\u043e\u0441\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b D0 \u0438 D1, \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u044e\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0422\u0430\u043a\u0436\u0435 \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435, \u0432 \u043b\u044e\u0431\u043e\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u044c\u044e:<\/p>\n<pre><code class=\"cpp\">ws2812_1_bit_cnt=8;<\/code><\/pre>\n<p>\u0417\u0430\u043f\u0438\u0441\u044c \u0431\u0430\u0439\u0442\u0430 \u0432 FIFO \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"cpp\">ws2812_1_data_fifo=0xAA;<\/code><\/pre>\n<p>\u041d\u043e \u043c\u044b \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u044d\u0442\u043e \u0441 \u0437\u0430\u0434\u0435\u043b\u043e\u043c \u043d\u0430 \u0431\u0443\u0434\u0443\u0449\u0435\u0435. \u0421\u043d\u043e\u0432\u0430 \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043c\u044b\u0448\u0438 \u043d\u0430 \u0438\u043c\u0435\u043d\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c Add Component Item. \u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c API C File, \u0432\u0432\u043e\u0434\u0438\u043c \u0438\u043c\u044f \u0438 \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Create.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f23\/a88\/3cc\/f23a883cc7718c96be74455f89edd8cb.png\" width=\"1481\" height=\"901\"><figcaption><\/figcaption><\/figure>\n<p>\u0414\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c  \u043d\u0430 \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430, \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441\u043b\u0435\u0432\u0430 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0438 \u0432\u0432\u043e\u0434\u0438\u043c \u0432 \u043d\u0435\u0433\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0442\u0435\u043a\u0441\u0442.<\/p>\n<pre><code>#include \"`$INSTANCE_NAME`.h\"  void `$INSTANCE_NAME`_Start(void) {     `$INSTANCE_NAME`_shift_mask=`$INSTANCE_NAME`_SHIFT_MASK;     `$INSTANCE_NAME`_bit_cnt=`$INSTANCE_NAME`_NUM_SHIFT_BITS; }<\/code><\/pre>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c Ctrl+Shift+S, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f. \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u043d\u0430 \u0441\u0445\u0435\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0430. \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 Source \u0441\u043b\u0435\u0432\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e27\/237\/ce1\/e27237ce13a48ae7c192079e0123ebe2.png\" width=\"1484\" height=\"915\"><figcaption><\/figcaption><\/figure>\n<p>\u0414\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c \u043f\u043e \u0444\u0430\u0439\u043b\u0443 TopDesign.cysh \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u0445\u0435\u043c\u0443 \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u0441\u043f\u0440\u0430\u0432\u0430 \u043c\u044b \u0432\u0438\u0434\u0438\u043c \u043d\u0430\u0431\u043e\u0440 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0441 Psoc Creator \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/24c\/4fb\/393\/24c4fb393ba6e12084a219565823c866.png\" width=\"1488\" height=\"920\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u043f\u0440\u0430\u0432\u0430 \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 Default, \u0438 \u0432\u0438\u0434\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u043d\u0430\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/629\/a37\/8d0\/629a378d01ec6f5ff527b5a28e2d724a.png\" width=\"1487\" height=\"903\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u0435\u043c \u0435\u0433\u043e \u043d\u0430 \u0441\u0445\u0435\u043c\u0443.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/892\/6ee\/dc3\/8926eedc371ec016f337513c110a269f.png\" width=\"1490\" height=\"914\"><figcaption><\/figcaption><\/figure>\n<p>\u0429\u0435\u043b\u043a\u0430\u0435\u043c \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 Cypress, \u0437\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0432 \u043f\u0430\u043f\u043a\u0435 Systems \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Clock \u0438 \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u0435\u043c \u0435\u0433\u043e \u043d\u0430 \u0441\u0445\u0435\u043c\u0443 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0438\u043a \u0432\u044b\u0432\u043e\u0434\u0430 clk \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 ws2812_1 \u0441\u043e\u0432\u043f\u0430\u043b \u0441 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0438\u043a\u043e\u043c \u0432\u044b\u0432\u043e\u0434\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 Clock_1, \u0442\u043e\u0433\u0434\u0430 \u0432\u044b\u0432\u043e\u0434\u044b \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0442\u044c\u0441\u044f.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/569\/09a\/0fd\/56909a0fd7fd996172236139eefb9ee8.png\" width=\"1491\" height=\"910\"><figcaption><\/figcaption><\/figure>\n<p>\u0429\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043d\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0435 Clock_1 \u0438 \u0432 \u0432\u044b\u043f\u0430\u0432\u0448\u0435\u043c \u043c\u0435\u043d\u044e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 Configure. \u0412 \u044d\u0442\u043e\u043c \u0436\u0435 \u043c\u0435\u043d\u044e \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u043f\u0443\u043d\u043a\u0442 Open Datasheet \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c datasheet \u043d\u0430 \u044d\u0442\u043e\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c71\/2fc\/41f\/c712fc41fd702a8a3cf4fa04e00b6576.png\" width=\"1487\" height=\"909\"><figcaption><\/figcaption><\/figure>\n<p>\u0412\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0447\u0430\u0441\u0442\u043e\u0442\u0443 5MHz.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/189\/aea\/e8e\/189aeae8e2d86b7cc8f8911a3c6e4c80.png\" width=\"1487\" height=\"906\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0430\u0442\u0435\u043c \u0432 \u043f\u0430\u043f\u043a\u0435 Digital \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0431\u0435\u0440\u0435\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Ligic Low \u0438 \u043f\u0435\u0440\u0435\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u0435\u043c \u0435\u0433\u043e \u043d\u0430 \u0441\u0445\u0435\u043c\u0443, \u0438 \u0440\u0430\u0437\u043c\u0435\u0449\u0430\u0435\u043c \u0440\u044f\u0434\u043e\u043c \u0441 \u0432\u044b\u0432\u043e\u0434\u043e\u043c rst \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 ws2812_1. \u0417\u0430\u0442\u0435\u043c \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043b\u0430\u0432\u0438\u0448\u0443 \u00abW\u00bb \u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u043c \u0432\u044b\u0432\u043e\u0434 rst \u0438 Logic Low \u043f\u0440\u043e\u0432\u043e\u0434\u043e\u043c.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c95\/f43\/69b\/c95f4369ba5ab879d7b3387cec2d28c3.png\" width=\"1485\" height=\"907\"><figcaption><\/figcaption><\/figure>\n<p>\u0418\u0437 \u043f\u0430\u043f\u043a\u0438 Ports and Pins \u0431\u0435\u0440\u0435\u043c \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Digital Output Pin \u0438 \u043f\u043e\u0434\u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u043c \u0435\u0433\u043e \u043a \u0432\u044b\u0432\u043e\u0434\u0443 ws2812 \u043d\u0430\u0448\u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, \u0437\u0430\u0442\u0435\u043c \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043f\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 Pin_1, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Configure \u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c \u0438\u043c\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0441 Pin_1 \u043d\u0430 ws2812_port.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/84f\/ae0\/bf7\/84fae0bf7e7c70b4f93f2935f143400b.png\" width=\"1485\" height=\"911\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0440\u0438\u0441\u0432\u043e\u0438\u043c \u0441\u0438\u0433\u043d\u0430\u043b ws2812_port \u043f\u043e\u0440\u0442\u0443 P1(7), \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e, \u0434\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c \u043f\u043e \u0441\u0442\u0440\u043e\u0447\u043a\u0435 Pins \u0432 \u043f\u0430\u043f\u043a\u0435 Design Wide Resourse, \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0432\u043a\u043b\u0430\u0434\u043a\u0443 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u0438 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441\u043f\u0440\u0430\u0432\u0430, \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c Port &#8212; P1(7).<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c6a\/efe\/187\/c6aefe18789b216dd74c3c8a5dcc81fd.png\" width=\"1485\" height=\"910\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 Clocks, \u0434\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c \u043d\u0430 \u0441\u0442\u0440\u043e\u0447\u043a\u0435 IMO, \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0445 \u0447\u0430\u0441\u0442\u043e\u0442.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c4b\/b57\/917\/c4bb57917cfc28482762f68701f3042b.png\" width=\"1486\" height=\"906\"><figcaption><\/figcaption><\/figure>\n<p>\u0418 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0447\u0430\u0441\u0442\u043e\u0442\u0443 IMO &#8212; 3MHz, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u0440\u0438 \u0442\u0430\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u00b11%. \u0427\u0430\u0441\u0442\u043e\u0442\u0443 PLL \u0441\u0442\u0430\u0432\u0438\u043c 79MHz. \u041d\u0430 80MHz IDE \u0431\u0443\u0434\u0435\u0442 \u0440\u0443\u0433\u0430\u0442\u044c\u0441\u044f, \u0442\u0430\u043a \u043a\u0430\u043a \u0441 \u0443\u0447\u0435\u0442\u043e\u043c \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u0438\u0439, \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0435\u0432\u044b\u0448\u0430\u0442\u044c \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0435 80MHz \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/403\/563\/b23\/403563b23baceab9b26a180fe1e1dce9.png\" width=\"1490\" height=\"913\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u0441\u0442 \u0443\u0436\u0435 \u0437\u0430\u0442\u044f\u043d\u0443\u043b\u0441\u044f, \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 FIFO \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0447\u0435\u0440\u0435\u0437 DMA \u044f \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443, \u0431\u0443\u0434\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044e. \u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0438\u0437 \u043f\u0430\u043f\u043a\u0438 System \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0430 \u0441\u0445\u0435\u043c\u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Interrupt. <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bc9\/7ce\/06c\/bc97ce06c0d55627a5dfa1dd902f8f52.png\" width=\"1487\" height=\"909\"><figcaption><\/figcaption><\/figure>\n<p>\u0412\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043c\u0435\u043d\u044e Configure \u0434\u043b\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 isr_1, \u0438 \u0434\u0430\u0435\u043c \u0435\u043c\u0443 \u0438\u043c\u044f isr_ws2812.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2a1\/30b\/ef4\/2a130bef4694cc2cb6bb5363156c2d16.png\" width=\"1480\" height=\"898\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u043c \u0435\u0449\u0435 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Timer, \u0432\u043e\u0437\u044c\u043c\u0451\u043c \u0435\u0433\u043e \u0432 \u043f\u0430\u043f\u043a\u0435 Digital-&gt;Function. \u041a \u0432\u044b\u0432\u043e\u0434\u0443 interrupt \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043c \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Interrupt, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u0443\u0435\u043c \u0432 isr_timer. \u0422\u0430\u043a\u0436\u0435 \u0443\u0434\u0430\u043b\u0438\u043c \u0443 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 Timer \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043c \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0432\u0445\u043e\u0434 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u043a \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0443 Clock_1, \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0432 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 Clock_1 \u0447\u0443\u0442\u044c \u0432\u043b\u0435\u0432\u043e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fa6\/bb5\/e98\/fa6bb5e98f8ca7f6230db5dc899fcfa0.png\" width=\"1486\" height=\"911\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u044b\u0437\u043e\u0432\u0435\u043c \u043c\u0435\u043d\u044e Configure \u0434\u043b\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 Timer_1, \u0432\u044b\u0431\u0435\u0440\u0435\u043c 16 \u0431\u0438\u0442\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c, \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u043f\u0435\u0440\u0438\u043e\u0434 14999 \u0434\u043b\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u044b\u0435 3ms \u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0433\u0430\u043b\u043e\u0447\u043a\u0443 \u043d\u0430\u043f\u0440\u043e\u0442\u0438\u0432 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u043e \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044e. \u041f\u043e\u0447\u0435\u043c\u0443 \u044f \u0432\u044b\u0431\u0440\u0430\u043b \u043f\u0435\u0440\u0438\u043e\u0434 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f 3ms? \u041f\u0435\u0440\u0435\u0441\u044b\u043b\u043a\u0430 \u043e\u0434\u043d\u043e\u0433\u043e \u0431\u0430\u0439\u0442\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 8*1,2\u00b5s=9,6\u00b5s \u0432\u0441\u0435\u0433\u043e 100 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432 \u043f\u043e 3 \u0431\u0430\u0439\u0442\u0430 \u043d\u0430 \u0442\u043e\u0447\u043a\u0443, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c 2880\u00b5s+51\u00b5s \u043d\u0430 \u0438\u043c\u043f\u0443\u043b\u044c\u0441 \u0441\u0431\u0440\u043e\u0441\u0430. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c 2931\u00b5s, \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, 3ms \u043d\u0430\u043c \u0432\u043f\u043e\u043b\u043d\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2ef\/c18\/b3c\/2efc18b3c708c15742f2e67e716c759d.png\" width=\"1487\" height=\"914\"><figcaption><\/figcaption><\/figure>\n<p>\u041a\u0430\u043a \u0432\u0438\u0434\u043d\u043e, \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0442\u0430\u0439\u043c\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d \u043d\u0430 \u0431\u0430\u0437\u0435 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0438\u043b\u0438 \u0441\u0438\u043d\u0442\u0435\u0437\u0438\u0440\u043e\u0432\u0430\u043d \u043d\u0430 \u0431\u0430\u0437\u0435 UDB \u0431\u043b\u043e\u043a\u043e\u0432, \u043c\u044b \u043e\u0441\u0442\u0430\u0432\u0438\u043c Fixed Function \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e.<\/p>\n<p>\u0418 \u043d\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u00abHello Habr\u00bb, \u043a\u0441\u0442\u0430\u0442\u0438, \u043d\u0430\u0436\u0430\u0432 Shift +F6 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u0442\u044c\u0441\u044f \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043e\u043a.<\/p>\n<p>\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0431\u0435\u0433\u0443\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d\u0435 10 \u043d\u0430 10 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e Z \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c  \u0441\u043d\u0438\u0437\u0443 \u0432\u0432\u0435\u0440\u0445, \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e (\u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043f\u0440\u043e\u0432\u043e\u0434\u043e\u0432). <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/af0\/a82\/dc7\/af0a82dc7e61c6a808f5cf023fde0fb5.jpg\" width=\"5184\" height=\"3456\"><figcaption><\/figcaption><\/figure>\n<p>\u041a\u0430\u0434\u0440\u044b \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u043f\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0443 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f Timer_1, \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430 \u0440\u0438\u0441\u0443\u0435\u0442\u0441\u044f \u0432 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0431\u0443\u0444\u0435\u0440\u0435 \u0438 \u043f\u043e \u0444\u043b\u0430\u0433\u0443 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043f\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0431\u0443\u0444\u0435\u0440. \u0414\u043b\u044f \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438, \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0434\u0435\u0442 32 \u0431\u0438\u0442\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438.<\/p>\n<p>\u041d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u0438\u0437\u043c\u0435\u0440\u0438\u0442\u0435\u043b\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043c\u044b \u0438\u0437\u0440\u0430\u0441\u0445\u043e\u0434\u043e\u0432\u0430\u043b\u0438 4,4% \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 UDB. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c 19-20 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 ws2812. \u0412 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 \u0441\u0435\u0440\u0438\u0438 PSOC 4200, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, CY8C4245PVI-482 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0432\u0441\u0435\u0433\u043e \u0447\u0435\u0442\u044b\u0440\u0435 UDB \u0431\u043b\u043e\u043a\u0430, \u0443\u0434\u0430\u0441\u0442\u0441\u044f \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c 2-3 \u0442\u0430\u043a\u0438\u0445 \u043c\u043e\u0434\u0443\u043b\u044f.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f07\/848\/930\/f07848930089e244444af14cfea99929.png\" width=\"1489\" height=\"911\"><figcaption><\/figcaption><\/figure>\n<p>\u0418 \u0432 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u2014 \u043e\u0441\u0446\u0438\u043b\u043b\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0441\u043d\u044f\u0442\u044b\u0435 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u043c \u043c\u0430\u043a\u0435\u0442\u0435 \u0438 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0432\u0438\u0434\u0435\u043e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a76\/02b\/4b3\/a7602b4b3cb89e72a12060ab04b63e10.png\" alt=\"\u0418\u043c\u043f\u0443\u043b\u044c\u0441 \u0421\u0431\u0440\u043e\u0441\u0430\" title=\"\u0418\u043c\u043f\u0443\u043b\u044c\u0441 \u0421\u0431\u0440\u043e\u0441\u0430\" width=\"1171\" height=\"731\"><figcaption>\u0418\u043c\u043f\u0443\u043b\u044c\u0441 \u0421\u0431\u0440\u043e\u0441\u0430<\/figcaption><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8b3\/827\/f72\/8b3827f7296db818d20179a1c033ba31.png\" alt=\"\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u00ab1\u00bb \u0438 \u00ab0\u00bb\" title=\"\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u00ab1\u00bb \u0438 \u00ab0\u00bb\" width=\"1171\" height=\"729\"><figcaption>\u041f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u00ab1\u00bb \u0438 \u00ab0\u00bb<\/figcaption><\/figure>\n<p><iframe id=\"60805e2c6c0aef8697ca918a\" src=\"https:\/\/embedd.srv.habr.com\/iframe\/60805e2c6c0aef8697ca918a\" class=\"embed_video embed__content\" allowfullscreen=\"true\"><\/iframe><\/p>\n<p>\u041f\u0440\u043e\u0435\u043a\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d \u043d\u0430 <a href=\"https:\/\/github.com\/Aleksei521\/UDBws2812\" rel=\"noopener noreferrer nofollow\">Github<\/a><\/p>\n<\/div>\n<p> \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\/551942\/\"> https:\/\/habr.com\/ru\/post\/551942\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text_v2\" id=\"post-content-body\">\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u044b \u0442\u0438\u043f\u0430 <a href=\"https:\/\/www.dropbox.com\/s\/4fv63speqlt1rdo\/WS2812B_datasheet_EN.pdf?dl=1\" rel=\"noopener noreferrer nofollow\">WS2812<\/a> \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b, \u0438\u043c\u0438 \u0443\u0434\u043e\u0431\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c, \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u044f \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0432\u043e\u0434\u0443 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f <abbr title=\"\u0432 datasheet \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432 1024, \u043f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f 30fps\">\u0445 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432 1024, \u043f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f 30fps&#187;>\u0441\u043e\u0442\u0435<\/abbr> \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u0432. \u041e\u043d\u0438 \u0438\u043c\u0435\u044e\u0442, \u0441 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, \u0430 \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u0432 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430\u0445 \u043d\u0435\u0442 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044f \u0432\u044b\u0432\u043e\u0434\u043e\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430.  \u0412 \u044d\u0442\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <abbr title=\"\u0431\u043b\u043e\u043a\u0430 \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0438\">\u043b\u044c\u043d\u043e\u0439 \u043b\u043e\u0433\u0438\u043a\u0438&#187;>UD<\/abbr> \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 \u0441\u0435\u0440\u0438\u0438 PSOC 4 \u0438 PSOC 5LP \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 <abbr title=\"\u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cypress Semiconductor \u0432\u043e\u0448\u043b\u0430 \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 Infineon Technologies \u0432 2020 \u0433\u043e\u0434\u0443\">logies \u0432 2020 \u0433\u043e\u0434\u0443&#187;>Infineon<\/abbr> \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043c\u043e\u0434\u0443\u043b\u044c \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u043c\u0438 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430\u043c\u0438.<\/p>\n<p>\u041a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 <abbr title=\"Universal Digital Blocks\">UDB<\/abbr> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u043b\u043e\u0436\u043d\u044b\u0435 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438. \u0414\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c\u0438 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438: \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0441\u0445\u0435\u043c\u0443, \u043d\u0430\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0431\u043b\u043e\u043a-\u0441\u0445\u0435\u043c\u0443 \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439, \u0430 \u0442\u0430\u043a\u0436\u0435, \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044f\u0437\u044b\u043a\u0430 \u0432\u044b\u0441\u043e\u043a\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f Verilog. \u042f \u0431\u0443\u0434\u0443 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u044f\u0437\u044b\u043a Verilog, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u0441\u0435\u043c\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438 UDB.<\/p>\n<p>\u041d\u0430 \u0434\u0430\u043d\u043d\u043e\u043c \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u0430 \u0431\u043b\u043e\u043a-\u0441\u0445\u0435\u043c\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 <a href=\"https:\/\/www.cypress.com\/products\/32-bit-arm-cortex-m0-psoc-4200-programmable-digital-blocks\" rel=\"noopener noreferrer nofollow\">PSOC 5LP Family<\/a>.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 \u0432\u0438\u0434\u0435\u043d \u0431\u043b\u043e\u043a Universal Digital Block Array, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0432\u044f\u0437\u0430\u043d \u0447\u0435\u0440\u0435\u0437 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0448\u0438\u043d\u044b Digital Interconnect \u0438 System Bus \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430. <\/p>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0430\u0447\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c <a href=\"https:\/\/www.cypress.com\/products\/psoc-creator-integrated-design-environment-ide\" rel=\"noopener noreferrer nofollow\">PSOC Creator<\/a>. \u042d\u0442\u0430 IDE \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u0430\u043a \u0441 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u043e\u043c GCC, \u0442\u0430\u043a \u0438 Keil. <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432\u044b \u0443\u0432\u0438\u0434\u0438\u0442\u0435 \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c File-&gt;New-&gt;Project \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u0432 \u043e\u043a\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043e\u043a\u043d\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0446\u0435\u043b\u0435\u0432\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0446\u0435\u043d\u043e\u0447\u043d\u0430\u044f \u043f\u043b\u0430\u0442\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <a href=\"https:\/\/www.cypress.com\/documentation\/development-kitsboards\/cy8ckit-059-psoc-5lp-prototyping-kit-onboard-programmer-and\" rel=\"noopener noreferrer nofollow\">CY8CKIT-059<\/a>. \u041d\u043e \u0447\u0442\u043e\u0431\u044b \u044d\u0442\u0430 \u043f\u043b\u0430\u0442\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f \u0432 \u0441\u043f\u0438\u0441\u043a\u0435, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u043f\u0430\u043a\u0435\u0442.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u0432\u0441\u0435\u0445 \u043e\u0446\u0435\u043d\u043e\u0447\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0430\u0445 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0442\u043b\u0430\u0434\u0447\u0438\u043a KitProg, \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0442 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u044b \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043e\u0442\u043b\u0430\u0434\u043a\u0438 \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b PSOC 4 \u0438 PSOC 5LP \u043c\u043e\u0433\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u0439 \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u043e\u0442 1.7 \u0434\u043e 5.5 \u0432\u043e\u043b\u044c\u0442. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043c\u044b \u0441\u043c\u043e\u0436\u0435\u043c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043a \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0443 WS2812 \u0431\u0435\u0437 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430.<\/p>\n<p>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043e\u0446\u0435\u043d\u043e\u0447\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443 CY8CKIT-059, \u0436\u043c\u0435\u043c Next&gt;. \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u043d\u0430\u0434\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0442\u043e, \u0441 \u0447\u0435\u0433\u043e \u043c\u044b \u043d\u0430\u0447\u043d\u0435\u043c \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0443. \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432, \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0438\u043b\u0438 \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0445 \u0448\u0430\u0431\u043b\u043e\u043d\u043e\u0432. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0440\u043e\u0435\u043a\u0442.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0416\u043c\u0435\u043c Next&gt;, \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u043d\u0430\u0434\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0438\u043c\u044f \u043f\u0440\u043e\u0435\u043a\u0442\u0430, \u043c\u0435\u0441\u0442\u043e \u0435\u0433\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0438\u043c\u044f \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430. <\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Finish \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u043d\u0430 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0443 \u0441\u0445\u0435\u043c\u044b \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430 \u043f\u0430\u043d\u0435\u043b\u0438 \u0441\u043b\u0435\u0432\u0430, \u0434\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u044c \u0444\u0430\u0439\u043b  main.c. \u041c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0443\u0436\u0435 \u043d\u0430\u043f\u043e\u043b\u043d\u0438\u043b \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u044b\u043c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0430\u0432 SHIFT+F6 \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0440\u043e\u0439\u0442\u0438 \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043e\u043a.<\/p>\n<p>\u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0435 \u0441\u043b\u0435\u0432\u0430 \u0436\u043c\u0435\u043c \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0443 Components.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0430\u0442\u0435\u043c \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043d\u0430 \u0441\u0442\u0440\u043e\u0447\u043a\u0435 Project \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Add Component Item.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c, \u044d\u0442\u043e \u0441\u0438\u043c\u0432\u043e\u043b \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 Symbol Wizard, \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0438\u043c\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, Cypress \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043d\u043e\u043c\u0435\u0440 \u0432\u0435\u0440\u0441\u0438\u0438 \u0432 \u0438\u043c\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u00ab\u0418\u043c\u044f_\u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u00bb_v1_0, \u0446\u0438\u0444\u0440\u044b 1_0 \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c Create New \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u0432 \u043c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430, \u0433\u0434\u0435 \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0447\u0435\u0442\u044b\u0440\u0435 \u0432\u044b\u0432\u043e\u0434\u0430: \u0432\u0445\u043e\u0434 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430, \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430, \u0432\u044b\u0445\u043e\u0434 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0430\u043c\u0438 \u0438 \u0432\u044b\u0445\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0438\u043b\u0438 DMA, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0432 \u00ab1\u00bb \u043f\u0440\u0438 \u043e\u043f\u0443\u0441\u0442\u043e\u0448\u0435\u043d\u0438\u0438 \u0431\u0443\u0444\u0435\u0440\u0430 FIFO. \u0412\u044b\u0432\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043d\u0435\u0442 \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0416\u043c\u0435\u043c OK \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0443 \u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u043c \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u043c. \u0429\u0435\u043b\u043a\u0430\u0435\u043c \u043d\u0430 \u043f\u0443\u0441\u0442\u043e\u043c \u043c\u0435\u0441\u0442\u0435 \u043b\u0438\u0441\u0442\u0430 \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043c\u044b\u0448\u0438 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 PROPERTIES.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0434\u0435\u0441\u044c \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0434\u0432\u0430 \u0438\u043c\u0435\u043d\u0438 Doc.ApiPrefix \u0438 Doc.DefaultInstanceName.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0416\u043c\u0435\u043c OK, \u0437\u0430\u0442\u0435\u043c \u0441\u043d\u043e\u0432\u0430  \u0449\u0435\u043b\u043a\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 \u043c\u044b\u0448\u0438 \u043d\u0430 \u043f\u0443\u0441\u0442\u043e\u043c \u043c\u0435\u0441\u0442\u0435 \u043b\u0438\u0441\u0442\u0430 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Generate Verilog:<\/p>\n<p>\u0422\u0443\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Generate.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0414\u0432\u043e\u0439\u043d\u044b\u043c \u0449\u0435\u043b\u0447\u043a\u043e\u043c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c Verilog \u0444\u0430\u0439\u043b.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Tools-&gt;DataPath Config Tool.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 DataPath Config Tool \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 Verilog \u0444\u0430\u0439\u043b.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c DataPath \u0432 \u043d\u0430\u0448 Verilog \u0444\u0430\u0439\u043b. \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e Edit-&gt;New DataPath.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u044d\u0442\u043e\u043c \u043e\u043a\u043d\u0435 \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0438\u043c\u044f Datapath \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u044f\u0434\u043d\u043e\u0441\u0442\u044c DataPath, 8 \u0431\u0438\u0442 \u043d\u0430\u043c \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041c\u0430\u0441\u0442\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043b Datapath, \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041e\u0431\u043b\u0430\u0441\u0442\u044c 1 \u2014 \u044d\u0442\u043e 8 \u043a\u043e\u043c\u0430\u043d\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c DataPath. \u041e\u0431\u043b\u0430\u0441\u0442\u044c 2 \u2014 \u044d\u0442\u043e \u043c\u0430\u0441\u043a\u0438. \u041e\u0431\u043b\u0430\u0441\u0442\u044c 3 \u2014 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0440\u0435\u0436\u0438\u043c\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 Datapath.<\/p>\n<p>\u041d\u0430\u0441\u0442\u0430\u043b \u043c\u043e\u043c\u0435\u043d\u0442, \u043a\u043e\u0433\u0434\u0430 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u0442\u0435\u043c, \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u044d\u0442\u043e\u0442 \u0441\u0430\u043c\u044b\u0439 DataPath. UDB \u0441\u043e\u0441\u0442\u043e\u0438\u0442: \u0438\u0437 \u0431\u043b\u043e\u043a\u0430 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432, \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430, \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 Status \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 Control \u0434\u043b\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u044e\u0449\u0438\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 UDB.<\/p>\n<figure class=\"full-width\"><figcaption> <\/figcaption><\/figure>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0432 \u043d\u0435\u0433\u043e \u0432\u0445\u043e\u0434\u044f\u0442 \u0434\u0432\u0435 PLD \u043c\u0430\u0442\u0440\u0438\u0446\u044b \u043d\u0430 12 \u0432\u0445\u043e\u0434\u043e\u0432 \u0438 4 \u0432\u044b\u0445\u043e\u0434\u0430.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0418 \u0441\u0435\u0440\u0434\u0446\u0435\u043c UDB \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f DataPath. \u041c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u043d\u044b\u0439 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440. \u0423 \u043d\u0435\u0433\u043e \u0435\u0441\u0442\u044c: ALU, \u043f\u0430\u043c\u044f\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0438\u0437 \u0432\u043e\u0441\u044c\u043c\u0438 \u044f\u0447\u0435\u0435\u043a, \u0447\u0435\u0442\u044b\u0440\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0434\u0432\u0430 \u0431\u0443\u0444\u0435\u0440\u0430 \u0433\u043b\u0443\u0431\u0438\u043d\u043e\u0439 \u0447\u0435\u0442\u044b\u0440\u0435 \u0431\u0430\u0439\u0442\u0430 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043a\u0430\u043a FIFO, \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440, \u0434\u0432\u0435 \u043c\u0430\u0441\u043a\u0438, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0434\u0432\u0430 \u0431\u043b\u043e\u043a\u0430 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0438 \u0434\u0432\u0430 \u0431\u043b\u043e\u043a\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e 0x00 \u0438 0xFF \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 A0, A1. \u0421\u043b\u0435\u0434\u0443\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c, \u0447\u0442\u043e \u044d\u0442\u0438 \u0431\u043b\u043e\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0442\u044c \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u044b\u0432\u0430\u0442\u044c 16, 24, 32 \u0431\u0438\u0442\u043d\u0443\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445. \u041c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u043f\u0438\u0441\u0430\u0442\u044c \u0438 \u0447\u0438\u0442\u0430\u0442\u044c, \u043a\u0430\u043a \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b A0,A1,D0,D1, \u0442\u0430\u043a \u0438 \u0432 FIFO. <\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 datasheet \u043a \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u0443 <a href=\"https:\/\/www.dropbox.com\/s\/4fv63speqlt1rdo\/WS2812B_datasheet_EN.pdf?dl=1\" rel=\"noopener noreferrer nofollow\">WS2812<\/a> \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430\u043c \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/p>\n<figure class=\"\"><figcaption>\u0421\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0438\u0442 \u043f\u043e\u0441\u044b\u043b\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0432\u044b\u043c <\/figcaption><\/figure>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u043e\u043f\u0438\u0441\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043e\u0442 \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f. \u0415\u0441\u043b\u0438 FIFO \u043f\u0443\u0441\u0442, \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f. \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439 \u0431\u0430\u0439\u0442 \u0432 FIFO, \u043d\u0430\u0448 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430. \u041f\u043e\u0441\u043b\u0435 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430, \u0447\u0438\u0442\u0430\u0435\u0442 \u0431\u0430\u0439\u0442 \u0438\u0437 FIFO \u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0435\u0433\u043e. \u0418 \u0442\u0430\u043a \u0432\u0441\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u0431\u0430\u0439\u0442\u0430, \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 FIFO \u043d\u0435 \u043e\u043f\u0443\u0441\u0442\u0435\u0435\u0442. \u0424\u043b\u0430\u0433 \u043f\u0443\u0441\u0442\u043e\u0433\u043e FIFO \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \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 \u0438\u043b\u0438 DMA. \u0415\u0441\u043b\u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u0430\u044f \u043f\u043e\u0440\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0430 \u0432\u0437\u044f\u0442\u043e\u0433\u043e \u0438\u0437 FIFO \u0431\u0430\u0439\u0442\u0430, \u0442\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441 \u0441\u0431\u0440\u043e\u0441\u0430 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0435\u0442.<\/p>\n<p>\u0420\u0438\u0441\u0443\u0435\u043c \u0431\u043b\u043e\u043a \u0441\u0445\u0435\u043c\u0443 \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0443\u044e \u0438\u0437 8 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0442\u0430\u043a\u0442\u0430 200ns, \u0442\u0430\u043a\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0442\u044c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u0432 datasheet WS2812B. \u0414\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0441\u0431\u0440\u043e\u0441\u0430 \u0432 \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 255*0.2\u00b5s= 51\u00b5s. \u0417\u0430\u043f\u043e\u043b\u043d\u0438\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u043e\u043b\u044f \u0432 DataPath Configuration Tool.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041f\u0435\u0440\u0432\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u2014 \u044d\u0442\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO. \u041e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043c\u044b \u043e\u0431\u043d\u0443\u043b\u044f\u0435\u043c \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0435\u0439 \u0418\u0441\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0435 \u0418\u041b\u0418 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 A1. \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0432\u044b\u0431\u0440\u0430\u043d\u0430 XOR, \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a A \u0438 B \u0440\u0435\u0433\u0438\u0441\u0442\u0440 A1, \u0437\u0430\u043f\u0438\u0441\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1 \u0432\u044b\u0431\u0440\u0430\u043d\u0430 \u0438\u0437 ALU. <\/p>\n<p>\u041d\u0430 \u0432\u0442\u043e\u0440\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u043c\u044b \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043f\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0443 FIFO empty == 0. \u0422\u043e \u0435\u0441\u0442\u044c \u0432 FIFO \u043f\u043e\u0441\u0442\u0443\u043f\u0438\u043b\u0438 \u0434\u0430\u043d\u043d\u044b\u0435, \u0432 \u044d\u0442\u043e\u0442 \u0436\u0435 \u043c\u043e\u043c\u0435\u043d\u0442 \u043c\u044b \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 \u00ab0\u00bb. \u0412\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043c\u044b \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u043c \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 A1 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043e\u043d \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0xFF. \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0442\u0440\u0438, \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0432 \u00ab1\u00bb.<\/p>\n<p>\u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0442\u0440\u0438 \u043c\u044b \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0431\u0430\u0439\u0442 \u0438\u0437 FIFO \u0432 A0 \u0438 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442 \u0438\u0437 D1 \u0432 A1, \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0447\u0435\u0442\u044b\u0440\u0435.<\/p>\n<p>\u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u0438 \u043f\u044f\u0442\u044c DataPath \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0435\u0442. \u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0448\u0435\u0441\u0442\u044c \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c \u0434\u0435\u043a\u0440\u0435\u043c\u0435\u043d\u0442 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0443  \u0431\u0438\u0442 \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0441\u0435\u043c\u044c, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u0432\u044b\u0445\u043e\u0434 \u0432 \u00ab1\u00bb. \u041d\u0430\u0434\u043e \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c, \u0447\u0442\u043e \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0438\u043b\u0438 \u0444\u043b\u0430\u0433, \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0442\u0430\u043a\u0442\u0435.<\/p>\n<p>\u0412 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0441\u0435\u043c\u044c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e \u0442\u0440\u0435\u043c \u0430\u0434\u0440\u0435\u0441\u0430\u043c. \u0415\u0441\u043b\u0438 \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442 A1 != 0, \u0442\u043e \u043c\u044b \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0432\u043e\u0441\u0435\u043c\u044c, \u0447\u0442\u043e\u0431\u044b \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u0442\u0430\u043a\u0442 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u00ab1\u00bb. \u0415\u0441\u043b\u0438 A1 == 0 \u0438 FIFO \u043f\u0443\u0441\u0442, \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043f\u0435\u0440\u0432\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 FIFO. \u0415\u0441\u043b\u0438 FIFO \u043d\u0435 \u043f\u0443\u0441\u0442, \u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u043a\u043e\u043c\u0430\u043d\u0434\u0435 \u0442\u0440\u0438, \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 FIFO \u0432 A0 \u0438 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442 A1 \u0438\u0437 D1.<\/p>\n<p>\u041d\u0430\u043c \u0442\u0430\u043a\u0436\u0435 \u043d\u0430\u0434\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043c\u0430\u0441\u043a\u0443 0 \u0438 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c \u0435\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0x80. \u041f\u0440\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u043d\u0430 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A0 \u0441 \u043c\u0430\u0441\u043a\u043e\u0439 0x80, \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0443 D0 \u0440\u0430\u0432\u043d\u043e\u043c\u0443 0x80 \u044d\u0442\u043e \u0434\u0430\u0441\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430. FIFO \u0443 \u043d\u0430\u0441 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043d\u0430 \u0432\u0432\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 DataPath.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0412 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u043f\u0438\u0448\u0435\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 D0 (\u043c\u0430\u0441\u043a\u0430 \u0441\u0442\u0430\u0440\u0448\u0435\u0433\u043e \u0431\u0438\u0442\u0430) = 8&#8217;h80 \u0438 D1 (\u0441\u0447\u0435\u0442\u0447\u0438\u043a \u0431\u0438\u0442) = 0&#8217;h08, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0443\u043d\u043a\u0442 \u043c\u0435\u043d\u044e View-&gt;Initial Register Values.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c (Ctrl+S) \u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u043c Datapath Configuration Tool. \u041d\u0430\u043c \u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u0430\u0448\u0438\u043d\u044b \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 \u0432 Verilog \u0444\u0430\u0439\u043b\u0435. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u043c  \u0441\u0438\u0433\u043d\u0430\u043b\u0430\u043c \u043c\u043e\u0434\u0443\u043b\u044f \u0438\u043c\u0435\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u043d\u0430\u043c\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u0438 \u0444\u043b\u0430\u0433\u043e\u0432.<\/p>\n<pre><code class=\"cpp\">udb8(         \/*  input                   *\/  .reset(rst),\/\/\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u0441\u0431\u0440\u043e\u0441\u0430         \/*  input                   *\/  .clk(clk),\/\/\u0412\u0445\u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b         \/*  input   [02:00]         *\/  .cs_addr(state),\/\/\u0420\u0435\u0433\u0438\u0441\u0442\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u044b DataPath         \/*  input                   *\/  .route_si(1'b0),         \/*  input                   *\/  .route_ci(1'b0),         \/*  input                   *\/  .f0_load(1'b0),         \/*  input                   *\/  .f1_load(1'b0),         \/*  input                   *\/  .d0_load(1'b0),         \/*  input                   *\/  .d1_load(1'b0),         \/*  output                  *\/  .ce0(send_bit),\/\/\u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u043e\u0433\u043e \u0431\u0438\u0442\u0430         \/*  output                  *\/  .cl0(),         \/*  output                  *\/  .z0(),         \/*  output                  *\/  .ff0(),         \/*  output                  *\/  .ce1(),         \/*  output                  *\/  .cl1(),         \/*  output                  *\/  .z1(z_count_bit),\/\/\u0424\u043b\u0430\u0433 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0443 0 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u0431\u0438\u0442         \/*  output                  *\/  .ff1(end_ws2812_reset),\/\/\u0424\u043b\u0430\u0433 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0443 0xFF \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 A1         \/*  output                  *\/  .ov_msb(),         \/*  output                  *\/  .co_msb(),         \/*  output                  *\/  .cmsb(),         \/*  output                  *\/  .so(),         \/*  output                  *\/  .f0_bus_stat(),         \/*  output                  *\/  .f0_blk_stat(fifo_empty),\/\/\u0424\u043b\u0430\u0433 \u043f\u0443\u0441\u0442\u043e\u0433\u043e FIFO         \/*  output                  *\/  .f1_bus_stat(),         \/*  output                  *\/  .f1_blk_stat() );<\/code><\/pre>\n<p>\u041f\u0435\u0440\u0432\u044b\u0435 \u0434\u0432\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u2014 \u044d\u0442\u043e \u0432\u0445\u043e\u0434 \u0430\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0431\u0440\u043e\u0441\u0430 \u0438 \u0432\u0445\u043e\u0434 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430.<\/p>\n<p>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u044d\u0442\u043e \u0442\u0440\u0435\u0445-\u0431\u0438\u0442\u043d\u044b\u0439 \u0432\u0445\u043e\u0434 \u0430\u0434\u0440\u0435\u0441\u0430 \u043f\u0430\u043c\u044f\u0442\u0438 \u043a\u043e\u043c\u0430\u043d\u0434 DataPath. \u041c\u044b \u043f\u0440\u0438\u0441\u0432\u0430\u0438\u0432\u0430\u0435\u043c \u044d\u0442\u043e\u043c\u0443 \u0432\u0445\u043e\u0434\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439 state. \u0414\u0430\u043b\u0435\u0435 \u0438\u0434\u0443\u0442<\/p>\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-321854","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/321854","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=321854"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/321854\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=321854"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=321854"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=321854"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}