{"id":376704,"date":"2024-05-21T21:00:31","date_gmt":"2024-05-21T21:00:31","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=376704"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2024-05-21T21:00:31","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=376704","title":{"rendered":"<span>\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0441\u0430\u043c\u044b\u0439 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 JTAG \u043d\u0430 Arduino<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2e6\/725\/143\/2e67251435241fe9f0a7b590a23549cd.png\" width=\"758\" height=\"427\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2e6\/725\/143\/2e67251435241fe9f0a7b590a23549cd.png\"\/><\/figure>\n<ol>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/post\/658477\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/post\/660795\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: *.bsdl \u0441\u0432\u043e\u0438\u043c\u0438 \u0440\u0443\u043a\u0430\u043c\u0438<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/663560\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0447\u0442\u043e \u0432\u043d\u0443\u0442\u0440\u0438?<\/a><\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0441\u0430\u043c\u044b\u0439 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 JTAG \u043d\u0430 Arduino<\/p>\n<\/li>\n<\/ol>\n<p> \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u044c\u044f\u0445 \u0446\u0438\u043a\u043b\u0430 \u0431\u044b\u043b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f JTAG \u043d\u0430 Verilog. \u042f \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043b, \u0447\u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432, \u0437\u043d\u0430\u044e\u0449\u0438\u0445 Verilog, \u043c\u0435\u043d\u044c\u0448\u0435, \u0447\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b JTAG. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u043f\u043e\u043c\u0438\u043c\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 Verilog, \u043c\u043e\u0434\u0443\u043b\u044c JTAG \u0431\u044b\u043b \u0442\u0430\u043a\u0436\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u043d\u0430 \u0421\u0438.<\/p>\n<p> \u0422\u0430\u043a \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u0421\u0438 \u043f\u0440\u0435\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043b\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0446\u0435\u043b\u044c, \u0442\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0435\u0451 \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u044b\u043b\u0430 \u043f\u0440\u0438\u043d\u0435\u0441\u0435\u043d\u0430 \u0432 \u0436\u0435\u0440\u0442\u0432\u0443 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043d\u0430 Verilog. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0431\u044b\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0434\u0438\u0432\u043b\u0451\u043d, \u043a\u043e\u0433\u0434\u0430 \u0432 \u043b\u0438\u0447\u043d\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438 <a class=\"mention\" href=\"\/users\/sergei2405\">@Sergei2405<\/a> \u0441\u043f\u0440\u043e\u0441\u0438\u043b, \u043d\u0435\u0442 \u043b\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0434\u043b\u044f \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 \u0432 \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u043e\u043c \u0438\u0437\u0434\u0435\u043b\u0438\u0438.<\/p>\n<p> \u0421\u0443\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u043e, \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e JTAG \u043c\u043d\u0435 \u043f\u043e\u2011\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0432\u0438\u0434\u0438\u0442\u0441\u044f \u043d\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u043d\u043d\u044b\u043c. <br \/> \u041d\u043e, \u0432\u043e\u2011\u043f\u0435\u0440\u0432\u044b\u0445, \u044d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043f\u043e\u0432\u043e\u0434 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432. <br \/> \u0410 \u0432\u043e\u2011\u0432\u0442\u043e\u0440\u044b\u0445, \u0435\u0441\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u041f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u0417\u0430\u0434\u0430\u0447\u0438 \ud83d\ude42<\/p>\n<p> \u0418\u0442\u0430\u043a, \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u043f\u043e\u043b\u043b\u0438\u043d\u0433 \u0438 \u043f\u0440\u043e\u0447\u0435\u0435. \u0410 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b JTAG \u0441\u0442\u0430\u043d\u0435\u0442 \u0444\u043e\u043d\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p> \u0423 \u0440\u044f\u0434\u0430 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e \u0445\u043e\u0434\u0443 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441: \u00ab\u0442\u0430\u043a \u043b\u0438 \u0443\u0436 \u043d\u0430\u0434\u043e \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u043d\u044b\u0435 \u0446\u0438\u043a\u043b\u044b \u0432 \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435 \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u044f XXI \u0432\u0435\u043a\u0430?\u00bb \u0422\u0430\u043a\u0430\u044f \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u044c \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0430\u0441\u0442\u043e\u0439, \u043d\u043e \u0435\u0441\u0442\u044c \u043a\u043b\u0430\u0441\u0441 \u0437\u0430\u0434\u0430\u0447, \u0433\u0434\u0435 \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u043b\u0438\u043a\u0430. \u041f\u0440\u0438\u0447\u0451\u043c \u044d\u0442\u043e\u0442 \u043e\u0442\u043a\u043b\u0438\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c, \u0441\u043a\u0430\u0436\u0435\u043c \u0442\u0430\u043a, \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c.<\/p>\n<p> \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 \u0437\u0430\u0434\u0430\u0447 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0447\u0451\u0442\u0443 \u0446\u0438\u043a\u043b\u043e\u0432 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u041f\u041b\u0418\u0421. \u0421\u0443\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u043e, \u044f \u0431\u044b \u0441\u043a\u0430\u0437\u0430\u043b, \u0447\u0442\u043e \u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c. \u041d\u043e \u00ab\u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u00bb \u041f\u041b\u0418\u0421 \u0434\u0430\u0451\u0442\u0441\u044f \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0446\u0435\u043d\u043e\u0439. \u041a\u0430\u0436\u0434\u044b\u0439 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u2014 \u044d\u0442\u043e \u0441\u043e\u0442\u043d\u0438 \u0438 \u0442\u044b\u0441\u044f\u0447\u0438 \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Stratix\u00a010 <a href=\"https:\/\/www.tomshardware.com\/news\/intel-introduces-worlds-largest-fpga-with-433-billion-transistors\" rel=\"noopener noreferrer nofollow\">\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442<\/a> \u0434\u043e 10,2\u00a0\u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0438 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0438\u0437 43300\u00a0\u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432.<\/p>\n<p> \u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u00ab\u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u00bb \u043b\u044e\u0431\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b. \u0410 \u043e\u043d\u0430 \u2014 \u0432\u043e \u043c\u043d\u043e\u0433\u043e\u043c \u043e\u0442 \u043e\u0431\u044a\u0451\u043c\u0430 \u043f\u0430\u043c\u044f\u0442\u0438. \u042d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u043d\u0430\u044f \u044f\u0447\u0435\u0439\u043a\u0430 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u2014 \u044d\u0442\u043e \u0432\u0441\u0435\u0433\u043e \u0448\u0435\u0441\u0442\u044c \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432.<br \/> \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435 \u0443\u0434\u0438\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Texas Instruments \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043b\u0438\u043d\u0435\u0439\u043a\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 <a href=\"http:\/\/ti.com\/lit\/gpn\/AM4376\" rel=\"noopener noreferrer nofollow\">Sitara\u00a0AM437x<\/a>, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0412 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445 \u043f\u043e\u043c\u0438\u043c\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u044f\u0434\u0440\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u0432 1000\u00a0\u041c\u0413\u0446, \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u044f\u0434\u0440\u0430 PRU (Programmable Real\u2011time Unit). \u041e\u043d\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435\u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 200 \u041c\u0413\u0446, \u043d\u043e \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442 \u0440\u043e\u0432\u043d\u043e \u043e\u0434\u043d\u0443 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u0437\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0446\u0438\u043a\u043b. \u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u043b\u043b\u044e\u0437\u0438\u0439 \u0432 \u043f\u043b\u0430\u043d\u0435 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438, \u0441\u0442\u0430\u0442\u044c\u044f <a href=\"http:\/\/ti.com\/lit\/pdf\/spry264\" rel=\"noopener noreferrer nofollow\">Ensuring\u00a0real\u2011time\u00a0predictability<\/a>, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u0430\u044f Texas Instruments, \u043a\u0430\u043a \u0440\u0430\u0437 \u043f\u0440\u043e \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b.<\/p>\n<p> \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u044f \u0440\u0435\u0448\u0438\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u0443\u044e \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0451\u043d\u043d\u0443\u044e \u0434\u0435\u043c\u043e\u2011\u043f\u043b\u0430\u0442\u0443 \u0432 \u043c\u0438\u0440\u0435 \u2014 Arduino. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u044b\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c \u0441\u0442\u0430\u043d\u0435\u0442 ATmega328P, \u043d\u0435 \u0438\u043c\u0435\u044e\u0449\u0438\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 JTAG.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8d0\/d9e\/175\/8d0d9e175d540df9e06a1c42994f792e.png\" width=\"1200\" height=\"799\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8d0\/d9e\/175\/8d0d9e175d540df9e06a1c42994f792e.png\"\/><\/figure>\n<p> \u0422\u0430\u043a \u043a\u0430\u043a \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430, \u0442\u043e \u0441\u0440\u0435\u0434\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 Arduino\u00a0IDE, \u0430 Microchip\u00a0Studio.<\/p>\n<details class=\"spoiler\">\n<summary>\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Arduino \u0441\u0440\u0435\u0434\u0443 Microchip\u00a0Studio \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0433\u043a\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c<\/summary>\n<div class=\"spoiler__content\">\n<p> \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u043e\u043c\u0435\u0440 COM\u2011\u043f\u043e\u0440\u0442\u0430 \u043d\u0430\u0448\u0435\u0433\u043e Arduino. \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e COM38:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/bf3\/ae2\/a44\/bf3ae2a447a97c15466d691835d59b22.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bf3\/ae2\/a44\/bf3ae2a447a97c15466d691835d59b22.png\"\/><\/figure>\n<p> \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 avrdude. \u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043e\u043d\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b AVR \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u0442\u043d\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u043e\u0432. \u0415\u0451 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c <a href=\"https:\/\/github.com\/avrdudes\/avrdude\/releases\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>. \u0412 \u0430\u0440\u0445\u0438\u0432\u0435 \u0441 \u0440\u0435\u043b\u0438\u0437\u043e\u043c \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u0440\u0438 \u0444\u0430\u0439\u043b\u0430, \u0438\u0445 \u043d\u0430\u0434\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u043a\u0443\u044e\u2011\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0430\u043f\u043a\u0443. \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e C:\\Program Files\u00a0(x86)\\Atmel\\avrdude\\<\/p>\n<p> \u0422\u0435\u043f\u0435\u0440\u044c \u0432 \u0441\u0440\u0435\u0434\u0435 <a href=\"https:\/\/www.microchip.com\/en-us\/tools-resources\/develop\/microchip-studio\" rel=\"noopener noreferrer nofollow\">Microchip\u00a0Studio<\/a> \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435.<br \/> \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u0432 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u043c\u0435\u043d\u044e \u0424\u0430\u0439\u043b\u2192\u0421\u043e\u0437\u0434\u0430\u0442\u044c\u2192\u041f\u0440\u043e\u0435\u043a\u0442 \u0438 \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0436\u0435\u043c \u0442\u0438\u043f \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Assembler:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/b88\/847\/821\/b888478211d9e9a76784ed2bdfb2cc83.png\" width=\"1202\" height=\"802\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/b88\/847\/821\/b888478211d9e9a76784ed2bdfb2cc83.png\"\/><\/figure>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u041e\u041a \u0438 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0436\u0435\u043c \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e \u0438 \u043c\u0430\u0440\u043a\u0443 \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\/r\/w1560\/getpro\/habr\/upload_files\/caa\/973\/9ac\/caa9739ac21627a2896237d83412bf8a.png\" width=\"1202\" height=\"802\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/caa\/973\/9ac\/caa9739ac21627a2896237d83412bf8a.png\"\/><\/figure>\n<p> \u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u0432 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u043c\u0435\u043d\u044e \u043f\u0443\u043d\u043a\u0442 \u0421\u0435\u0440\u0432\u0438\u0441\u2192\u0412\u043d\u0435\u0448\u043d\u0438\u0435\u00a0\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/bda\/c95\/d0e\/bdac95d0e0549ed09843a8058507f025.png\" width=\"1202\" height=\"802\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bda\/c95\/d0e\/bdac95d0e0549ed09843a8058507f025.png\"\/><\/figure>\n<p> \u0412 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0436\u0435\u043c:<\/p>\n<ul>\n<li>\n<p> \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430<\/p>\n<\/li>\n<li>\n<p> \u043f\u0443\u0442\u044c \u043a *.exe. \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e C:\\Program Files\u00a0(x86)\\Atmel\\avrdude\\avrdude.exe<\/p>\n<\/li>\n<li>\n<p> \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b (\u043c\u0430\u0440\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u0430, \u043c\u0430\u0440\u043a\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u0438\u043c\u044f COM\u2011\u043f\u043e\u0440\u0442\u0430, \u0431\u0438\u0442\u0440\u0435\u0439\u0442, \u043e\u0442\u043a\u0443\u0434\u0430 \u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443). \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e  \u00ab-c arduino -p atmega328p -P COM38 -b 115200 -U flash:w:$(TargetName).hex\u00bb<\/p>\n<\/li>\n<li>\n<p> \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c \u2014 $(TargetDir)<\/p>\n<\/li>\n<li>\n<p> \u00ab\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u043a\u043d\u043e \u0432\u044b\u0432\u043e\u0434\u0430\u00bb \u2014 \u0441\u0442\u0430\u0432\u0438\u043c \u0433\u0430\u043b\u043a\u0443<\/p>\n<\/li>\n<\/ul>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cc3\/8af\/800\/cc38af80091a3cd13a4d2c3ede9d10a8.png\" width=\"1202\" height=\"802\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cc3\/8af\/800\/cc38af80091a3cd13a4d2c3ede9d10a8.png\"\/><\/figure>\n<p> \u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u041e\u041a. \u041d\u0430\u0434 \u043f\u0443\u043d\u043a\u0442\u043e\u043c \u00ab\u0412\u043d\u0435\u0448\u043d\u0438\u0435\u00a0\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb \u0432 \u043c\u0435\u043d\u044e \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043f\u0443\u043d\u043a\u0442 \u00abArduino\u00bb.<\/p>\n<p> \u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0430\u0436\u0430\u0432 \u0421\u0431\u043e\u0440\u043a\u0430\u2192\u0421\u043e\u0431\u0440\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 (\u043b\u0438\u0431\u043e \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c F7). \u0418 \u043f\u0440\u043e\u0448\u0438\u0432\u0430\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043f\u0443\u043d\u043a\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e \u0421\u0435\u0440\u0432\u0438\u0441\u2192Arduino:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/76c\/fcc\/a04\/76cfcca043df07bb525e6da6119b04c3.png\" width=\"1202\" height=\"802\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/76c\/fcc\/a04\/76cfcca043df07bb525e6da6119b04c3.png\"\/><\/figure>\n<p> \u0415\u0441\u043b\u0438 \u043c\u044b \u0432\u0441\u0451 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0432\u0435\u0440\u043d\u043e \u0438 \u0441\u0430\u043c Arduino \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d \u043a \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0443, \u0442\u043e \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0438 (\u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e) \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043e\u043a\u043d\u0435 \u0432\u044b\u0432\u043e\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u00abavrdude done. Thank you.\u00bb<\/p>\n<\/div>\n<\/details>\n<p> \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u041f\u041e, \u043d\u0435 \u043b\u0438\u0448\u043d\u0438\u043c \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043c\u0438\u0433\u0430\u0442\u044c \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u043c. \u0423 Arduino \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d \u043a 13\u2011\u043c\u0443 \u0432\u044b\u0432\u043e\u0434\u0443 \u0433\u0440\u0435\u0431\u0451\u043d\u043a\u0438 Digital \u0438\u043b\u0438 \u043a 5\u2011\u043c\u0443 \u0432\u044b\u0432\u043e\u0434\u0443 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u0430\u0437\u043e\u0432\u044b\u043c \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043a\u043e\u0434:<\/p>\n<pre><code class=\"assembly\">.equ LED_POS  = 5 .equ LED_MASK = (1 &lt;&lt; LED_POS) reset:   sbi DDRB, LED_POS   ldi r16,  LED_MASK   ldi r17,  0 loop:   out  PORTB, r16   out  PORTB, r17 rjmp loop<\/code><\/pre>\n<p> \u0414\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043f\u044f\u0442\u044b\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb \u043a\u0430\u043a \u0432\u044b\u0445\u043e\u0434, \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b (\u043d\u043e\u043b\u044c \u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 \u0432 \u043f\u044f\u0442\u043e\u043c \u0431\u0438\u0442\u0435), \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u044b. \u041f\u0440\u0438\u0447\u0451\u043c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u0430 \u043e\u0434\u043d\u043e\u043c\u0443 (\u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c\u0443) \u0446\u0438\u043a\u043b\u0443.<\/p>\n<details class=\"spoiler\">\n<summary>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043e\u0441\u0446\u0438\u043b\u043b\u043e\u0433\u0440\u0430\u0444\u0430, \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0441\u0430\u043c\u043e\u0433\u043e Arduino, \u043d\u043e \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u043e\u043f\u0440\u0430\u043a\u0442\u0438\u043a\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u043c\u0438 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 Proteus<\/summary>\n<div class=\"spoiler__content\">\n<p>  \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442: \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e File\u2192New\u00a0Project, \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0432\u0432\u0435\u0434\u0451\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438 \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u043f\u0443\u0442\u044c, \u043d\u0430\u0436\u043c\u0451\u043c Next\u2011Next\u2011Next\u2011Next\u2011Finish.<\/p>\n<p> \u041e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0441\u0445\u0435\u043c\u044b. \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043d\u0430 \u043d\u0435\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 ATmega328P:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2e4\/706\/8fe\/2e47068feac8ab0a5b57caaf758472fb.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2e4\/706\/8fe\/2e47068feac8ab0a5b57caaf758472fb.png\"\/><\/figure>\n<ol>\n<li>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 Component Mode<\/p>\n<\/li>\n<li>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Pick Device, \u043e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043e\u043a\u043d\u043e \u043f\u043e\u0438\u0441\u043a\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432<\/p>\n<\/li>\n<li>\n<p> \u0412 \u0441\u0442\u0440\u043e\u043a\u0435 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u0432\u0432\u0435\u0434\u0451\u043c ATmega328P<\/p>\n<\/li>\n<li>\n<p> \u0414\u0432\u0430 \u0440\u0430\u0437\u0430 \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443 \u043f\u043e\u0438\u0441\u043a\u0430<\/p>\n<\/li>\n<\/ol>\n<p> \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043d\u0430 \u0441\u0445\u0435\u043c\u0443:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/593\/42f\/837\/59342f83769b0b3316bf13a85e6bc685.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/593\/42f\/837\/59342f83769b0b3316bf13a85e6bc685.png\"\/><\/figure>\n<p> \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438, \u0430 \u0437\u0430\u0442\u0435\u043c \u2014 \u043f\u043e \u043f\u043e\u043b\u044e \u0441\u0445\u0435\u043c\u044b. \u0422\u043e\u0433\u0434\u0430 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0438\u0437 \u043a\u0430\u0440\u0430\u043d\u0434\u0430\u0448\u0430 \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0432 \u0440\u043e\u0437\u043e\u0432\u044b\u0439 \u043a\u043e\u043d\u0442\u0443\u0440 \u0431\u0443\u0434\u0443\u0449\u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u0429\u0451\u043b\u043a\u043d\u0435\u043c \u0432 \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043c\u0435\u0441\u0442\u0435 \u0441\u0445\u0435\u043c\u044b \u0435\u0449\u0451 \u0440\u0430\u0437 \u2014 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d.<\/p>\n<p> \u0417\u0430\u0442\u0435\u043c \u0434\u0432\u0430\u0436\u0434\u044b \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u0435 \u0438 \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0432\u043f\u0438\u0448\u0435\u043c \u0432 \u043f\u043e\u043b\u0435 Program File \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u0444\u0430\u0439\u043b\u0443 *.hex, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u0438\u0437 \u043a\u043e\u0434\u0430 \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435. \u0424\u0430\u0439\u043b \u043b\u0435\u0436\u0438\u0442 \u0432 \u043f\u0430\u043f\u043a\u0435 Debug \u0432\u043d\u0443\u0442\u0440\u0438 \u043f\u0430\u043f\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<br \/> \u0410 \u0435\u0449\u0435 \u0432 \u043f\u043e\u043b\u0435 PCB Package \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0442\u0438\u043f \u043a\u043e\u0440\u043f\u0443\u0441\u0430 \u043d\u0430 SPDIL28.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d4f\/109\/878\/d4f1098787262462fa98fe6f96af6f8c.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d4f\/109\/878\/d4f1098787262462fa98fe6f96af6f8c.png\"\/><\/figure>\n<p> \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0449\u0443\u043f \u0442\u0435\u043c \u0436\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c, \u0447\u0442\u043e \u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0432 \u043d\u0430 \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 \u0440\u0430\u0437\u0434\u0435\u043b Probe Mode:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d31\/b18\/ad6\/d31b18ad6828952bb0d7a2072d7ecb44.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d31\/b18\/ad6\/d31b18ad6828952bb0d7a2072d7ecb44.png\"\/><\/figure>\n<p> \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u0449\u0443\u043f \u043d\u0430 5\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb (19\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435), \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0435\u0433\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 Probe1. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u0434\u0432\u0430\u0436\u0434\u044b \u043f\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044e \u0449\u0443\u043f\u0430:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d50\/8fe\/c23\/d508fec23e1d27f6a77381a41ed87296.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d50\/8fe\/c23\/d508fec23e1d27f6a77381a41ed87296.png\"\/><\/figure>\n<p> \u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0441\u0438\u0433\u043d\u0430\u043b\u0430. \u0422\u043e\u0447\u043d\u0435\u0435, \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u043e\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0438\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 Generator Mode. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u043d\u0430 2\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abD\u00bb (4\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435)<strong>. <\/strong>\u041f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0435\u043c\u0443 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 Edge1, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0432\u0440\u0435\u043c\u044f \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f 100.02m:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/9bb\/1b9\/5f5\/9bb1b95f57a02605b18513fed0955771.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/9bb\/1b9\/5f5\/9bb1b95f57a02605b18513fed0955771.png\"\/><\/figure>\n<p> \u0417\u0430\u0442\u0435\u043c \u0438\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 Graph Mode \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0434\u0432\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0430 \u0442\u0438\u043f\u0430 Analogue:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/6f2\/2e3\/038\/6f22e3038b0e17768bf58319ad1e1f12.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/6f2\/2e3\/038\/6f22e3038b0e17768bf58319ad1e1f12.png\"\/><\/figure>\n<p> \u041d\u0430\u0437\u043d\u0430\u0447\u0438\u043c \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0433\u0440\u0430\u0444\u0438\u043a\u0443. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044e \u0449\u0443\u043f\u0430 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u043c \u0435\u0433\u043e \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3b8\/540\/c0d\/3b8540c0d767cb4d55e1705e8c18ae19.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3b8\/540\/c0d\/3b8540c0d767cb4d55e1705e8c18ae19.png\"\/><\/figure>\n<p> \u0410 \u0437\u0430\u0442\u0435\u043c \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u0433\u0440\u0430\u0444\u0438\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u043e\u043d \u043e\u0431\u043d\u043e\u0432\u0438\u043b\u0441\u044f:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c93\/805\/331\/c938053310ec940f33197d9799621b11.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c93\/805\/331\/c938053310ec940f33197d9799621b11.png\"\/><\/figure>\n<p> \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0451\u043c \u0442\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0441\u0438\u0433\u043d\u0430\u043b\u0430 Edge1, \u0430 \u0437\u0430\u0442\u0435\u043c \u0434\u0432\u0430\u0436\u0434\u044b \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0433\u0440\u0430\u0444\u0438\u043a\u0443 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d, \u0432\u0432\u0435\u0434\u044f \u0432 \u043f\u043e\u043b\u0435 Start\u00a0time \u0447\u0438\u0441\u043b\u043e 100m \u0438 \u0432 \u043f\u043e\u043b\u0435 Stop\u00a0time 100.1m:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/df2\/7a8\/5e6\/df27a85e661672a4f8e9876125467a8f.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/df2\/7a8\/5e6\/df27a85e661672a4f8e9876125467a8f.png\"\/><\/figure>\n<p> \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e, \u0432\u044b\u0431\u0440\u0430\u0432 \u043f\u0443\u043d\u043a\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e Debug\u2192Run\u00a0Simulation\u00a0(timed\u00a0breakpoint). \u041e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043e\u043a\u043d\u043e \u0434\u043b\u044f \u0432\u0432\u043e\u0434\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438. \u0412\u0432\u0435\u0434\u0451\u043c \u0442\u0443\u0434\u0430 110m:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/ed1\/aaa\/6b8\/ed1aaa6b858dc624717f864a1c1ceb0a.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/ed1\/aaa\/6b8\/ed1aaa6b858dc624717f864a1c1ceb0a.png\"\/><\/figure>\n<p> \u041a\u043e\u0433\u0434\u0430 Proteus \u043f\u0440\u043e\u0441\u0438\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 0,11 \u0441\u0435\u043a\u0443\u043d\u0434\u044b \u0438 \u0432\u0441\u0442\u0430\u043d\u0435\u0442 \u043d\u0430 \u043f\u0430\u0443\u0437\u0443, \u043d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 Stop \u0432 \u043d\u0438\u0436\u043d\u0435\u0439 \u043f\u0430\u043d\u0435\u043b\u0438:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/3b6\/68d\/171\/3b668d1718735d6a9399e423e6f094e3.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/3b6\/68d\/171\/3b668d1718735d6a9399e423e6f094e3.png\"\/><\/figure>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u043a\u043b\u0430\u0432\u0438\u0448\u0443 \u041f\u0440\u043e\u0431\u0435\u043b, \u0447\u0442\u043e\u0431\u044b \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u0438\u0441\u044c \u0432 \u0433\u0440\u0430\u0444\u0438\u043a\u0438, \u0438 \u043d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0433\u0440\u0430\u0444\u0438\u043a. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/83a\/011\/20c\/83a01120c0203af9abaa3510d5281cad.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/83a\/011\/20c\/83a01120c0203af9abaa3510d5281cad.png\"\/><\/figure>\n<\/p>\n<\/div>\n<\/details>\n<h2> \u041f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/h2>\n<p> \u0418\u0442\u0430\u043a. \u0415\u0441\u043b\u0438 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0443\u043b\u044f JTAG, \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u044c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0440\u0435\u0430\u043a\u0446\u0438\u044e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b. \u041f\u0440\u0438\u0447\u0451\u043c, \u0435\u0441\u043b\u0438 \u0432 \u0438\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0446\u0435\u043b\u044c \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u043a\u0430\u043a\u043e\u0439\u2011\u043d\u0438\u0431\u0443\u0434\u044c \u0443\u0441\u0440\u0435\u0434\u043d\u0451\u043d\u043d\u044b\u0439 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c, \u0442\u043e \u0437\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 \u0432\u0430\u0436\u0435\u043d <em>\u0445\u0443\u0434\u0448\u0438\u0439<\/em> \u0441\u043b\u0443\u0447\u0430\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043c\u0435\u0436\u0434\u0443 \u0444\u0440\u043e\u043d\u0442\u043e\u043c \u043f\u043e \u043b\u0438\u043d\u0438\u0438 TCK \u0438 \u0440\u0435\u0430\u043a\u0446\u0438\u0435\u0439 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430.<\/p>\n<p> \u041a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0435\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435, \u043f\u0435\u0440\u0432\u044b\u043c \u043d\u0430 \u0443\u043c \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0442\u0435\u0440\u043c\u0438\u043d \u00ab\u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435\u00bb.<br \/>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u043c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0445\u0443\u0434\u0448\u0438\u0439 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u043b\u0443\u0447\u0430\u0439 \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043d\u0430 \u0444\u0440\u043e\u043d\u0442 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043f\u043e \u043b\u0438\u043d\u0438\u0438 TCK \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p> \u041d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0443 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<pre><code class=\"assembly\">.set LED_POS  = 5 .set EXT_POS  = 2 .set LED_MASK = (1 &lt;&lt; LED_POS) .set EXT_MASK = (1 &lt;&lt; EXT_POS)  .org 0x0000    rjmp main .org 0x0002    rjmp external_interrupt .org INT_VECTORS_SIZE     ; \u0430\u0434\u0440\u0435\u0441 \u043a\u043e\u043d\u0446\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439  main:   cli                     ; \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f                  ldi r17,    LOW(RAMEND) ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0441\u0442\u0435\u043a\u0430   out SPL,    r17   ldi r17,    HIGH(RAMEND)   out SPH,    r17               sbi DDRB,   LED_POS     ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c PORTB5 \u043a\u0430\u043a \u0432\u044b\u0445\u043e\u0434 (\u043a\u043e\u043d\u0442\u0430\u043a\u0442 13 \u0433\u0440\u0435\u0431\u0451\u043d\u043a\u0438 Digital)   cbi DDRD,   EXT_POS     ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c PORTD2 \u043a\u0430\u043a \u0432\u0445\u043e\u0434  (\u043a\u043e\u043d\u0442\u0430\u043a\u0442  2 \u0433\u0440\u0435\u0431\u0451\u043d\u043a\u0438 Digital)    ldi r16,    0x01        ; \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u043d\u0435\u0448\u043d\u0435\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435   out EIMSK,  r16   ldi r16,    0b00001111  ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0442 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430   sts EICRA,  r16               ldi r16,    LED_MASK   ldi r17,    0    sei                     ; \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f     loop:             rjmp loop  external_interrupt:       out PORTB,  r16   out PORTB,  r17 reti                      ; \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u0438\u0437 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/code><\/pre>\n<p> \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043f\u044f\u0442\u044b\u043c \u0432\u044b\u0432\u043e\u0434\u043e\u043c \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb (\u0432\u044b\u0445\u043e\u0434 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430) \u0438 \u0432\u0442\u043e\u0440\u044b\u043c \u0432\u044b\u0432\u043e\u0434\u043e\u043c \u043f\u043e\u0440\u0442\u0430 \u00abD\u00bb (\u0432\u0445\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0434\u043b\u044f \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f).<br \/>\u041f\u043e\u0441\u043b\u0435 \u043c\u0435\u0442\u043a\u0438 main \u043c\u044b \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 cli \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043b\u044e\u0431\u044b\u0445 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439.<br \/>\u0417\u0430\u0442\u0435\u043c \u043c\u044b \u0437\u0430\u043d\u043e\u0441\u0438\u043c \u0432 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0430\u0440\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 (\u0432 \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0441\u0442\u0435\u043a\u0430) \u0430\u0434\u0440\u0435\u0441 \u0432\u0435\u0440\u0448\u0438\u043d\u044b \u0441\u0442\u0435\u043a\u0430. \u042d\u0442\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439, \u0442\u043e\u0447\u043d\u0435\u0435, \u0434\u043b\u044f \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0430 \u0438\u0437 \u043d\u0438\u0445 \u2014 \u0447\u0443\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438.<br \/>\u0417\u0430\u0442\u0435\u043c \u043c\u044b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u043c \u043f\u044f\u0442\u044b\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb \u043a\u0430\u043a \u0432\u044b\u0445\u043e\u0434 \u0438 \u0432\u0442\u043e\u0440\u043e\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abD\u00bb \u043a\u0430\u043a \u0432\u0445\u043e\u0434.<br \/>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u043d\u0435\u0448\u043d\u0435\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0443\u0435\u043c \u0435\u0433\u043e \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c\u0443 \u0444\u0440\u043e\u043d\u0442\u0443 (0\u21921).<br \/>\u041d\u0430\u043a\u043e\u043d\u0435\u0446, \u043c\u044b \u0437\u0430\u043d\u043e\u0441\u0438\u043c \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0434\u043b\u044f \u043d\u0443\u043b\u044f \u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u044b \u0438 \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 sei.<\/p>\n<p> \u0414\u0430\u043b\u0435\u0435 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u0432 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b.<\/p>\n<p> \u041d\u043e \u043a\u0440\u043e\u043c\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0435\u0441\u0442\u044c \u0431\u043b\u043e\u043a, \u043f\u043e\u043c\u0435\u0449\u0430\u044e\u0449\u0438\u0439 \u043f\u0430\u0440\u0443 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u0432 \u0430\u0434\u0440\u0435\u0441\u0430 0x0000 \u0438 0x0002 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c.<\/p>\n<p>\u0412 \u043b\u044e\u0431\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u0435\u0441\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u2014 \u044d\u0442\u043e \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439. \u041e\u043d \u0445\u0440\u0430\u043d\u0438\u0442 \u0430\u0434\u0440\u0435\u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439. \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043f\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435 \u2014 \u044d\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430.<br \/> \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 ATmega328P \u0432 \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u043b\u044c. \u0410 \u043f\u0440\u0438 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u0441\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438, \u0432 \u044d\u0442\u043e\u0442 \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0442\u0430\u043a\u0436\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 0x0002.<\/p>\n<p> \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0430\u0434\u0440\u0435\u0441\u043e\u0432, \u043a\u0443\u0434\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043f\u0440\u0438 \u0442\u043e\u043c \u0438\u043b\u0438 \u0438\u043d\u043e\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0438. \u0421\u043e\u0432\u043e\u043a\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u044d\u0442\u0438\u0445 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044c \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 \u0438\u0434\u0443\u0442 \u043f\u043e\u0434\u0440\u044f\u0434 (\u0441 \u0448\u0430\u0433\u043e\u043c \u0432 \u0434\u0432\u0430 \u0431\u0430\u0439\u0442\u0430, \u0440\u0430\u0437\u043c\u0435\u0440 \u043b\u044e\u0431\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0443 ATmega328P \u043a\u0440\u0430\u0442\u0435\u043d \u0434\u0432\u0443\u043c). \u041f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0442\u0430\u043a\u043e\u043c\u0443 \u0430\u0434\u0440\u0435\u0441\u0443 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0434\u043d\u0443 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u0431\u0435\u0437\u0443\u0441\u043b\u043e\u0432\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 rjmp, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0443\u0436\u0435 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p> \u0422\u043e \u0435\u0441\u0442\u044c, \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0432 \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u043b\u044c, \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f rjmp\u00a0main, \u0441\u043e\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u043c\u0435\u0442\u043a\u0443 main, \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u0437\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u0432 \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b loop, \u043f\u043e\u043a\u0430 \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0451\u0442 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435.<\/p>\n<p> \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043e\u0434\u043d\u0430\u043a\u043e, \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u043d\u0430\u0447\u043d\u0451\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438. \u0422\u0435\u043a\u0443\u0449\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u2014 \u044d\u0442\u043e \u0431\u0435\u0437\u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 rjmp, \u00ab\u0432\u0440\u0430\u0449\u0430\u044e\u0449\u0438\u0439\u00bb \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b. \u042d\u0442\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430. \u0418 \u0432 \u0445\u0443\u0434\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043d\u0430 \u0432\u0442\u043e\u0440\u043e\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abD\u00bb \u0444\u0440\u043e\u043d\u0442 \u043f\u0440\u0438\u0434\u0451\u0442 \u0438\u043c\u0435\u043d\u043d\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0447\u0430\u043b\u043e\u0441\u044c.<\/p>\n<p> \u0417\u0430\u0442\u0435\u043c \u043d\u0430\u0447\u043d\u0451\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439. \u0422\u0430\u043a \u043a\u0430\u043a \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0432 \u0442\u043e \u0436\u0435 \u043c\u0435\u0441\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0441\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c, \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u044f\u0432\u043d\u043e \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439:<\/p>\n<ul>\n<li>\n<p> \u0447\u0442\u0435\u043d\u0438\u0435 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439<\/p>\n<\/li>\n<li>\n<p> \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0441\u0442\u0435\u043a\u0430<\/p>\n<\/li>\n<li>\n<p> \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u0441\u0442\u0435\u043a\u0430 \u043d\u0430 \u0434\u0432\u0430 (\u0442\u0430\u043a \u043a\u0430\u043a \u0443 ATmega328P \u0434\u0432\u0443\u0445\u0431\u0430\u0439\u0442\u043d\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438)<\/p>\n<\/li>\n<li>\n<p> \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u043c\u0443 \u0442\u0438\u043f\u0443 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/p>\n<\/li>\n<\/ul>\n<p> \u0412\u0441\u0451 \u044d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043d\u043e \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0447\u0435\u0442\u044b\u0440\u0435 \u0446\u0438\u043a\u043b\u0430.<\/p>\n<p> \u0417\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0431\u0435\u0437\u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0438\u0437 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f. \u0422\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u0432 \u043d\u0430\u0448\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0435 \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u044f\u043c\u043e \u043f\u043e\u0432\u0435\u0440\u0445 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u043b\u043e \u0431\u044b \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0438 \u0441\u044d\u043a\u043e\u043d\u043e\u043c\u0438\u043b\u043e \u0431\u044b \u043d\u0430\u043c \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430. \u041d\u043e \u0441 \u0442\u043e\u0447\u043a\u0438 \u0437\u0440\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u0442\u043e\u0442\u044b \u043a\u043e\u0434\u0430 \u0442\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0440\u0430\u0439\u043d\u0435 \u043d\u0435\u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e.<\/p>\n<p> \u0418\u0442\u0430\u043a, \u043c\u044b \u043d\u0430\u0445\u043e\u0434\u0438\u043c\u0441\u044f \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0438 \u0433\u043e\u0442\u043e\u0432\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0439 \u043a\u043e\u0434. \u041d\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430. \u041f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0438\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 reti, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442 \u0432\u0441\u0435 \u0442\u0435 \u0436\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u043e \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u043c \u0441\u0442\u0435\u043a\u0430 \u0438 \u043e\u0431\u043c\u0435\u043d\u043e\u043c \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043c\u0435\u0436\u0434\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u043c\u0438 \u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u044c\u044e, \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435.<br \/>\u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043a\u043e\u043c\u0430\u043d\u0434\u0430 reti \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u0430\u043a\u0436\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u0446\u0438\u043a\u043b\u0430.<\/p>\n<p> \u0418\u0442\u043e\u0433\u043e, \u0432 \u0431\u0430\u0437\u043e\u0432\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u0438 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0445\u0443\u0434\u0448\u0430\u044f \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430 \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u0434\u0430 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0434\u043e \u0432\u043e\u0441\u044c\u043c\u0438 \u0446\u0438\u043a\u043b\u043e\u0432. \u0422\u0430\u043a\u043e\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0442\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0434\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e12\/b38\/998\/e12b3899855990949b608fde413f1125.png\" alt=\" \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\" title=\" \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e12\/b38\/998\/e12b3899855990949b608fde413f1125.png\"\/><\/p>\n<div><figcaption> \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/figcaption><\/div>\n<\/figure>\n<p> \u0412 \u043e\u0431\u0449\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f\u043c\u0438 \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0442\u0430\u043a\u0438\u0435 \u0432\u0430\u0436\u043d\u044b\u0435 \u0432\u0435\u0449\u0438, \u043a\u0430\u043a \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e\u0435\/\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0432 \u0441\u0442\u0435\u043a \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u043f\u0440\u0438 \u0432\u0445\u043e\u0434\u0435 \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a. <br \/>\u0418, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u0445\u043e\u0434\u043e\u043c \u0438\u0437 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u2014 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438: \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0438 \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432.<\/p>\n<p> \u042d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c\u0441\u044f, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u043c\u0435\u0445 \u0438\u043b\u0438 \u0434\u0440\u0435\u0431\u0435\u0437\u0433\u0430 \u043d\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u043b\u043e\u0441\u044c \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437. \u0410 \u0442\u0430\u043a\u0436\u0435 \u0447\u0442\u043e\u0431\u044b \u0432\u044b\u0437\u043e\u0432 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043d\u0435 \u043f\u043e\u0440\u0442\u0438\u043b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u043f\u043e\u0442\u043e\u043a\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.<br \/>\u0414\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a:<\/p>\n<pre><code class=\"assembly\">external_interrupt:   cli      ; \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f     push r16 ; \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 \u0432 \u0441\u0442\u0435\u043a \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432   push r17   push r18 ; === \u043d\u0430\u0447\u0430\u043b\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f === ; \u043c\u043e\u0436\u0435\u043c \u043a\u0430\u043a \u0443\u0433\u043e\u0434\u043d\u043e \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b r16, r17 \u0438 r18 ; === \u043a\u043e\u043d\u0435\u0446 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f ===   pop  r18 ; \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0438\u0437 \u0441\u0442\u0435\u043a\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u0432 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435   pop  r17   pop  r16   sei      ; \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f reti <\/code><\/pre>\n<p> \u0417\u0434\u0435\u0441\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f push \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0432 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 \u0438\u0437 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u0441\u0442\u0435\u043a\u0430 \u0438 \u0437\u0430\u0442\u0435\u043c \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443.<br \/>\u0410 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f pop, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0434\u0435\u043b\u0430\u0435\u0442 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442: \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438\u0437 \u0430\u0434\u0440\u0435\u0441\u0430, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u0432 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0435 \u0441\u0442\u0435\u043a\u0430, \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0438 \u0437\u0430\u0442\u0435\u043c \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u043d\u0430 \u0435\u0434\u0438\u043d\u0438\u0446\u0443.<\/p>\n<p> \u0414\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c, \u0447\u0442\u043e \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b \u043f\u043e \u043b\u0438\u043d\u0438\u0438 TCK \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0445\u043e\u0440\u043e\u0448, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043e\u043f\u0430\u0441\u0430\u0442\u044c\u0441\u044f \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430, \u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043c\u043d\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u044c\u0441\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0438\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439.<\/p>\n<p> \u041e\u0434\u043d\u0430\u043a\u043e \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 JTAG \u043c\u044b \u043d\u0435\u0438\u0437\u0431\u0435\u0436\u043d\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0451\u043c\u0441\u044f \u0435\u0449\u0451 \u0441 \u043f\u0430\u0440\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c.<\/p>\n<p> \u041f\u0435\u0440\u0432\u0430\u044f \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f, \u043a\u0430\u043a \u043f\u043e \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c\u0443 \u0444\u0440\u043e\u043d\u0442\u0443 \u043f\u043e \u043b\u0438\u043d\u0438\u0438 TCK, \u0442\u0430\u043a \u0438 \u043f\u043e \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c\u0443. \u0420\u0435\u0433\u0438\u0441\u0442\u0440 EICRA \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<ul>\n<li>\n<p> \u043f\u043e \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c\u0443 \u0444\u0440\u043e\u043d\u0442\u0443<\/p>\n<\/li>\n<li>\n<p> \u043f\u043e \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c\u0443 \u0444\u0440\u043e\u043d\u0442\u0443<\/p>\n<\/li>\n<li>\n<p> \u043f\u043e \u043b\u044e\u0431\u043e\u043c\u0443 \u0444\u0440\u043e\u043d\u0442\u0443<\/p>\n<\/li>\n<li>\n<p> \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043d\u0443\u043b\u044f<\/p>\n<\/li>\n<\/ul>\n<p> \u041c\u044b, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043c\u043e\u0436\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u043b\u044e\u0431\u043e\u043c\u0443 \u0444\u0440\u043e\u043d\u0442\u0443, \u043d\u043e \u0430\u0434\u0440\u0435\u0441 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439 \u0431\u0443\u0434\u0435\u0442 \u0434\u043b\u044f \u043e\u0431\u043e\u0438\u0445 \u0444\u0440\u043e\u043d\u0442\u043e\u0432 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435. \u0410 \u044d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u0444\u0440\u043e\u043d\u0442\u0430 \u0432\u043d\u0443\u0442\u0440\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p> \u0427\u0442\u043e\u0431\u044b \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u043e\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u044c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043d\u0430 \u043b\u0438\u043d\u0438\u0438 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 sbis (Skip if Bit in I\/O register is Set). \u041e\u043d\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0431\u0438\u0442 \u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 \u0432\u0432\u043e\u0434\u0430\u2011\u0432\u044b\u0432\u043e\u0434\u0430, \u0438 \u0435\u0441\u043b\u0438 \u0431\u0438\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0443\u044e \u0435\u0434\u0438\u043d\u0438\u0446\u0443, \u0442\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p> \u041e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u0440\u0438\u043c\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0432\u0438\u0434:<\/p>\n<pre><code class=\"assembly\">external_interrupt:   sbis PIND, EXT_POS   rjmp fall_edge   rise_edge:     ; \u0440\u0435\u0430\u043a\u0446\u0438\u044f \u043d\u0430 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0444\u0440\u043e\u043d\u0442   reti   fall_edge:     ; \u0440\u0435\u0430\u043a\u0446\u0438\u044f \u043d\u0430 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0444\u0440\u043e\u043d\u0442   reti<\/code><\/pre>\n<p> \u0415\u0441\u043b\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u043b\u043e\u0436\u043d\u043e, \u0442\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f sbis \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u0446\u0438\u043a\u043b. \u0418 \u0435\u0449\u0451 \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f rjmp.<br \/>\u0415\u0441\u043b\u0438 \u0443\u0441\u043b\u043e\u0432\u0438\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0438\u0441\u0442\u0438\u043d\u043d\u044b\u043c, \u0442\u043e \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f sbis \u0437\u0430\u0439\u043c\u0451\u0442 \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430, \u0430 rjmp \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u043f\u0443\u0449\u0435\u043d.<\/p>\n<p> \u0412\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0432 \u0442\u043e\u043c \u0436\u0435 \u2014 \u0443 \u043d\u0430\u0441 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u0438\u043d \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f. \u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c, \u0432 \u043a\u0430\u043a\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442 JTAG \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0435\u0433\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f.<\/p>\n<p> \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438, \u043f\u043e\u0445\u043e\u0436\u0435\u0439 \u043d\u0430 switch\u2011case.<\/p>\n<h2> Switch\u2011case<\/h2>\n<p> \u041d\u0430\u043f\u043e\u043c\u043d\u044e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f switch\u2011case \u0432 \u0421\u0438:<\/p>\n<pre><code class=\"cpp\">switch(value){     case 0: \/\/\u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 0 \/\/break     case 1: \/\/\u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 1 \/\/break     case 2: \/\/\u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 2 \/\/break     case 3: \/\/\u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 3 \/\/break     default: \/\/\u043a\u043e\u0434 \u0434\u043b\u044f \u0438\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 }<\/code><\/pre>\n<p> \u0412 \u0441\u043a\u043e\u0431\u043a\u0430\u0445 \u043f\u043e\u0441\u043b\u0435 switch \u043f\u0438\u0448\u0435\u0442\u0441\u044f \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0434\u0430\u0451\u0442 \u0446\u0435\u043b\u043e\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442. \u042d\u0442\u043e\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u043e\u043e\u0447\u0435\u0440\u0451\u0434\u043d\u043e \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c\u0438, \u043f\u0440\u043e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u043c\u0438 \u043f\u043e\u0441\u043b\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0431\u043b\u043e\u043a\u0430 case. \u0415\u0441\u043b\u0438 \u0432 \u0445\u043e\u0434\u0435 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0433\u043e \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u044f \u0435\u0441\u0442\u044c \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435, \u0442\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0431\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u0441\u0435 \u0431\u043b\u043e\u043a\u0438 \u043d\u0438\u0436\u0435\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432. <br \/>\u041d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0431\u043b\u043e\u043a default. \u041e\u043d \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442, \u0435\u0441\u043b\u0438 \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e \u043d\u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f.<br \/>\u0417\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0431\u043b\u043e\u043a \u043a\u043e\u0434\u0430 \u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435. \u0422\u043e\u0433\u0434\u0430 \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 break. \u041e\u043d\u0430 \u043f\u0440\u0435\u0440\u0432\u0451\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0431\u043b\u043e\u043a\u043e\u0432, \u0435\u0441\u043b\u0438 \u0442\u0430\u043a\u043e\u0432\u044b\u0435 \u0438\u043c\u0435\u044e\u0442\u0441\u044f.<\/p>\n<p> \u041d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f\u043c\u0438:<\/p>\n<ul>\n<li>\n<p> cpi (Compare with Immediate), \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043e\u0439 \u0438 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0431\u0438\u0442 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 \u0444\u043b\u0430\u0433\u043e\u0432. \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0437\u0430 \u043e\u0434\u0438\u043d \u0446\u0438\u043a\u043b.<\/p>\n<\/li>\n<li>\n<p> breq (Branch if Equal), \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u043d\u0430 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u0443\u044e \u043c\u0435\u0442\u043a\u0443, \u0435\u0441\u043b\u0438 \u0431\u0438\u0442 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 \u0444\u043b\u0430\u0433\u043e\u0432 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0446\u044b. \u0412 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u0437\u0430 \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430. \u0415\u0441\u043b\u0438 \u0431\u0438\u0442 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u0430 \u0441\u0431\u0440\u043e\u0448\u0435\u043d \u0432 \u043d\u043e\u043b\u044c, \u0442\u043e \u0442\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u0446\u0438\u043a\u043b. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u043e\u0432 \u043d\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442.<\/p>\n<\/li>\n<\/ul>\n<p> \u041a\u043e\u0434 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b switch\u2011case \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c:<\/p>\n<pre><code class=\"assembly\">cpi  r18, 0            breq case_0 cpi  r18, 1 breq case_1 cpi  r18, 2 breq case_2 cpi  r18, 3 breq case_3 rjmp case_default case_0:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 0   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_1:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 1   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_2:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 2   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_3:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 3   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_default:     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0438\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 break_switch:<\/code><\/pre>\n<p> \u0415\u0441\u043b\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0430\u043c\u043e\u043c\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u043c\u0443 case, \u0442\u043e \u043f\u0440\u0438 \u043f\u0440\u043e\u0447\u0438\u0445 \u0440\u0430\u0432\u043d\u044b\u0445, \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e. \u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439.<br \/>\u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u0435\u0441\u043b\u0438 \u0432 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u043c case \u043d\u0435 \u0431\u044b\u043b\u043e \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043e \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0438 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b, \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0430\u0440\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439\u2026<\/p>\n<pre><code class=\"assembly\">cpi  rXX, Y breq case_Y<\/code><\/pre>\n<p> &#8230;\u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u043e \u0434\u0432\u0443\u043c \u0446\u0438\u043a\u043b\u0430\u043c.<br \/>\u0410 \u0435\u0441\u043b\u0438 \u0440\u0430\u0432\u0435\u043d\u0441\u0442\u0432\u043e \u0431\u044b\u043b\u043e \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u043e, \u0442\u043e \u0442\u0440\u0451\u043c.<\/p>\n<p> \u0423\u0447\u0438\u0442\u044b\u0432\u0430\u044f, \u0447\u0442\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442 \u043c\u043e\u0434\u0443\u043b\u044f JTAG \u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u043e\u0434\u043d\u043e\u043c \u0438\u0437 16 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439, \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043c\u044b \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0443\u0435\u043c \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u043c\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443, \u0442\u043e \u043a \u0445\u0443\u0434\u0448\u0435\u043c\u0443 \u0441\u043b\u0443\u0447\u0430\u044e \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u0442\u0441\u044f 15\u00d72+1\u00d73=33 \u0446\u0438\u043a\u043b\u0430.<\/p>\n<p> \u0415\u0441\u0442\u044c, \u043e\u0434\u043d\u0430\u043a\u043e, \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431, \u0435\u0441\u043b\u0438 \u0432\u0441\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0438\u0434\u0443\u0442 \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443 (\u043d\u0443 \u0438\u043b\u0438 \u0438\u043c\u0435\u044e\u0442 \u043d\u0435\u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u0435\u043b\u044b \u0432 \u044d\u0442\u043e\u043c \u043f\u043e\u0440\u044f\u0434\u043a\u0435).<br \/>\u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u043c\u0435\u0441\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432\u043f\u0435\u0440\u0451\u0434 \u043d\u0430 \u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c\u043e\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435. \u0410 \u0437\u0430\u0442\u0435\u043c \u0438\u0437 \u043d\u043e\u0432\u043e\u0433\u043e \u043c\u0435\u0441\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0433\u043e case.<\/p>\n<p> \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u043c \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0435\u0439 ijmp (Indirect Jump). \u041e\u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043f\u043e 16\u2011\u0431\u0438\u0442\u043d\u043e\u043c\u0443 \u0430\u0434\u0440\u0435\u0441\u0443, \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u043c\u0443 \u0432 \u043f\u0430\u0440\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 r30:r31, \u0438\u043d\u0430\u0447\u0435 \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u043c\u043e\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u043c Z:<\/p>\n<pre><code class=\"assembly\">ldi r19, 0 ldi ZL, low(switch_label) ldi ZH, high(switch_label) add ZL, r18 adc ZH, r19 ijmp switch_label: rjmp case_0 rjmp case_1 rjmp case_2 rjmp case_3 case_0:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 0   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_1:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 1   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_2:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 2   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_3:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 3   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch break_switch:<\/code><\/pre>\n<p> \u0412 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0432 \u043f\u0430\u0440\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 ZL \u0438 ZH \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u043a\u0438 switch_label (\u0430\u0434\u0440\u0435\u0441\u0430 \u043c\u0435\u0442\u043e\u043a \u2014 16\u2011\u0431\u0438\u0442\u043d\u044b\u0435).<br \/>\u0417\u0430\u0442\u0435\u043c \u043f\u0440\u0438\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043a \u043d\u0435\u043c\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430.<br \/>\u0422\u0430\u043a \u043a\u0430\u043a \u0440\u0435\u0433\u0438\u0441\u0442\u0440 Z \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f 16\u2011\u0431\u0438\u0442\u043d\u044b\u043c, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044e, \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0438 8\u2011\u0431\u0438\u0442\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a \u043c\u043b\u0430\u0434\u0448\u0435\u043c\u0443 \u0431\u0430\u0439\u0442\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 Z \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0435, \u0447\u0435\u043c 255. \u0422\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0451\u0442 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 (\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u0442 \u043a \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0444\u043b\u0430\u0433\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 \u0444\u043b\u0430\u0433\u043e\u0432). \u041f\u043e \u044d\u0442\u043e\u0439 \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0430\u0440\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 add\/adc: \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0444\u043b\u0430\u0433\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430.<\/p>\n<p> \u041c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0440\u0430\u043d\u0435\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432 \u0445\u043e\u0434\u0435 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438) \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u043f\u043e\u0434 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043d\u0443\u043b\u044f \u0438 \u043f\u0430\u0440\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u043f\u043e\u0434 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u043a\u0438 switch_label. \u0410 \u0432 \u0441\u0430\u043c\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 switch\u2011case \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e movw, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u0430 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0438\u0437 \u043e\u0434\u043d\u043e\u0439 \u043f\u0430\u0440\u044b \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 \u0432 \u0434\u0440\u0443\u0433\u0443\u044e \u043f\u0430\u0440\u0443 \u0437\u0430 \u043e\u0434\u0438\u043d \u0446\u0438\u043a\u043b.<\/p>\n<pre><code class=\"assembly\">ldi r23, 0 ldi r24, low(switch_label) ldi r25, high(switch_label) &lt;...> movw ZH:ZL, r24:r25 add ZL, r18 adc ZH, r23 ijmp switch_label: rjmp case_0 rjmp case_1 rjmp case_2 rjmp case_3 case_0:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 0   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_1:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 1   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_2:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 2   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch case_3:   ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f 3   ; \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e rjmp break_switch break_switch:<\/code><\/pre>\n<p> \u0422\u043e\u0433\u0434\u0430 movw, add \u0438 adc \u0437\u0430\u0439\u043c\u0443\u0442 \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u0446\u0438\u043a\u043b\u0443, \u0430 ijmp \u0438 rjmp \u043f\u043e \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430. \u0418\u0442\u043e\u0433\u043e \u0441\u0435\u043c\u044c \u0446\u0438\u043a\u043b\u043e\u0432. \u041f\u0440\u0438\u0447\u0451\u043c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 case.<\/p>\n<p> \u041a\u0430\u043a \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u043e\u0441\u044c, \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f switch\u2011case \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430. \u041d\u043e \u043f\u043e\u043c\u0438\u043c\u043e \u043d\u0435\u0451, \u043a\u0430\u0436\u0434\u0430\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u044f \u043d\u0430 <em>\u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439<\/em> \u0444\u0440\u043e\u043d\u0442 \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f.<br \/>\u0415\u0441\u043b\u0438 \u043c\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u043a\u043e\u0434\/\u043d\u043e\u043c\u0435\u0440 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u0442\u043e \u043d\u0430 \u0435\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0443\u0439\u0434\u0451\u0442 \u0442\u0440\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0446\u0438\u043a\u043b\u0430:<\/p>\n<pre><code class=\"assembly\">ldi  r16, NEXT_STATE_IF_TMS1 ; \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435, \u0435\u0441\u043b\u0438 TMS=1 sbis TMS_REG, TMS_PIN        ; \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e, \u0435\u0441\u043b\u0438 TMS=1 ldi  r16, NEXT_STATE_IF_TMS0 ; \u0435\u0441\u043b\u0438 TMS=0, \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u043d\u0435 \u043f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u0430, \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435<\/code><\/pre>\n<p> \u041e\u0434\u043d\u0430\u043a\u043e \u043c\u043e\u0436\u043d\u043e \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c \u0438 \u0432\u043e\u0432\u0441\u0435 \u0431\u0435\u0437 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 switch\u2011case. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432 \u043a\u043e\u043d\u0446\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u043d\u0435 \u043a\u043e\u0434 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f, \u0430 \u0430\u0434\u0440\u0435\u0441 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430, \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044f \u0437\u0430\u0442\u0435\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e ijmp \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u043f\u043e \u044d\u0442\u043e\u043c\u0443 \u0430\u0434\u0440\u0435\u0441\u0443.<\/p>\n<p> \u0425\u043e\u0442\u044f \u044d\u0442\u043e\u0442 \u043c\u0435\u0442\u043e\u0434 \u0438 \u0434\u0435\u0448\u0435\u0432\u043b\u0435 \u043f\u043e \u0446\u0438\u043a\u043b\u0430\u043c, \u0447\u0435\u043c switch\u2011case, \u043d\u043e \u043e\u043d \u043d\u0435 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u0435\u043d. \u0410\u0434\u0440\u0435\u0441\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f 16\u2011\u0431\u0438\u0442\u043d\u044b\u043c\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u0437\u0430\u0439\u043c\u0451\u0442 \u0448\u0435\u0441\u0442\u044c \u0446\u0438\u043a\u043b\u043e\u0432:<\/p>\n<pre><code class=\"assembly\">ldi ZL, low(ADDR_IF_TMS1) ldi ZH, high(ADDR_IF_TMS1) sbis TMS_REG, TMS_PIN ldi ZL, low(ADDR_IF_TMS0) sbis TMS_REG, TMS_PIN ldi ZH, high(ADDR_IF_TMS0)<\/code><\/pre>\n<h2> \u041f\u043e\u043b\u043b\u0438\u043d\u0433<\/h2>\n<p> \u0421\u0443\u043c\u043c\u0438\u0440\u0443\u044f \u0432\u0441\u0451 \u0432\u044b\u0448\u0435\u0441\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0435, \u0435\u0441\u043b\u0438 \u043c\u044b \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u0442\u043e \u043d\u0435\u0438\u0437\u0431\u0435\u0436\u043d\u044b\u0435 \u043d\u0430\u043a\u043b\u0430\u0434\u043d\u044b\u0435 \u0440\u0430\u0441\u0445\u043e\u0434\u044b \u0434\u043b\u044f \u0445\u0443\u0434\u0448\u0435\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f \u0431\u0443\u0434\u0443\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438:<\/p>\n<ul>\n<li>\n<p> 4 \u0446\u0438\u043a\u043b\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 reti \u043e\u0442 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f (\u0434\u043b\u044f \u0445\u0443\u0434\u0448\u0435\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f)<\/p>\n<\/li>\n<li>\n<p> 4 \u0446\u0438\u043a\u043b\u0430 \u043d\u0430 \u0443\u0445\u043e\u0434 \u0432 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435<\/p>\n<\/li>\n<li>\n<p> 3 \u0446\u0438\u043a\u043b\u0430 \u043d\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u0438 \u0444\u0440\u043e\u043d\u0442\u0430 (\u0434\u043b\u044f \u0445\u0443\u0434\u0448\u0435\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f)<\/p>\n<\/li>\n<li>\n<p> 6 \u0446\u0438\u043a\u043b\u0430 \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430<\/p>\n<\/li>\n<\/ul>\n<p> \u0418\u0442\u043e\u0433\u043e 17 \u0446\u0438\u043a\u043b\u043e\u0432.<\/p>\n<p> \u0415\u0441\u0442\u044c \u0441\u043f\u043e\u0441\u043e\u0431 \u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0451 \u0442\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435 \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u043c \u0432 \u0442\u0440\u0438 \u0440\u0430\u0437\u0430 \u0431\u044b\u0441\u0442\u0440\u0435\u0435:<\/p>\n<pre><code class=\"assembly\">loop:   rise_edge:     sbis PIND, JTCK_POS     rjmp rise_edge       ; \u0440\u0435\u0430\u043a\u0446\u0438\u044f \u043d\u0430 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0444\u0440\u043e\u043d\u0442   fall_edge:     sbic PIND, JTCK_POS     rjmp fall_edge;       ; \u0440\u0435\u0430\u043a\u0446\u0438\u044f \u043d\u0430 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u0444\u0440\u043e\u043d\u0442 rjmp loop<\/code><\/pre>\n<p> \u0417\u0434\u0435\u0441\u044c \u043f\u0430\u0440\u0430 sbis(sbic)\/rjmp \u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0446\u0438\u043a\u043b \u0432 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438 \u0444\u0440\u043e\u043d\u0442\u0430. \u041f\u0440\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0438 \u0444\u0440\u043e\u043d\u0442\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432\u044b\u0445\u043e\u0434 \u0438\u0437 \u0446\u0438\u043a\u043b\u0430 \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u043d\u0438\u0435 \u0432 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a. \u041f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0435 \u0444\u0440\u043e\u043d\u0442\u0430 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u043f\u043e\u043b\u043e\u0436\u043d\u043e\u0439 \u043f\u043e\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u0438. \u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c, \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u044b\u0439 \u043e\u043f\u0440\u043e\u0441 \u0447\u0435\u0433\u043e\u2011\u043b\u0438\u0431\u043e \u0432 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f, <a href=\"https:\/\/en.wikipedia.org\/wiki\/Polling_(computer_science)\" rel=\"noopener noreferrer nofollow\">\u043f\u043e\u043b\u043b\u0438\u043d\u0433<\/a>.<\/p>\n<p> \u0412 \u0445\u0443\u0434\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0444\u0440\u043e\u043d\u0442 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043d\u0430 \u0432\u044b\u0432\u043e\u0434\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0435\u0439 sbis(sbic) \u0442\u043e\u043b\u044c\u043a\u043e \u0447\u0442\u043e \u043d\u0430\u0447\u0430\u043b\u0430\u0441\u044c.<br \/>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043f\u043e\u043a\u0430 \u043d\u0435 \u0432\u0438\u0434\u0438\u0442 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u0446\u0438\u043a\u043b.<br \/>\u0417\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434, \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430 \u0438 \u043d\u043e\u0432\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430.<br \/>\u041e\u043d\u0430 \u0443\u0436\u0435 \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u0442 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u0435\u0434\u0448\u0435\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0443 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 rjmp, \u0437\u0430\u043d\u0438\u043c\u0430\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0434\u0432\u0430 \u0446\u0438\u043a\u043b\u0430. <br \/>\u0418\u0442\u043e\u0433\u043e \u043f\u044f\u0442\u044c \u0446\u0438\u043a\u043b\u043e\u0432.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/0ab\/2e1\/724\/0ab2e17240d1d37f48e26d5c87ba4825.png\" alt=\" \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u043b\u0438\u043d\u0433\u0430\" title=\" \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u043b\u0438\u043d\u0433\u0430\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/0ab\/2e1\/724\/0ab2e17240d1d37f48e26d5c87ba4825.png\"\/><\/p>\n<div><figcaption> \u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u043b\u0438\u043d\u0433\u0430<\/figcaption><\/div>\n<\/figure>\n<p> \u042d\u0442\u043e, \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432\u0441\u0451. <br \/>\u041d\u0438\u043a\u0430\u043a\u0438\u0445 \u0443\u0445\u043e\u0434\u043e\u0432 \u0432 \u043f\u043e\u0434\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b\u2011\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u043e\u0432 \u0438\u0437 \u043d\u0438\u0445.<br \/>\u041d\u0438\u043a\u0430\u043a\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u043e\u043b\u044f\u0440\u043d\u043e\u0441\u0442\u0438 \u2014 \u043e\u043d\u0430 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u0430\u043c\u0430 \u0441\u043e\u0431\u043e\u0439.<br \/>\u0418 \u0434\u0430\u0436\u0435 \u043b\u044e\u0431\u044b\u0435 \u0432\u044b\u044f\u0441\u043d\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0443\u0449\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c.<br \/>\u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u0438\u043d, \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0444\u0440\u043e\u043d\u0442\u0430 sbis(sbic)\/rjmp \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0433\u043e\u0434\u043d\u043e. \u0410 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043e\u0442\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430 JTAG \u0441 \u0442\u0435\u043a\u0443\u0449\u0438\u043c \u043c\u0435\u0441\u0442\u043e\u043d\u0430\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435\u043c \u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0435. \u0422\u043e \u0435\u0441\u0442\u044c \u0432 \u043d\u0435\u044f\u0432\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u0435 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430 \u0432 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439.<\/p>\n<p> \u0414\u043b\u044f \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043a\u043e\u0434\u0430 \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0432\u044b\u043d\u0435\u0441\u0442\u0438 \u043f\u0430\u0440\u044b sbis(sbic)\/rjmp \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u043a\u0440\u043e\u0441\u044b. \u041c\u0435\u0442\u043a\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u043c\u0430\u043a\u0440\u043e\u0441\u043e\u0432 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u043c\u0438. \u0422\u043e \u0435\u0441\u0442\u044c \u0430\u0434\u0440\u0435\u0441\u0430, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043c\u0435\u0442\u043a\u0430\u043c \u043c\u0430\u043a\u0440\u043e\u0441\u0430, \u0431\u0443\u0434\u0443\u0442 \u043f\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u0430\u043d\u044b \u0438\u043c\u0435\u043d\u043d\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e \u043c\u0435\u0441\u0442\u0430, \u043a\u0443\u0434\u0430 \u043c\u0430\u043a\u0440\u043e\u0441 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d.<\/p>\n<pre><code class=\"assembly\">.macro WAIT_JTCK_RISE   rise_edge:   sbis JTCK_PORT, JTCK_POS   rjmp rise_edge .endm .macro WAIT_JTCK_FALL   fall_edge:   sbic JTCK_PORT, JTCK_POS   rjmp fall_edge .endm &lt;...> SELECT_DR:   WAIT_JTCK_FALL     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 select-dr   WAIT_JTCK_RISE     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 select-dr CAPTURE_DR:   WAIT_JTCK_FALL     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 capture-dr   WAIT_JTCK_RISE     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 capture-dr SHIFT_DR:   WAIT_JTCK_FALL     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 shift-dr   WAIT_JTCK_RISE     ; \u043a\u043e\u0434 \u0434\u043b\u044f \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 shift-dr &lt;...><\/code><\/pre>\n<h2> \u0412\u043d\u0443\u0442\u0440\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0439<\/h2>\n<p> \u041c\u043e\u0434\u0443\u043b\u044c JTAG \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043d\u0430\u0431\u043e\u0440\u0435 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432. \u0418\u0445 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u0435\u0442\u2026 \u0441\u0434\u0432\u0438\u0433.<\/p>\n<p> \u0412 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f ror (Rotate Right through Carry), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0441\u0434\u0432\u0438\u0433\u043e\u0432\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0438\u0437 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 8\u2011\u0431\u0438\u0442\u043d\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432. <br \/>\u0414\u0430\u043d\u043d\u0430\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f \u0437\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442 8\u2011\u0431\u0438\u0442\u043d\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0438 \u0441\u0434\u0432\u0438\u0433\u0430\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0432 \u0435\u0433\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u0443. \u0417\u0430\u0442\u0435\u043c (\u043d\u043e \u0432 \u0442\u043e\u043c \u0436\u0435 \u0446\u0438\u043a\u043b\u0435) \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0444\u043b\u0430\u0433\u0430 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u0432 \u0441\u0442\u0430\u0440\u0448\u0438\u0439 \u0431\u0438\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430, \u0430 \u043f\u043e\u0442\u043e\u043c \u0437\u0430\u043d\u043e\u0441\u0438\u0442 \u0432\u043e \u0444\u043b\u0430\u0433 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u0442\u043e\u0442 \u0437\u0430\u043f\u043e\u043c\u043d\u0435\u043d\u043d\u044b\u0439 \u043c\u043b\u0430\u0434\u0448\u0438\u0439 \u0431\u0438\u0442.<\/p>\n<p> \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 32\u2011\u0431\u0438\u0442\u043d\u044b\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 DATA_REG, \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u0438\u0437 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 8\u2011\u0431\u0438\u0442\u043d\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432, \u0438 \u0441\u0434\u0432\u0438\u043d\u0443\u0442\u044c \u0435\u0433\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439:<\/p>\n<pre><code class=\"assembly\">#define DATA_REG0  r19 #define DATA_REG1  r20 #define DATA_REG2  r21 #define DATA_REG3  r22 &lt;...> ror DATA_REG3 ror DATA_REG2 ror DATA_REG1 ror DATA_REG0<\/code><\/pre>\n<p> \u041e\u0434\u043d\u0438\u043c \u0438\u0437 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 JTAG \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0431\u0438\u0442\u044b \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0442 \u0437\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u044b\u0432\u043e\u0434\u043e\u0432 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u044b.<\/p>\n<p> \u0415\u0441\u043b\u0438 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 JTAG \u043b\u0438\u0448\u044c \u043f\u043e\u043c\u0438\u0433\u0430\u0442\u044c \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u043c \u043d\u0430 \u043f\u043e\u0440\u0442\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u0430\u043d \u043d\u0430\u043c \u0432 \u0431\u0435\u0437\u0440\u0430\u0437\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435, \u0442\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0438\u0437 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0440\u0442 \u0437\u0430\u0439\u043c\u0451\u0442 \u043e\u0434\u0438\u043d \u0446\u0438\u043a\u043b:<\/p>\n<pre><code class=\"assembly\">out PORTB, DATA_REG0<\/code><\/pre>\n<p> \u0415\u0441\u043b\u0438 \u0436\u0435 \u043d\u0430 \u043f\u043e\u0440\u0442\u0435 \u0435\u0441\u0442\u044c \u043b\u0438\u043d\u0438\u0438, \u043c\u0435\u043d\u044f\u0442\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e, \u0442\u043e \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439:<\/p>\n<ul>\n<li>\n<p> \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445 \u0431\u0438\u0442\u043e\u0432 \u043f\u043e\u0440\u0442\u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440<\/p>\n<\/li>\n<li>\n<p> \u0432 \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d\u043d\u043e\u0439 \u043a\u043e\u043f\u0438\u0438 \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0432 \u043d\u043e\u043b\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0431\u0438\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e \u043c\u0435\u043d\u044f\u0442\u044c \u0432 \u043f\u043e\u0440\u0442\u0435<\/p>\n<\/li>\n<li>\n<p> \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435\u2011\u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0435 \u0441\u0431\u0440\u043e\u0441\u0438\u0442\u044c \u0432 \u043d\u043e\u043b\u044c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u0431\u0438\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u043c\u0435\u043d\u044f\u0442\u044c \u0432 \u043f\u043e\u0440\u0442\u0435<\/p>\n<\/li>\n<li>\n<p> \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043d\u0435\u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0445 \u0438 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u043c\u044b\u0445 \u0431\u0438\u0442 \u0432 \u043e\u0434\u043d\u043e\u043c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u043e\u0431\u0438\u0442\u043e\u0432\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u0418\u041b\u0418<\/p>\n<\/li>\n<li>\n<p> \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445 \u0431\u0438\u0442\u043e\u0432 \u0432 \u043f\u043e\u0440\u0442\u0435<\/p>\n<\/li>\n<\/ul>\n<pre><code class=\"assembly\">.equ MASK    = 0b00000111 &lt;...> ldi r17,   MASK &lt;...> in  r16,   PORTB cbr r16,   MASK and DATA_REG0, r17  or  r16,   DATA_REG0 out PORTB, r16<\/code><\/pre>\n<p> \u042d\u0442\u043e \u0443\u0436\u0435 \u043f\u044f\u0442\u044c \u0446\u0438\u043a\u043b\u043e\u0432.<\/p>\n<p> \u0415\u0441\u043b\u0438 \u043d\u0430\u043c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u043d\u0430 \u0432\u044b\u0432\u043e\u0434\u0430\u0445 \u0432\u044b\u0441\u043e\u043a\u043e\u0438\u043c\u043f\u0435\u0434\u0430\u043d\u0441\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u0434\u0432\u0443\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u0448\u0438\u043d), \u0442\u043e \u0432\u0441\u0435 \u0442\u0435 \u0436\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0441\u043e\u0432\u0435\u0440\u0448\u0438\u0442\u044c \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 DDRB.<\/p>\n<p> \u0423 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 ATmega328P \u0432\u0441\u0435\u0433\u043e \u0442\u0440\u0438 \u043f\u043e\u0440\u0442\u0430: B, C \u0438 D. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u043b\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u0438\u043d\u043e\u0439 \u0432 \u0434\u0435\u0432\u044f\u0442\u044c \u0431\u0430\u0439\u0442: PORTx, PINx \u0438 DDRx \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430. \u0418 9\u00d75=45 \u0446\u0438\u043a\u043b\u043e\u0432 \u043f\u043e\u0441\u043b\u0435 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 UPDATE\u2011DR.<\/p>\n<p> \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u043f\u043e\u0441\u043b\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0435\u0449\u0451 3\u20114 \u0446\u0438\u043a\u043b\u0430 \u043d\u0430 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u0434\u0440\u0443\u0433\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/p>\n<p> \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0434\u043b\u044f \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043a\u0430\u043d\u043e\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 JTAG, \u0445\u0443\u0434\u0448\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 (\u0441 \u0443\u0447\u0451\u0442\u043e\u043c \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043d\u0430 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0444\u0440\u043e\u043d\u0442\u043e\u0432, \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043d\u0430 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u0434\u0440\u0443\u0433\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 50% \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0441\u0442\u0438 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 TCK) \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c (45+5+4)\u00d72=108 \u0446\u0438\u043a\u043b\u043e\u0432. \u041f\u0440\u0438 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u0432 16\u00a0\u041c\u0413\u0446 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0442\u0430\u043a\u0442\u043e\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u0430 JTAG \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u0442 148\u00a0\u043a\u0413\u0446.<\/p>\n<p> \u0415\u0441\u043b\u0438 \u0436\u0435 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0442\u0430\u043a\u043e\u0432\u0430, \u0447\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043f\u043e\u0440\u0442\u044b \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u0442\u044c \u0434\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0430, \u0442\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043b\u0438\u043c\u0438\u0442\u0438\u0440\u0443\u044e\u0449\u0438\u043c \u0444\u0430\u043a\u0442\u043e\u0440\u043e\u043c \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 switch\u2011case. \u041e\u043d\u0430 \u0434\u043e\u043b\u0436\u043d\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u043d\u0430 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0442\u043e\u0433\u043e \u0438\u043b\u0438 \u0438\u043d\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439.<\/p>\n<p> \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u043e \u0432\u044b\u0431\u043e\u0440\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 SELECT\u2011DR. \u0421\u0430\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b switch\u2011case \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f, \u043a\u0430\u043a \u0443\u0436\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u043e\u0441\u044c, \u0437\u0430 \u0441\u0435\u043c\u044c \u0446\u0438\u043a\u043b\u043e\u0432.<br \/>\u041d\u043e \u0437\u0434\u0435\u0441\u044c \u0435\u0441\u0442\u044c \u0442\u043e\u043d\u043a\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442. \u0412 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0430 JTAG \u0435\u0441\u0442\u044c \u043f\u0430\u0440\u0430 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0444\u0440\u043e\u043d\u0442\u043e\u0432: \u0441\u043f\u0435\u0440\u0432\u0430 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e, \u0437\u0430\u0442\u0435\u043c \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e. \u041f\u043e\u0441\u043b\u0435 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043b\u0438\u043d\u0438\u0438 TMS \u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043d\u043e\u0432\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"assembly\">#define JUMP_TO rjmp .macro CHECK_JTMS    sbic JTMS_PORT, JTMS_POS .endm &lt;...> PAUSE_DR_IDCODE:   WAIT_JTCK_FALL   WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT2_DR_IDCODE       JUMP_TO PAUSE_DR_IDCODE<\/code><\/pre>\n<p> \u042d\u0442\u043e\u0442 \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u0442\u0440\u0438\u2011\u0447\u0435\u0442\u044b\u0440\u0435 \u0446\u0438\u043a\u043b\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438\u0431\u0430\u0432\u044f\u0442\u0441\u044f \u043a \u0441\u0435\u043c\u0438 \u0446\u0438\u043a\u043b\u0430\u043c switch\u2011case. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u0447\u0442\u043e\u0431\u044b \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0445\u0443\u0434\u0448\u0435\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f, \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c switch\u2011case \u043f\u043e\u0441\u043b\u0435 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430. \u0410 \u0437\u0430\u0442\u0435\u043c, \u043f\u043e\u0441\u043b\u0435 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430, \u043b\u0438\u0431\u043e \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u0439 \u0432\u0435\u0442\u043a\u0435, \u043b\u0438\u0431\u043e \u0443\u0439\u0442\u0438 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 SELECT\u2011IR:<\/p>\n<pre><code class=\"assembly\">.macro REG_INIT   ldi ZERO_REG, 0   ldi SW_DR_LREG, low(switch_dr_label)   ldi SW_DR_HREG, high(switch_dr_label) .endm .macro INSTR_SWITCH_DR   movw ZH:ZL, SW_DR_HREG:SW_DR_LREG   add ZL, INSTR_REG   adc ZH, ZERO_REG   ijmp .endm &lt;...> REG_INIT &lt;...> SELECT_DR:   WAIT_JTCK_FALL     INSTR_SWITCH_DR     switch_dr_label:       JUMP_TO SELECT_DR_BYPASS ; \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u043a\u043e\u0434 0)       JUMP_TO SELECT_DR_IDCODE ; \u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 1 (IDCODE)       JUMP_TO SELECT_DR_BYPASS ; \u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 2 (BYPASS)       JUMP_TO SELECT_DR_SAMPLE ; \u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 3 (SAMPLE)       JUMP_TO SELECT_DR_EXTEST ; \u043a\u043e\u0434 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 4 (EXTEST)       JUMP_TO SELECT_DR_BYPASS ; \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u043a\u043e\u0434 5)       JUMP_TO SELECT_DR_BYPASS ; \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u043a\u043e\u0434 6)       JUMP_TO SELECT_DR_BYPASS ; \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u043a\u043e\u0434 7) SELECT_DR_IDCODE:   WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_IDCODE SELECT_DR_BYPASS:   WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_BYPASS SELECT_DR_SAMPLE:   WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_SAMPLE SELECT_DR_EXTEST:   WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_EXTEST<\/code><\/pre>\n<p> \u0421\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 switch\u2011case \u043d\u0430\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439. \u041f\u0443\u043d\u043a\u0442 \u00abd\u00bb \u0440\u0430\u0437\u0434\u0435\u043b\u0430 8.1.1 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 IEEE1149.1 \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<blockquote>\n<p> <em>Instruction binary codes that are not otherwise required to provide control of test logic shall be equivalent to the BYPASS instruction.<\/em><\/p>\n<\/blockquote>\n<p> \u0422\u043e \u0435\u0441\u0442\u044c, \u0435\u0441\u043b\u0438 \u043a\u043e\u0434 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0439 \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u043d\u0438 \u0441 \u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0435\u0439, \u0442\u043e \u0442\u0430\u043a\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u043e\u043b\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0442\u0430\u043a \u0436\u0435, \u043a\u0430\u043a \u0435\u0441\u043b\u0438 \u0431\u044b \u044d\u0442\u043e \u0431\u044b\u043b\u0430 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044f BYPASS.<\/p>\n<p> \u041f\u043e\u0441\u043b\u0435 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438, \u0443\u0437\u043a\u0438\u043c \u043c\u0435\u0441\u0442\u043e\u043c \u0441\u0442\u0430\u043d\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 SHIFT\u2011DR. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043c\u0430\u043b, \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u0437\u0430\u0439\u043c\u0451\u0442 32 \u0431\u0438\u0442\u0430 (\u0447\u0435\u0442\u044b\u0440\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430). \u041d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441\u0434\u0432\u0438\u0433 32\u2011\u0431\u0438\u0442\u043d\u043e\u0433\u043e \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u0437\u0430\u0439\u043c\u0451\u0442 4+3\u00a0\u0446\u0438\u043a\u043b\u0430.<br \/>\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u044d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043d\u0430 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u043c \u0444\u0440\u043e\u043d\u0442\u0435, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442, \u043a \u0441\u0435\u043c\u0438 \u0446\u0438\u043a\u043b\u0430\u043c \u043f\u0440\u0438\u0431\u0430\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0435\u0449\u0451 \u0442\u0440\u0438\u2011\u0447\u0435\u0442\u044b\u0440\u0435 \u0446\u0438\u043a\u043b\u0430 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0430 \u0438 \u043f\u044f\u0442\u044c \u0446\u0438\u043a\u043b\u043e\u0432 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u0430 \u0444\u0440\u043e\u043d\u0442\u0430. \u0418\u0442\u043e\u0433\u043e 16\u00d72=32 \u0446\u0438\u043a\u043b\u0430 \u0434\u043b\u044f \u0445\u0443\u0434\u0448\u0435\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f \u043d\u0430 \u043e\u0434\u0438\u043d \u0442\u0430\u043a\u0442 TCK:<\/p>\n<pre><code class=\"assembly\">.macro JTDO_DR_OUT   bst DATA_REG0, 0   in  r16, JTDO_PORT   bld r16, JTDO_POS   out JTDO_PORT, r16 .endm .macro SHIFT_IDCODE   in  r16, JTDI_PORT   bst r16, JTDI_POS    ror DATA_REG3   ror DATA_REG2   ror DATA_REG1   ror DATA_REG0   bld DATA_REG3, 7 .endm .macro JTDO_HIZ    cbi JTDO_DDR,  JTDO_POS    cbi JTDO_PORT, JTDO_POS .endm .macro JTDO_PP    sbi JTDO_DDR, JTDO_POS .endm &lt;...> SHIFT_DR_IDCODE:     JTDO_PP ; \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 TDO \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 push\u2011pull   WAIT_JTCK_FALL     JTDO_DR_OUT   WAIT_JTCK_RISE     SHIFT_IDCODE     CHECK_JTMS       JUMP_TO EXIT1_DR_IDCODE       JUMP_TO SHIFT_DR_IDCODE   EXIT1_IR: WAIT_JTCK_FALL   JTDO_HIZ ; \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u044b\u0445\u043e\u0434\u0430 TDO \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 HiZ &lt;...><\/code><\/pre>\n<p> \u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438, \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0433\u0430\u0434\u0430\u0442\u044c \u043f\u0430\u0440\u0443 \u0446\u0438\u043a\u043b\u043e\u0432, \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043c\u0435\u0436\u0434\u0443 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u043d\u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0438 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430. \u041e\u0434\u043d\u0430\u043a\u043e \u0440\u0430\u0434\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u0430 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0438\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f SHIFT\u2011DR. \u0422\u043e\u0433\u0434\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 \u043d\u0438\u0437\u043a\u0438\u0445 \u0447\u0430\u0441\u0442\u043e\u0442\u0430\u0445, \u043d\u043e \u0441\u0430\u043c\u044b\u0439 \u0434\u043b\u0438\u043d\u043d\u044b\u0439 \u0442\u0430\u043a\u0442 TCK \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0434\u043e 20 \u0446\u0438\u043a\u043b\u043e\u0432 \u2014 \u043a\u0430\u043a \u0437\u0430 \u0441\u0447\u0451\u0442 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440\u0430 \u0444\u0440\u043e\u043d\u0442\u0430, \u0442\u0430\u043a \u0438 \u0437\u0430 \u0441\u0447\u0451\u0442 \u043f\u0435\u0440\u0435\u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u043b\u0443\u0442\u0430\u043a\u0442\u0430\u043c\u0438.<\/p>\n<details class=\"spoiler\">\n<summary>\u041f\u043e\u043b\u043d\u044b\u0439 \u043a\u043e\u0434<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"assembly\"> ;        ====== MACRO, CONST and DEF ======  #define JUMP_TO rjmp  #define INSTR_REG  r18 #define DATA_REG0  r19 #define DATA_REG1  r20 #define DATA_REG2  r21 #define DATA_REG3  r22  #define BOUNDARY0  r23 #define BOUNDARY1  r24  #define ZERO_REG   r25 #define SW_DR_LREG r26 #define SW_DR_HREG r27  .equ JTMS_POS  = 2 .equ JTMS_MASK = (1 &lt;&lt; JTMS_POS) .equ JTMS_PORT = PIND .equ JTMS_DDR  = DDRD  .equ JTCK_POS  = 3 .equ JTCK_MASK = (1 &lt;&lt; JTCK_POS) .equ JTCK_PORT = PIND .equ JTCK_DDR  = DDRD  .equ JTDI_POS  = 4 .equ JTDI_MASK = (1 &lt;&lt; JTDI_POS) .equ JTDI_PORT = PIND .equ JTDI_DDR  = DDRD  .equ JTDO_POS  = 5 .equ JTDO_MASK = (1 &lt;&lt; JTDO_POS) .equ JTDO_PORT = PORTD .equ JTDO_DDR  = DDRD  .equ INSTR_LENGTH = 3 .equ INSTR_IDCODE = 0x01 .equ INSTR_EXTEST = 0x02 .equ INSTR_BYPASS = 0x07 .equ INSTR_SAMPLE = 0x04  .equ IDCODE0 = 0x3F .equ IDCODE1 = 0x00 .equ IDCODE2 = 0xFE .equ IDCODE3 = 0xCA  .macro INIT_MAIN_CLK    ; .endm .macro INIT_REG   ldi ZERO_REG, 0   ldi SW_DR_LREG, low(switch_dr_label)   ldi SW_DR_HREG, high(switch_dr_label) .endm .macro INIT_JTMS    cbi JTMS_DDR, JTMS_POS .endm .macro INIT_JTCK    cbi JTCK_DDR, JTCK_POS .endm .macro INIT_JTDI    cbi JTDI_DDR, JTDI_POS .endm .macro INIT_JTDO    cbi JTDO_DDR, JTDO_POS ; TDO starts in HiZ  .endm .macro INIT_GPIO    cbi DDRB,  4    cbi PORTB, 4    sbi DDRB,  5    cbi PORTB, 5 .endm .macro WAIT_JTCK_RISE   rise_edge:   sbis JTCK_PORT, JTCK_POS   rjmp rise_edge .endm .macro WAIT_JTCK_FALL   fall_edge:   sbic JTCK_PORT, JTCK_POS   rjmp fall_edge .endm .macro JTDO_HIZ    cbi JTDO_DDR,  JTDO_POS    cbi JTDO_PORT, JTDO_POS .endm .macro JTDO_PP    sbi JTDO_DDR, JTDO_POS .endm .macro JTDO_DR_OUT   bst DATA_REG0, 0   in  r16, JTDO_PORT   bld r16, JTDO_POS   out JTDO_PORT, r16 .endm .macro SHIFT_IDCODE   in  r16, JTDI_PORT   bst r16, JTDI_POS    ror DATA_REG3   ror DATA_REG2   ror DATA_REG1   ror DATA_REG0   bld DATA_REG3, 7 .endm .macro SHIFT_BYPASS   in  r16, JTDI_PORT   bst r16, JTDI_POS    ror DATA_REG0   bld DATA_REG0, 0 .endm .macro SHIFT_SAMPLE   in  r16, JTDI_PORT   bst r16, JTDI_POS    ror DATA_REG2   ror DATA_REG1   ror DATA_REG0   bld DATA_REG2, 7 .endm .macro SHIFT_EXTEST   in  r16, JTDI_PORT   bst r16, JTDI_POS    ror DATA_REG2   ror DATA_REG1   ror DATA_REG0   bld DATA_REG2, 7 .endm .macro JTDO_IR_OUT   bst INSTR_REG, 0    in  r16, JTDO_PORT   bld r16, JTDO_POS   out JTDO_PORT, r16 .endm .macro SHIFT_INSTR   in  r16, JTDI_PORT   bst r16, JTDI_POS    ror INSTR_REG   bld INSTR_REG, (INSTR_LENGTH - 1) .endm .macro UPDATE_INSTR   ldi r16, 0b00000111   and INSTR_REG, r16 .endm .macro CHECK_JTMS    sbic JTMS_PORT, JTMS_POS .endm .macro LOAD_IDCODE   ldi DATA_REG0, IDCODE0   ldi DATA_REG1, IDCODE1   ldi DATA_REG2, IDCODE2   ldi DATA_REG3, IDCODE3 .endm .macro LOAD_BYPASS   ldi DATA_REG0, 0 .endm .macro LOAD_SAMPLE   in DATA_REG2, PINB .endm .macro LOAD_EXTEST   in DATA_REG2, PINB .endm .macro LOAD_INSTR   ldi INSTR_REG, INSTR_IDCODE .endm .macro INSTR_SWITCH_DR   movw ZH:ZL, SW_DR_HREG:SW_DR_LREG   add ZL, INSTR_REG   adc ZH, ZERO_REG   ijmp .endm .macro UPDATE_BOUNDARY   mov BOUNDARY0, DATA_REG0   mov BOUNDARY1, DATA_REG1 .endm .macro SET_OUTPUT   out PORTB, BOUNDARY0   out DDRB,  BOUNDARY1 .endm .macro INIT_ALL   INIT_MAIN_CLK   INIT_REG   INIT_JTMS   INIT_JTCK   INIT_JTDI   INIT_JTDO   INIT_GPIO .endm  ;        ====== JTAG LOGIC ======  reset:   INIT_ALL    TEST_LOGIC_RESET:     WAIT_JTCK_FALL       LOAD_INSTR   JTDO_HIZ WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO TEST_LOGIC_RESET       JUMP_TO RUN_TEST_IDLE   RUN_TEST_IDLE: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_DR       JUMP_TO RUN_TEST_IDLE   SELECT_DR: WAIT_JTCK_FALL   INSTR_SWITCH_DR       switch_dr_label:   JUMP_TO SELECT_DR_BYPASS \/\/ default    (code = 0)   JUMP_TO SELECT_DR_IDCODE \/\/ inctruction code = 1 IDCODE   JUMP_TO SELECT_DR_EXTEST \/\/ inctruction code = 2 EXTEST   JUMP_TO SELECT_DR_SAMPLE \/\/ inctruction code = 3 SAMPLE   JUMP_TO SELECT_DR_BYPASS \/\/ default    (code = 4)    JUMP_TO SELECT_DR_BYPASS \/\/ default    (code = 5)   JUMP_TO SELECT_DR_BYPASS \/\/ default    (code = 6)   JUMP_TO SELECT_DR_BYPASS \/\/ inctruction code = 7 BYPASS   SELECT_DR_IDCODE: WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_IDCODE   SELECT_DR_BYPASS: WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_BYPASS   SELECT_DR_SAMPLE: WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_SAMPLE   SELECT_DR_EXTEST: WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_IR       JUMP_TO CAPTURE_DR_EXTEST  \/\/ === IDCODE branch ===   CAPTURE_DR_IDCODE: WAIT_JTCK_FALL   LOAD_IDCODE WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT1_DR_IDCODE       JUMP_TO SHIFT_DR_IDCODE   SHIFT_DR_IDCODE:       JTDO_PP WAIT_JTCK_FALL   JTDO_DR_OUT WAIT_JTCK_RISE   SHIFT_IDCODE     CHECK_JTMS       JUMP_TO EXIT1_DR_IDCODE       JUMP_TO SHIFT_DR_IDCODE   EXIT1_DR_IDCODE: WAIT_JTCK_FALL   JTDO_HIZ WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_IDCODE       JUMP_TO PAUSE_DR_IDCODE   PAUSE_DR_IDCODE: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT2_DR_IDCODE       JUMP_TO PAUSE_DR_IDCODE   EXIT2_DR_IDCODE: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_IDCODE       JUMP_TO SHIFT_DR_IDCODE   UPDATE_DR_IDCODE: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_DR       JUMP_TO RUN_TEST_IDLE  \/\/ === BYPASS branch ===   CAPTURE_DR_BYPASS: WAIT_JTCK_FALL   LOAD_BYPASS WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT1_DR_BYPASS       JUMP_TO SHIFT_DR_BYPASS   SHIFT_DR_BYPASS:       JTDO_PP WAIT_JTCK_FALL   JTDO_DR_OUT WAIT_JTCK_RISE   SHIFT_BYPASS     CHECK_JTMS       JUMP_TO EXIT1_DR_BYPASS       JUMP_TO SHIFT_DR_BYPASS   EXIT1_DR_BYPASS: WAIT_JTCK_FALL       JTDO_HIZ WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_BYPASS       JUMP_TO PAUSE_DR_BYPASS   PAUSE_DR_BYPASS: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT2_DR_BYPASS       JUMP_TO PAUSE_DR_BYPASS   EXIT2_DR_BYPASS: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_BYPASS       JUMP_TO SHIFT_DR_BYPASS   UPDATE_DR_BYPASS: WAIT_JTCK_FALL WAIT_JTCK_RISE;     CHECK_JTMS       JUMP_TO SELECT_DR       JUMP_TO RUN_TEST_IDLE  \/\/ === SAMPLE branch ===   CAPTURE_DR_SAMPLE: WAIT_JTCK_FALL   LOAD_SAMPLE WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT1_DR_SAMPLE       JUMP_TO SHIFT_DR_SAMPLE   SHIFT_DR_SAMPLE:       JTDO_PP WAIT_JTCK_FALL;   JTDO_DR_OUT WAIT_JTCK_RISE;   SHIFT_SAMPLE     CHECK_JTMS       JUMP_TO EXIT1_DR_SAMPLE       JUMP_TO SHIFT_DR_SAMPLE   EXIT1_DR_SAMPLE: WAIT_JTCK_FALL       JTDO_HIZ WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_SAMPLE       JUMP_TO PAUSE_DR_SAMPLE   PAUSE_DR_SAMPLE: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT2_DR_SAMPLE       JUMP_TO PAUSE_DR_SAMPLE   EXIT2_DR_SAMPLE: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_SAMPLE       JUMP_TO SHIFT_DR_SAMPLE   UPDATE_DR_SAMPLE: WAIT_JTCK_FALL   UPDATE_BOUNDARY WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_DR       JUMP_TO RUN_TEST_IDLE \/\/ === EXTEST branch ===   CAPTURE_DR_EXTEST: WAIT_JTCK_FALL   LOAD_EXTEST WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT1_DR_EXTEST       JUMP_TO SHIFT_DR_EXTEST   SHIFT_DR_EXTEST:       JTDO_PP WAIT_JTCK_FALL   JTDO_DR_OUT WAIT_JTCK_RISE       SHIFT_EXTEST     CHECK_JTMS       JUMP_TO EXIT1_DR_EXTEST       JUMP_TO SHIFT_DR_EXTEST   EXIT1_DR_EXTEST: WAIT_JTCK_FALL       JTDO_HIZ WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_EXTEST       JUMP_TO PAUSE_DR_EXTEST   PAUSE_DR_EXTEST: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT2_DR_EXTEST       JUMP_TO PAUSE_DR_EXTEST   EXIT2_DR_EXTEST: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_DR_EXTEST       JUMP_TO SHIFT_DR_EXTEST   UPDATE_DR_EXTEST: WAIT_JTCK_FALL   UPDATE_BOUNDARY   SET_OUTPUT WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_DR       JUMP_TO RUN_TEST_IDLE   SELECT_IR: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO TEST_LOGIC_RESET       JUMP_TO CAPTURE_IR   CAPTURE_IR: WAIT_JTCK_FALL WAIT_JTCK_RISE LOAD_INSTR     CHECK_JTMS       JUMP_TO EXIT1_IR       JUMP_TO SHIFT_IR   SHIFT_IR:       JTDO_PP WAIT_JTCK_FALL       JTDO_IR_OUT WAIT_JTCK_RISE   SHIFT_INSTR     CHECK_JTMS       JUMP_TO EXIT1_IR       JUMP_TO SHIFT_IR   EXIT1_IR: WAIT_JTCK_FALL   JTDO_HIZ WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_IR       JUMP_TO PAUSE_IR   PAUSE_IR: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO EXIT2_IR       JUMP_TO PAUSE_IR   EXIT2_IR: WAIT_JTCK_FALL WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO UPDATE_IR       JUMP_TO SHIFT_IR   UPDATE_IR: WAIT_JTCK_FALL   UPDATE_INSTR WAIT_JTCK_RISE     CHECK_JTMS       JUMP_TO SELECT_DR       JUMP_TO RUN_TEST_IDLE <\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p> \u041a\u043e\u0434 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0434\u0432\u0443\u0445 \u0431\u043b\u043e\u043a\u043e\u0432.<br \/>\u0412 \u043f\u0435\u0440\u0432\u043e\u043c \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442 \u043c\u0430\u043a\u0440\u043e\u0441\u044b, \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432 AVR.<br \/>\u0412\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442\u0441\u044f \u043b\u043e\u0433\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u043c\u043e\u0434\u0443\u043b\u044f JTAG.<\/p>\n<p> \u0422\u043e \u0435\u0441\u0442\u044c \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0435 \u043d\u0430\u0434\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043c\u0430\u043a\u0440\u043e\u0441\u044b.<\/p>\n<h2> \u041c\u0438\u0433\u0430\u044e\u0449\u0438\u0439 \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434<\/h2>\n<p> \u0421\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u0443\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0439 \u043a\u043e\u0434, \u0437\u0430\u043f\u0438\u0448\u0435\u043c \u0435\u0433\u043e \u0432 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440, \u0438 \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \u0432 TopJTAG\u00a0Probe, \u043a\u0430\u043a \u043e\u043f\u0438\u0441\u0430\u043d\u043e <a href=\"https:\/\/habr.com\/ru\/articles\/658477\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<p> \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u043c \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0444\u0430\u0439\u043b BSDL. \u041e \u0435\u0433\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043d\u043e \u0432 <a href=\"https:\/\/habr.com\/ru\/articles\/660795\/\" rel=\"noopener noreferrer nofollow\">\u044d\u0442\u043e\u0439<\/a> \u0441\u0442\u0430\u0442\u044c\u0435. \u0417\u0434\u0435\u0441\u044c \u043c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u0444\u0430\u0439\u043b BSDL, \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043c \u0435\u0433\u043e \u0432 \u043f\u0440\u043e\u0435\u043a\u0442 TopJTAG\u00a0Probe.<\/p>\n<details class=\"spoiler\">\n<summary>\u0424\u0430\u0439\u043b BSDL \u0434\u043b\u044f Arduino<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"assembly\">entity ARDUINO is generic (PHYSICAL_PIN_MAP : string); port  ( TMS: in  bit;                 TCK: in  bit; TDI: in  bit; TDO: out bit; VCC: linkage bit_vector(0 to 1); GND: linkage bit_vector(0 to 1);                 LED: out bit;                 BTN: in  bit; NC:  linkage bit_vector(0 to 9) ); use STD_1149_1_2001.all; attribute COMPONENT_CONFORMANCE of ARDUINO : entity is \"STD_1149_1_2001\"; attribute PIN_MAP of ARDUINO : entity is PHYSICAL_PIN_MAP; constant  SO28:PIN_MAP_STRING:= \"TMS:4, \" &amp; \"TCK:5, \" &amp; \"TDI:6, \" &amp; \"TDO:11,\" &amp; \"VCC:(7,20), \" &amp; \"GND:(8,22), \" &amp; \"LED:19,\" &amp; \"BTN:18,\" &amp; \"NC:(1,2,3,9,10,12,13,14,15,16,17,21,23,24,25,26,27,28) \"; attribute TAP_SCAN_MODEof TMS : signal is true; attribute TAP_SCAN_INof TDI : signal is true; attribute TAP_SCAN_CLOCKof TCK : signal is (10.0e3, BOTH); attribute TAP_SCAN_OUTof TDO : signal is true; attribute INSTRUCTION_LENGTH of ARDUINO : entity is 3; attribute INSTRUCTION_OPCODE of ARDUINO : entity is \"IDCODE (001),\" &amp; \"EXTEST (010),\" &amp; \"SAMPLE (011),\" &amp; \"BYPASS (111)\"; attribute INSTRUCTION_CAPTURE of ARDUINO : entity is \"00000001\"; attribute IDCODE_REGISTER of ARDUINO : entity is \"1100\" &amp; \"1010111111100000\" &amp;  \"00000011111\" &amp;       \"1\"; attribute REGISTER_ACCESS of ARDUINO : entity is \"DEVICE_ID (IDCODE),\" &amp; \"BYPASS   (BYPASS),\" &amp; \"BOUNDARY  (EXTEST, SAMPLE)\"; attribute BOUNDARY_LENGTH of ARDUINO : entity is 24; attribute BOUNDARY_REGISTER of ARDUINO : entity is \"0   (BC_4, *,  internal, X),\" &amp; \"1   (BC_4, *,  internal, X),\" &amp; \"2   (BC_4, *,  internal, X),\" &amp; \"3   (BC_4, *,  internal, X),\" &amp; \"4   (BC_4, *,  internal, X),\" &amp; \"5   (BC_1, LED, output3, X, 13, 0, Z),\" &amp; -- out PORTB5 push-pull \"6   (BC_4, *,  internal, X),\" &amp; \"7   (BC_4, *,  internal, X),\" &amp; \"8   (BC_4, *,  internal, 0),\" &amp; \"9   (BC_4, *,  internal, 0),\" &amp; \"10  (BC_4, *,  internal, 0),\" &amp; \"11  (BC_4, *,  internal, 0),\" &amp; \"12  (BC_4, *,  internal, 0),\" &amp; \"13  (BC_1, *,   control, 1),\" &amp;           -- out PORTB5 HiZ \"14  (BC_4, *,  internal, 0),\" &amp; \"15  (BC_4, *,  internal, 0),\" &amp; \"16  (BC_4, *,  internal, X),\" &amp; \"17  (BC_4, *,  internal, X),\" &amp; \"18  (BC_4, *,  internal, X),\" &amp; \"19  (BC_4, *,  internal, X),\" &amp; \"20  (BC_1, BTN,   input, X),\" &amp;           -- in PORTB4 \"21  (BC_4, *,  internal, X),\" &amp; \"22  (BC_4, *,  internal, X),\" &amp; \"23  (BC_4, *,  internal, X)\" ; end ARDUINO;<\/code><\/pre>\n<\/p>\n<\/div>\n<\/details>\n<p> \u0414\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0443 \u0444\u0430\u0439\u043b\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0442\u0438\u043f\u0438\u0447\u043d\u0430\u044f, \u043d\u043e \u0432\u043f\u043e\u043b\u043d\u0435 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u0430\u044f \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044c. \u041e\u0431\u044b\u0447\u043d\u043e \u0432 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u043e\u043a\u0438 \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0432\u044b\u0432\u043e\u0434\u0430 \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 (\u0438\u0434\u0443\u0442 \u0434\u0440\u0443\u0433 \u0437\u0430 \u0434\u0440\u0443\u0433\u043e\u043c).<\/p>\n<pre><code class=\"cpp\">attribute BOUNDARY_REGISTER of ARDUINO : entity is   &lt;...>   \"16   (BC_1, LED, output3, X, 17, 0, Z),\" &amp;  -- \u0432\u044b\u0445\u043e\u0434 PORTB5 push-pull    \"17   (BC_1, *,   control, 1),\" &amp;            -- \u0432\u044b\u0445\u043e\u0434 PORTB5 HiZ   \"18   (BC_1, BTN,   input, X),\" &amp;            -- \u0432\u0445\u043e\u0434  PORTB4   &lt;...><\/code><\/pre>\n<p> \u0423 \u043d\u0430\u0441 \u0436\u0435, \u0432\u0432\u0438\u0434\u0443 \u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430 \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b PORTB, DDRB \u0438 PINB, \u0433\u0440\u0443\u043f\u043f\u0438\u0440\u043e\u0432\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u043c:<\/p>\n<ul>\n<li>\n<p> \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0442\u0440\u043e\u043a\u0438, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0432\u044b\u0432\u043e\u0434\u0430 \u0432 \u043f\u043e\u0440\u0442\u0435<\/p>\n<\/li>\n<li>\n<p> \u0437\u0430\u0442\u0435\u043c \u0441\u0442\u0440\u043e\u043a\u0438, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u044b\u0432\u043e\u0434\u043e\u0432<\/p>\n<\/li>\n<li>\n<p> \u0438 \u0432 \u043a\u043e\u043d\u0446\u0435 \u0441\u0442\u0440\u043e\u043a\u0438, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u0447\u0442\u0435\u043d\u0438\u0435 \u0432\u044b\u0432\u043e\u0434\u0430\u043c\u0438 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432<\/p>\n<\/li>\n<\/ul>\n<p> \u0422\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 JTAG \u0441 Arduino \u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 500 \u043a\u0413\u0446 \u0438 \u043f\u043e\u043c\u0438\u0433\u0430\u0442\u044c \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u043c:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/bb2\/013\/142\/bb2013142e5d801acb0e1c968bb49f79.png\" width=\"1200\" height=\"800\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/bb2\/013\/142\/bb2013142e5d801acb0e1c968bb49f79.png\"\/><\/figure>\n<p>\u041f\u043e\u043b\u044c\u0437\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0432\u0435\u0441\u044c\u043c\u0430 \u0434\u0438\u0441\u043a\u0443\u0441\u0441\u0438\u043e\u043d\u043d\u0430. \u041d\u043e, \u043f\u043e\u0436\u0430\u043b\u0443\u0439, \u044d\u0442\u043e \u0441\u0430\u043c\u0430\u044f \u0431\u044b\u0441\u0442\u0440\u0430\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f JTAG \u043d\u0430 Arduino.<\/p>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/815947\/\"> https:\/\/habr.com\/ru\/articles\/815947\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><\/figure>\n<ol>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/post\/658477\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/post\/660795\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: *.bsdl \u0441\u0432\u043e\u0438\u043c\u0438 \u0440\u0443\u043a\u0430\u043c\u0438<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/habr.com\/ru\/articles\/663560\/\" rel=\"noopener noreferrer nofollow\">\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0447\u0442\u043e \u0432\u043d\u0443\u0442\u0440\u0438?<\/a><\/p>\n<\/li>\n<li>\n<p>\u0420\u0430\u0437\u0433\u043b\u044f\u0434\u044b\u0432\u0430\u044f JTAG: \u0441\u0430\u043c\u044b\u0439 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 JTAG \u043d\u0430 Arduino<\/p>\n<\/li>\n<\/ol>\n<p> \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0445 \u0441\u0442\u0430\u0442\u044c\u044f\u0445 \u0446\u0438\u043a\u043b\u0430 \u0431\u044b\u043b \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0435\u0434\u043e\u043c\u043e\u0433\u043e \u043c\u043e\u0434\u0443\u043b\u044f JTAG \u043d\u0430 Verilog. \u042f \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u043b, \u0447\u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432, \u0437\u043d\u0430\u044e\u0449\u0438\u0445 Verilog, \u043c\u0435\u043d\u044c\u0448\u0435, \u0447\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u044b JTAG. \u041f\u043e\u044d\u0442\u043e\u043c\u0443, \u043f\u043e\u043c\u0438\u043c\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 Verilog, \u043c\u043e\u0434\u0443\u043b\u044c JTAG \u0431\u044b\u043b \u0442\u0430\u043a\u0436\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d \u043d\u0430 \u0421\u0438.<\/p>\n<p> \u0422\u0430\u043a \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u0421\u0438 \u043f\u0440\u0435\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043b\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0446\u0435\u043b\u044c, \u0442\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0435\u0451 \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u044b\u043b\u0430 \u043f\u0440\u0438\u043d\u0435\u0441\u0435\u043d\u0430 \u0432 \u0436\u0435\u0440\u0442\u0432\u0443 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u0434\u0445\u043e\u0434\u043e\u0432 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043d\u0430 Verilog. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0431\u044b\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0434\u0438\u0432\u043b\u0451\u043d, \u043a\u043e\u0433\u0434\u0430 \u0432 \u043b\u0438\u0447\u043d\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438 <a class=\"mention\" href=\"\/users\/sergei2405\">@Sergei2405<\/a> \u0441\u043f\u0440\u043e\u0441\u0438\u043b, \u043d\u0435\u0442 \u043b\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430 \u0443\u0441\u043a\u043e\u0440\u0438\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u0434\u043b\u044f \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u043e\u0434 \u0432 \u043f\u0440\u043e\u043c\u044b\u0448\u043b\u0435\u043d\u043d\u043e\u043c \u0438\u0437\u0434\u0435\u043b\u0438\u0438.<\/p>\n<p> \u0421\u0443\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u043e, \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e JTAG \u043c\u043d\u0435 \u043f\u043e\u2011\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0432\u0438\u0434\u0438\u0442\u0441\u044f \u043d\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u043e\u043f\u0440\u0430\u0432\u0434\u0430\u043d\u043d\u044b\u043c. <br \/> \u041d\u043e, \u0432\u043e\u2011\u043f\u0435\u0440\u0432\u044b\u0445, \u044d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u0438\u0439 \u043f\u043e\u0432\u043e\u0434 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u0432. <br \/> \u0410 \u0432\u043e\u2011\u0432\u0442\u043e\u0440\u044b\u0445, \u0435\u0441\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0420\u0435\u0448\u0435\u043d\u0438\u0435 \u041f\u0440\u0438\u043a\u043b\u0430\u0434\u043d\u043e\u0439 \u0417\u0430\u0434\u0430\u0447\u0438 \ud83d\ude42<\/p>\n<p> \u0418\u0442\u0430\u043a, \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u043c\u044b \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043f\u0440\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f, \u043f\u043e\u043b\u043b\u0438\u043d\u0433 \u0438 \u043f\u0440\u043e\u0447\u0435\u0435. \u0410 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b JTAG \u0441\u0442\u0430\u043d\u0435\u0442 \u0444\u043e\u043d\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0432\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p> \u0423 \u0440\u044f\u0434\u0430 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e \u0445\u043e\u0434\u0443 \u0441\u0442\u0430\u0442\u044c\u0438 \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441: \u00ab\u0442\u0430\u043a \u043b\u0438 \u0443\u0436 \u043d\u0430\u0434\u043e \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u043d\u044b\u0435 \u0446\u0438\u043a\u043b\u044b \u0432 \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0435 \u0442\u0440\u0435\u0442\u044c\u0435\u0433\u043e \u0434\u0435\u0441\u044f\u0442\u0438\u043b\u0435\u0442\u0438\u044f XXI \u0432\u0435\u043a\u0430?\u00bb \u0422\u0430\u043a\u0430\u044f \u043f\u043e\u0442\u0440\u0435\u0431\u043d\u043e\u0441\u0442\u044c \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0430\u0441\u0442\u043e\u0439, \u043d\u043e \u0435\u0441\u0442\u044c \u043a\u043b\u0430\u0441\u0441 \u0437\u0430\u0434\u0430\u0447, \u0433\u0434\u0435 \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u043b\u0438\u043a\u0430. \u041f\u0440\u0438\u0447\u0451\u043c \u044d\u0442\u043e\u0442 \u043e\u0442\u043a\u043b\u0438\u043a \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c, \u0441\u043a\u0430\u0436\u0435\u043c \u0442\u0430\u043a, \u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c.<\/p>\n<p> \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 \u0437\u0430\u0434\u0430\u0447 \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043e\u0439 \u043f\u043e\u0434\u0441\u0447\u0451\u0442\u0443 \u0446\u0438\u043a\u043b\u043e\u0432 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u041f\u041b\u0418\u0421. \u0421\u0443\u0431\u044a\u0435\u043a\u0442\u0438\u0432\u043d\u043e, \u044f \u0431\u044b \u0441\u043a\u0430\u0437\u0430\u043b, \u0447\u0442\u043e \u0438\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u0442\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c. \u041d\u043e \u00ab\u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u00bb \u041f\u041b\u0418\u0421 \u0434\u0430\u0451\u0442\u0441\u044f \u0434\u043e\u0440\u043e\u0433\u043e\u0439 \u0446\u0435\u043d\u043e\u0439. \u041a\u0430\u0436\u0434\u044b\u0439 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442 \u2014 \u044d\u0442\u043e \u0441\u043e\u0442\u043d\u0438 \u0438 \u0442\u044b\u0441\u044f\u0447\u0438 \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Stratix\u00a010 <a href=\"https:\/\/www.tomshardware.com\/news\/intel-introduces-worlds-largest-fpga-with-433-billion-transistors\" rel=\"noopener noreferrer nofollow\">\u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442<\/a> \u0434\u043e 10,2\u00a0\u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432, \u0438 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0438\u0437 43300\u00a0\u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432.<\/p>\n<p> \u0412 \u0442\u043e\u0436\u0435 \u0432\u0440\u0435\u043c\u044f \u00ab\u0438\u043d\u0442\u0435\u043b\u043b\u0435\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u00bb \u043b\u044e\u0431\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b. \u0410 \u043e\u043d\u0430 \u2014 \u0432\u043e \u043c\u043d\u043e\u0433\u043e\u043c \u043e\u0442 \u043e\u0431\u044a\u0451\u043c\u0430 \u043f\u0430\u043c\u044f\u0442\u0438. \u042d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0440\u043d\u0430\u044f \u044f\u0447\u0435\u0439\u043a\u0430 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u2014 \u044d\u0442\u043e \u0432\u0441\u0435\u0433\u043e \u0448\u0435\u0441\u0442\u044c \u0442\u0440\u0430\u043d\u0437\u0438\u0441\u0442\u043e\u0440\u043e\u0432.<br \/> \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0435 \u0443\u0434\u0438\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Texas Instruments \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0438 \u043b\u0438\u043d\u0435\u0439\u043a\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 <a href=\"http:\/\/ti.com\/lit\/gpn\/AM4376\" rel=\"noopener noreferrer nofollow\">Sitara\u00a0AM437x<\/a>, \u043e\u0440\u0438\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0412 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430\u0445 \u043f\u043e\u043c\u0438\u043c\u043e \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0433\u043e \u044f\u0434\u0440\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043d\u0430 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u0432 1000\u00a0\u041c\u0413\u0446, \u0435\u0441\u0442\u044c \u0434\u0432\u0430 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u044f\u0434\u0440\u0430 PRU (Programmable Real\u2011time Unit). \u041e\u043d\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435\u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 200 \u041c\u0413\u0446, \u043d\u043e \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442 \u0440\u043e\u0432\u043d\u043e \u043e\u0434\u043d\u0443 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u044e \u0437\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0446\u0438\u043a\u043b. \u0427\u0442\u043e\u0431\u044b \u043d\u0435 \u0431\u044b\u043b\u043e \u0438\u043b\u043b\u044e\u0437\u0438\u0439 \u0432 \u043f\u043b\u0430\u043d\u0435 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u0438, \u0441\u0442\u0430\u0442\u044c\u044f <a href=\"http:\/\/ti.com\/lit\/pdf\/spry264\" rel=\"noopener noreferrer nofollow\">Ensuring\u00a0real\u2011time\u00a0predictability<\/a>, \u0432\u044b\u043f\u0443\u0449\u0435\u043d\u043d\u0430\u044f Texas Instruments, \u043a\u0430\u043a \u0440\u0430\u0437 \u043f\u0440\u043e \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b.<\/p>\n<p> \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u044f \u0440\u0435\u0448\u0438\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0430\u043c\u0443\u044e \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0451\u043d\u043d\u0443\u044e \u0434\u0435\u043c\u043e\u2011\u043f\u043b\u0430\u0442\u0443 \u0432 \u043c\u0438\u0440\u0435 \u2014 Arduino. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u044b\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u043e\u043c \u0441\u0442\u0430\u043d\u0435\u0442 ATmega328P, \u043d\u0435 \u0438\u043c\u0435\u044e\u0449\u0438\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 JTAG.<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0422\u0430\u043a \u043a\u0430\u043a \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u043f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430, \u0442\u043e \u0441\u0440\u0435\u0434\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435 Arduino\u00a0IDE, \u0430 Microchip\u00a0Studio.<\/p>\n<details class=\"spoiler\">\n<summary>\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Arduino \u0441\u0440\u0435\u0434\u0443 Microchip\u00a0Studio \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0433\u043a\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c<\/summary>\n<div class=\"spoiler__content\">\n<p> \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043d\u0430\u043c \u043d\u0430\u0434\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u043e\u043c\u0435\u0440 COM\u2011\u043f\u043e\u0440\u0442\u0430 \u043d\u0430\u0448\u0435\u0433\u043e Arduino. \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e COM38:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 avrdude. \u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043e\u043d\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u044b AVR \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u0442\u043d\u0438 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u043e\u0432. \u0415\u0451 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c <a href=\"https:\/\/github.com\/avrdudes\/avrdude\/releases\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c<\/a>. \u0412 \u0430\u0440\u0445\u0438\u0432\u0435 \u0441 \u0440\u0435\u043b\u0438\u0437\u043e\u043c \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u0440\u0438 \u0444\u0430\u0439\u043b\u0430, \u0438\u0445 \u043d\u0430\u0434\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 \u043a\u0430\u043a\u0443\u044e\u2011\u043d\u0438\u0431\u0443\u0434\u044c \u043f\u0430\u043f\u043a\u0443. \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e C:\\Program Files\u00a0(x86)\\Atmel\\avrdude\\<\/p>\n<p> \u0422\u0435\u043f\u0435\u0440\u044c \u0432 \u0441\u0440\u0435\u0434\u0435 <a href=\"https:\/\/www.microchip.com\/en-us\/tools-resources\/develop\/microchip-studio\" rel=\"noopener noreferrer nofollow\">Microchip\u00a0Studio<\/a> \u0441\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435.<br \/> \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u0432 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u043c\u0435\u043d\u044e \u0424\u0430\u0439\u043b\u2192\u0421\u043e\u0437\u0434\u0430\u0442\u044c\u2192\u041f\u0440\u043e\u0435\u043a\u0442 \u0438 \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0436\u0435\u043c \u0442\u0438\u043f \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Assembler:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u041e\u041a \u0438 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0436\u0435\u043c \u0441\u0435\u043c\u0435\u0439\u0441\u0442\u0432\u043e \u0438 \u043c\u0430\u0440\u043a\u0443 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0417\u0430\u0442\u0435\u043c \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u0432 \u0433\u043b\u0430\u0432\u043d\u043e\u043c \u043c\u0435\u043d\u044e \u043f\u0443\u043d\u043a\u0442 \u0421\u0435\u0440\u0432\u0438\u0441\u2192\u0412\u043d\u0435\u0448\u043d\u0438\u0435\u00a0\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0412 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0443\u043a\u0430\u0436\u0435\u043c:<\/p>\n<ul>\n<li>\n<p> \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430<\/p>\n<\/li>\n<li>\n<p> \u043f\u0443\u0442\u044c \u043a *.exe. \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e C:\\Program Files\u00a0(x86)\\Atmel\\avrdude\\avrdude.exe<\/p>\n<\/li>\n<li>\n<p> \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b (\u043c\u0430\u0440\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u0430, \u043c\u0430\u0440\u043a\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u0438\u043c\u044f COM\u2011\u043f\u043e\u0440\u0442\u0430, \u0431\u0438\u0442\u0440\u0435\u0439\u0442, \u043e\u0442\u043a\u0443\u0434\u0430 \u0431\u0440\u0430\u0442\u044c \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443). \u0423 \u043c\u0435\u043d\u044f \u044d\u0442\u043e  \u00ab-c arduino -p atmega328p -P COM38 -b 115200 -U flash:w:$(TargetName).hex\u00bb<\/p>\n<\/li>\n<li>\n<p> \u043f\u0443\u0442\u044c \u043a \u043f\u0430\u043f\u043a\u0435 \u0441 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u043c \u2014 $(TargetDir)<\/p>\n<\/li>\n<li>\n<p> \u00ab\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u043a\u043d\u043e \u0432\u044b\u0432\u043e\u0434\u0430\u00bb \u2014 \u0441\u0442\u0430\u0432\u0438\u043c \u0433\u0430\u043b\u043a\u0443<\/p>\n<\/li>\n<\/ul>\n<figure class=\"full-width\"><\/figure>\n<p> \u041d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u041e\u041a. \u041d\u0430\u0434 \u043f\u0443\u043d\u043a\u0442\u043e\u043c \u00ab\u0412\u043d\u0435\u0448\u043d\u0438\u0435\u00a0\u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b\u00bb \u0432 \u043c\u0435\u043d\u044e \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043f\u0443\u043d\u043a\u0442 \u00abArduino\u00bb.<\/p>\n<p> \u0421\u043e\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442, \u043d\u0430\u0436\u0430\u0432 \u0421\u0431\u043e\u0440\u043a\u0430\u2192\u0421\u043e\u0431\u0440\u0430\u0442\u044c \u0440\u0435\u0448\u0435\u043d\u0438\u0435 (\u043b\u0438\u0431\u043e \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c F7). \u0418 \u043f\u0440\u043e\u0448\u0438\u0432\u0430\u0435\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043f\u0443\u043d\u043a\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e \u0421\u0435\u0440\u0432\u0438\u0441\u2192Arduino:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0415\u0441\u043b\u0438 \u043c\u044b \u0432\u0441\u0451 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u0432\u0435\u0440\u043d\u043e \u0438 \u0441\u0430\u043c Arduino \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d \u043a \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0443, \u0442\u043e \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0438 (\u043c\u043e\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e) \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u043e\u043a\u043d\u0435 \u0432\u044b\u0432\u043e\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u00abavrdude done. Thank you.\u00bb<\/p>\n<\/div>\n<\/details>\n<p> \u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u041f\u041e, \u043d\u0435 \u043b\u0438\u0448\u043d\u0438\u043c \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043c\u0438\u0433\u0430\u0442\u044c \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434\u043e\u043c. \u0423 Arduino \u0441\u0432\u0435\u0442\u043e\u0434\u0438\u043e\u0434 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d \u043a 13\u2011\u043c\u0443 \u0432\u044b\u0432\u043e\u0434\u0443 \u0433\u0440\u0435\u0431\u0451\u043d\u043a\u0438 Digital \u0438\u043b\u0438 \u043a 5\u2011\u043c\u0443 \u0432\u044b\u0432\u043e\u0434\u0443 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u0430\u0437\u043e\u0432\u044b\u043c \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043a\u043e\u0434:<\/p>\n<pre><code class=\"assembly\">.equ LED_POS  = 5 .equ LED_MASK = (1 &lt;&lt; LED_POS) reset:   sbi DDRB, LED_POS   ldi r16,  LED_MASK   ldi r17,  0 loop:   out  PORTB, r16   out  PORTB, r17 rjmp loop<\/code><\/pre>\n<p> \u0414\u0430\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u0442 \u043f\u044f\u0442\u044b\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb \u043a\u0430\u043a \u0432\u044b\u0445\u043e\u0434, \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b \u043e\u0431\u0449\u0435\u0433\u043e \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b (\u043d\u043e\u043b\u044c \u0438 \u0435\u0434\u0438\u043d\u0438\u0446\u0443 \u0432 \u043f\u044f\u0442\u043e\u043c \u0431\u0438\u0442\u0435), \u0430 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u044b. \u041f\u0440\u0438\u0447\u0451\u043c \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0432\u043d\u0430 \u043e\u0434\u043d\u043e\u043c\u0443 (\u043c\u0430\u0448\u0438\u043d\u043d\u043e\u043c\u0443) \u0446\u0438\u043a\u043b\u0443.<\/p>\n<details class=\"spoiler\">\n<summary>\u0415\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u043d\u0435\u0442 \u043e\u0441\u0446\u0438\u043b\u043b\u043e\u0433\u0440\u0430\u0444\u0430, \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u0441\u0430\u043c\u043e\u0433\u043e Arduino, \u043d\u043e \u0445\u043e\u0447\u0435\u0442\u0441\u044f \u043f\u043e\u043f\u0440\u0430\u043a\u0442\u0438\u043a\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u043c\u0438 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u0430\u043c\u0438, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0441\u0438\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u0430 Proteus<\/summary>\n<div class=\"spoiler__content\">\n<p>  \u0421\u043e\u0437\u0434\u0430\u0434\u0438\u043c \u043f\u0440\u043e\u0435\u043a\u0442: \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u043f\u0443\u043d\u043a\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e File\u2192New\u00a0Project, \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0432\u0432\u0435\u0434\u0451\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0438 \u0432\u044b\u0431\u0435\u0440\u0435\u043c \u043f\u0443\u0442\u044c, \u043d\u0430\u0436\u043c\u0451\u043c Next\u2011Next\u2011Next\u2011Next\u2011Finish.<\/p>\n<p> \u041e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u0435 \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0441\u0445\u0435\u043c\u044b. \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043d\u0430 \u043d\u0435\u0433\u043e \u043c\u043e\u0434\u0435\u043b\u044c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 ATmega328P:<\/p>\n<figure class=\"full-width\"><\/figure>\n<ol>\n<li>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 Component Mode<\/p>\n<\/li>\n<li>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u043a\u043d\u043e\u043f\u043a\u0443 Pick Device, \u043e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043e\u043a\u043d\u043e \u043f\u043e\u0438\u0441\u043a\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432<\/p>\n<\/li>\n<li>\n<p> \u0412 \u0441\u0442\u0440\u043e\u043a\u0435 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430 \u0432\u0432\u0435\u0434\u0451\u043c ATmega328P<\/p>\n<\/li>\n<li>\n<p> \u0414\u0432\u0430 \u0440\u0430\u0437\u0430 \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u043c\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443 \u043f\u043e\u0438\u0441\u043a\u0430<\/p>\n<\/li>\n<\/ol>\n<p> \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440 \u043d\u0430 \u0441\u0445\u0435\u043c\u0443:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438, \u0430 \u0437\u0430\u0442\u0435\u043c \u2014 \u043f\u043e \u043f\u043e\u043b\u044e \u0441\u0445\u0435\u043c\u044b. \u0422\u043e\u0433\u0434\u0430 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0438\u0437 \u043a\u0430\u0440\u0430\u043d\u0434\u0430\u0448\u0430 \u043f\u0440\u0435\u0432\u0440\u0430\u0442\u0438\u0442\u0441\u044f \u0432 \u0440\u043e\u0437\u043e\u0432\u044b\u0439 \u043a\u043e\u043d\u0442\u0443\u0440 \u0431\u0443\u0434\u0443\u0449\u0435\u0433\u043e \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430. \u0429\u0451\u043b\u043a\u043d\u0435\u043c \u0432 \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043c\u0435\u0441\u0442\u0435 \u0441\u0445\u0435\u043c\u044b \u0435\u0449\u0451 \u0440\u0430\u0437 \u2014 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442 \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d.<\/p>\n<p> \u0417\u0430\u0442\u0435\u043c \u0434\u0432\u0430\u0436\u0434\u044b \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u0435 \u0438 \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u0432\u043f\u0438\u0448\u0435\u043c \u0432 \u043f\u043e\u043b\u0435 Program File \u043f\u043e\u043b\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u0444\u0430\u0439\u043b\u0443 *.hex, \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c\u0443 \u0438\u0437 \u043a\u043e\u0434\u0430 \u043d\u0430 \u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0435. \u0424\u0430\u0439\u043b \u043b\u0435\u0436\u0438\u0442 \u0432 \u043f\u0430\u043f\u043a\u0435 Debug \u0432\u043d\u0443\u0442\u0440\u0438 \u043f\u0430\u043f\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430.<br \/> \u0410 \u0435\u0449\u0435 \u0432 \u043f\u043e\u043b\u0435 PCB Package \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0442\u0438\u043f \u043a\u043e\u0440\u043f\u0443\u0441\u0430 \u043d\u0430 SPDIL28.<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0414\u043e\u0431\u0430\u0432\u0438\u043c \u0449\u0443\u043f \u0442\u0435\u043c \u0436\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c, \u0447\u0442\u043e \u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0431\u0440\u0430\u0432 \u043d\u0430 \u0431\u043e\u043a\u043e\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438 \u0440\u0430\u0437\u0434\u0435\u043b Probe Mode:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u0449\u0443\u043f \u043d\u0430 5\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb (19\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435), \u043f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0435\u0433\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 Probe1. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u0434\u0432\u0430\u0436\u0434\u044b \u043f\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044e \u0449\u0443\u043f\u0430:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0410\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0441\u0438\u0433\u043d\u0430\u043b\u0430. \u0422\u043e\u0447\u043d\u0435\u0435, \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u043e\u0434\u0438\u043d\u043e\u0447\u043d\u043e\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430 \u0438\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 Generator Mode. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0432 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u043d\u0430 2\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u0440\u0442\u0430 \u00abD\u00bb (4\u2011\u0439 \u0432\u044b\u0432\u043e\u0434 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435)<strong>. <\/strong>\u041f\u043e\u043c\u0435\u043d\u044f\u0435\u043c \u0435\u043c\u0443 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043d\u0430 Edge1, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0432\u0440\u0435\u043c\u044f \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u044f 100.02m:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0417\u0430\u0442\u0435\u043c \u0438\u0437 \u0440\u0430\u0437\u0434\u0435\u043b\u0430 Graph Mode \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0434\u0432\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0430 \u0442\u0438\u043f\u0430 Analogue:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u041d\u0430\u0437\u043d\u0430\u0447\u0438\u043c \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0433\u0440\u0430\u0444\u0438\u043a\u0443. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044e \u0449\u0443\u043f\u0430 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u043c \u0435\u0433\u043e \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0410 \u0437\u0430\u0442\u0435\u043c \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u0433\u0440\u0430\u0444\u0438\u043a\u0443, \u0447\u0442\u043e\u0431\u044b \u043e\u043d \u043e\u0431\u043d\u043e\u0432\u0438\u043b\u0441\u044f:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u041f\u0435\u0440\u0435\u043d\u0435\u0441\u0451\u043c \u0442\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u043a \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0441\u0438\u0433\u043d\u0430\u043b\u0430 Edge1, \u0430 \u0437\u0430\u0442\u0435\u043c \u0434\u0432\u0430\u0436\u0434\u044b \u0449\u0451\u043b\u043a\u043d\u0435\u043c \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0433\u0440\u0430\u0444\u0438\u043a\u0443 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d, \u0432\u0432\u0435\u0434\u044f \u0432 \u043f\u043e\u043b\u0435 Start\u00a0time \u0447\u0438\u0441\u043b\u043e 100m \u0438 \u0432 \u043f\u043e\u043b\u0435 Stop\u00a0time 100.1m:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u044e, \u0432\u044b\u0431\u0440\u0430\u0432 \u043f\u0443\u043d\u043a\u0442 \u0433\u043b\u0430\u0432\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u044e Debug\u2192Run\u00a0Simulation\u00a0(timed\u00a0breakpoint). \u041e\u0442\u043a\u0440\u043e\u0435\u0442\u0441\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043e\u043a\u043d\u043e \u0434\u043b\u044f \u0432\u0432\u043e\u0434\u0430 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438. \u0412\u0432\u0435\u0434\u0451\u043c \u0442\u0443\u0434\u0430 110m:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u041a\u043e\u0433\u0434\u0430 Proteus \u043f\u0440\u043e\u0441\u0438\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 0,11 \u0441\u0435\u043a\u0443\u043d\u0434\u044b \u0438 \u0432\u0441\u0442\u0430\u043d\u0435\u0442 \u043d\u0430 \u043f\u0430\u0443\u0437\u0443, \u043d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u043a\u043d\u043e\u043f\u043a\u0443 Stop \u0432 \u043d\u0438\u0436\u043d\u0435\u0439 \u043f\u0430\u043d\u0435\u043b\u0438:<\/p>\n<figure class=\"full-width\"><\/figure>\n<p> \u041d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u043a\u043b\u0430\u0432\u0438\u0448\u0443 \u041f\u0440\u043e\u0431\u0435\u043b, \u0447\u0442\u043e\u0431\u044b \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u0438\u043c\u0443\u043b\u044f\u0446\u0438\u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u0438\u0441\u044c \u0432 \u0433\u0440\u0430\u0444\u0438\u043a\u0438, \u0438 \u043d\u0430\u0436\u043c\u0451\u043c \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0433\u0440\u0430\u0444\u0438\u043a. \u041f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<figure class=\"full-width\"><\/figure>\n<\/p>\n<\/div>\n<\/details>\n<h2> \u041f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/h2>\n<p> \u0418\u0442\u0430\u043a. \u0415\u0441\u043b\u0438 \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043c\u043e\u0434\u0443\u043b\u044f JTAG, \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u044c \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0440\u0435\u0430\u043a\u0446\u0438\u044e \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0441\u0438\u0433\u043d\u0430\u043b. \u041f\u0440\u0438\u0447\u0451\u043c, \u0435\u0441\u043b\u0438 \u0432 \u0438\u043d\u044b\u0445 \u0437\u0430\u0434\u0430\u0447\u0430\u0445 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0446\u0435\u043b\u044c \u0443\u043b\u0443\u0447\u0448\u0438\u0442\u044c \u043a\u0430\u043a\u043e\u0439\u2011\u043d\u0438\u0431\u0443\u0434\u044c \u0443\u0441\u0440\u0435\u0434\u043d\u0451\u043d\u043d\u044b\u0439 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c, \u0442\u043e \u0437\u0434\u0435\u0441\u044c \u0431\u0443\u0434\u0435\u0442 \u0432\u0430\u0436\u0435\u043d <em>\u0445\u0443\u0434\u0448\u0438\u0439<\/em> \u0441\u043b\u0443\u0447\u0430\u0439 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0438 \u043c\u0435\u0436\u0434\u0443 \u0444\u0440\u043e\u043d\u0442\u043e\u043c \u043f\u043e \u043b\u0438\u043d\u0438\u0438 TCK \u0438 \u0440\u0435\u0430\u043a\u0446\u0438\u0435\u0439 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430.<\/p>\n<p> \u041a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e\u0439 \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0435\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435, \u043f\u0435\u0440\u0432\u044b\u043c \u043d\u0430 \u0443\u043c \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0442\u0435\u0440\u043c\u0438\u043d \u00ab\u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435\u00bb.<br \/>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0443\u043c\u043d\u044b\u043c \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0445\u0443\u0434\u0448\u0438\u0439 \u043f\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u043b\u0443\u0447\u0430\u0439 \u0440\u0435\u0430\u043a\u0446\u0438\u0438 \u043d\u0430 \u0444\u0440\u043e\u043d\u0442 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043f\u043e \u043b\u0438\u043d\u0438\u0438 TCK \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p> \u041d\u0430\u0441\u0442\u0440\u043e\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0443 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f.<\/p>\n<pre><code class=\"assembly\">.set LED_POS  = 5 .set EXT_POS  = 2 .set LED_MASK = (1 &lt;&lt; LED_POS) .set EXT_MASK = (1 &lt;&lt; EXT_POS)  .org 0x0000    rjmp main .org 0x0002    rjmp external_interrupt .org INT_VECTORS_SIZE     ; \u0430\u0434\u0440\u0435\u0441 \u043a\u043e\u043d\u0446\u0430 \u0432\u0435\u043a\u0442\u043e\u0440\u0430 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439  main:   cli                     ; \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f                  ldi r17,    LOW(RAMEND) ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0441\u0442\u0435\u043a\u0430   out SPL,    r17   ldi r17,    HIGH(RAMEND)   out SPH,    r17               sbi DDRB,   LED_POS     ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c PORTB5 \u043a\u0430\u043a \u0432\u044b\u0445\u043e\u0434 (\u043a\u043e\u043d\u0442\u0430\u043a\u0442 13 \u0433\u0440\u0435\u0431\u0451\u043d\u043a\u0438 Digital)   cbi DDRD,   EXT_POS     ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c PORTD2 \u043a\u0430\u043a \u0432\u0445\u043e\u0434  (\u043a\u043e\u043d\u0442\u0430\u043a\u0442  2 \u0433\u0440\u0435\u0431\u0451\u043d\u043a\u0438 Digital)    ldi r16,    0x01        ; \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u043d\u0435\u0448\u043d\u0435\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435   out EIMSK,  r16   ldi r16,    0b00001111  ; \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0442 \u0432\u043e\u0441\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0430   sts EICRA,  r16               ldi r16,    LED_MASK   ldi r17,    0    sei                     ; \u0440\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0432\u0441\u0435 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f     loop:             rjmp loop  external_interrupt:       out PORTB,  r16   out PORTB,  r17 reti                      ; \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c\u0441\u044f \u0438\u0437 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f<\/code><\/pre>\n<p> \u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u043f\u043e\u0434\u0433\u043e\u0442\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043f\u044f\u0442\u044b\u043c \u0432\u044b\u0432\u043e\u0434\u043e\u043c \u043f\u043e\u0440\u0442\u0430 \u00abB\u00bb (\u0432\u044b\u0445\u043e\u0434 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u0430) \u0438 \u0432\u0442\u043e\u0440\u044b\u043c \u0432\u044b\u0432\u043e\u0434\u043e\u043c \u043f\u043e\u0440\u0442\u0430 \u00abD\u00bb (\u0432\u0445\u043e\u0434 \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0434\u043b\u044f \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f).<br \/>\u041f\u043e\u0441\u043b\u0435 \u043c\u0435\u0442\u043a\u0438 main \u043c\u044b \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 cli \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043b\u044e\u0431\u044b\u0445 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0439.<br \/>\u0417\u0430\u0442\u0435\u043c \u043c\u044b \u0437\u0430\u043d\u043e\u0441\u0438\u043c \u0432 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u0430\u0440\u0443 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u043e\u0432 (\u0432 \u0441\u0447\u0451\u0442\u0447\u0438\u043a \u0441\u0442\u0435\u043a\u0430) \u0430\u0434\u0440\u0435\u0441<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-376704","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/376704","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=376704"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/376704\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=376704"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=376704"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=376704"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}