{"id":255488,"date":"2015-04-18T06:31:03","date_gmt":"2015-04-18T02:31:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=255488"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=255488","title":{"rendered":"Black Swift: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 EJTAG"},"content":{"rendered":"<p>     \t<img decoding=\"async\" src=\"\/\/habrastorage.org\/files\/3a7\/83c\/08d\/3a783c08d637468ab021227c3b0548d2.jpg\"\/><br \/>  \u041c\u043e\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f <a href=\"http:\/\/geektimes.ru\/post\/245066\/\">EJTAG: \u0430\u0442\u0442\u0440\u0430\u043a\u0446\u0438\u043e\u043d \u0434\u043b\u044f \u0445\u0430\u043a\u0435\u0440\u043e\u0432<\/a> \u0445\u043e\u0442\u044f \u0438 \u0431\u044b\u043b\u0430 \u0442\u0435\u043f\u043b\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0435\u043d\u0430 \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u044c\u044e, \u0438\u043c\u0435\u043b\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0451\u0442\u044b: \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0443\u0436 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043d\u0438\u0437\u043a\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043f\u043e EJTAG (\u0430\u0436 \u0446\u0435\u043b\u044b\u0445 2 \u041a\u0411\/\u0441!).<br \/>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u044f \u0443\u043c\u0443\u0434\u0440\u0438\u043b\u0441\u044f \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 JTAG \u043f\u043b\u0430\u0442\u044b MR3020 \u0432 \u043f\u043e\u043b\u043d\u0443\u044e \u043d\u0435\u0433\u043e\u0434\u043d\u043e\u0441\u0442\u044c (\u0431\u044b\u043b \u043e\u0442\u043e\u0440\u0432\u0430\u043d \u043f\u0440\u043e\u0432\u043e\u0434 TDI \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043a\u0443\u0441\u043e\u0447\u043a\u043e\u043c SMD-\u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u0430 R16). \u0422\u0430\u043a \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u043e\u043b\u043e\u043c\u043a\u0443 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c, \u0442\u043e \u043d\u0435\u0434\u043e\u0447\u0451\u0442\u044b \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438.<br \/>  \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u043e\u0442 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f <a href=\"http:\/\/www.black-swift.ru\">\u043f\u0440\u043e\u0435\u043a\u0442\u0430 Black Swift<\/a> \u0414\u043c\u0438\u0442\u0440\u0438\u044f \u0416\u0435\u0440\u0435\u0431\u043a\u043e\u0432\u0430 \u043f\u043b\u0430\u0442\u0443 Black Swift Pro \u0441 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u043e\u043c. \u041f\u043b\u0430\u0442\u0430 Black Swift Pro \u0432\u043e \u043c\u043d\u043e\u0433\u043e\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430 MR3020, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u043f\u0440\u043e EJTAG \u043d\u0430 Black Swift \u0438 \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0448\u043b\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0451\u0442\u044b!<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<blockquote><p>\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435: \u043d\u0438\u0436\u0435 \u0438\u0437\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u043e\u0434\u0438\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 EJTAG \u0434\u043b\u044f \u043f\u043b\u0430\u0442\u044b Black Swift \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u041f\u041e; \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0432\u043f\u0430\u0434\u0430\u0435\u0442 \u0432 \u0441\u0442\u0443\u043f\u043e\u0440 \u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u0437\u043d\u0430\u0435\u0442 \u043a\u0442\u043e \u0442\u0430\u043a\u0438\u0435 AR9331, MR3020 \u0438 EJTAG, \u0432 \u043a\u0443\u0440\u0441\u0435 \u0433\u0434\u0435 \u0431\u0440\u0430\u0442\u044c \u043a\u0440\u043e\u0441\u0441-\u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440 \u0434\u043b\u044f MIPS \u0438 \u0434\u043e\u0433\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u0447\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 minicom. \u041f\u0440\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u0438 \u043a\u0430\u043a\u043e\u0433\u043e-\u043b\u0438\u0431\u043e \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u0432 \u043f\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044e EJTAG \u043d\u0430 \u043f\u043b\u0430\u0442\u0435 Black Swift \u0430\u0432\u0442\u043e\u0440 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u043e\u0438\u0441\u043a\u0430\u0442\u044c \u043e\u0442\u0432\u0435\u0442 \u0432 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 <a href=\"http:\/\/geektimes.ru\/post\/245066\/\">EJTAG: \u0430\u0442\u0442\u0440\u0430\u043a\u0446\u0438\u043e\u043d \u0434\u043b\u044f \u0445\u0430\u043a\u0435\u0440\u043e\u0432<\/a>.  <\/p><\/blockquote>\n<h4>Black Swift: \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 TP-Link MR3020<\/h4>\n<p>  Black Swift \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0438 \u043e\u0442 TP-Link MR3020 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043d\u044b\u043c \u0438\u0437\u0434\u0435\u043b\u0438\u0435\u043c, \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044b\u043c \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438.<br \/>  \u041a\u0430\u043a \u0440\u0430\u0437 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442: \u043f\u043b\u0430\u0442\u0430 Black Swift \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u043b\u0438 \u043b\u0435\u0433\u043a\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0430 \u0435\u0451 \u0431\u0430\u0437\u0435 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u0434\u0435\u043b\u0438\u044f. \u041f\u043e \u044d\u0442\u043e\u0439 \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u043f\u043b\u0430\u0442\u0430 Black Swift \u0438\u043c\u0435\u0435\u0442 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043c\u0435\u043d\u044c\u0448\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 (\u043a\u0430\u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0445, \u0442\u0430\u043a \u0438 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0445) \u0434\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432.<br \/>  \u0420\u0430\u0437\u043c\u0435\u0440\u044b Black Swift \u0432\u0435\u0441\u044c\u043c\u0430 \u043d\u0435\u0432\u0435\u043b\u0438\u043a\u0438, \u043d\u0430 \u043f\u043b\u0430\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0440\u0430\u0437\u044a\u0451\u043c\u044b, \u043f\u043e \u0441\u0432\u043e\u0435\u0439 \u043f\u0440\u0438\u0440\u043e\u0434\u0435 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435 \u0440\u0430\u0437\u044a\u0451\u043c\u0430\u043c \u043d\u0430 Arduino-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0430\u0445, \u043d\u043e \u0438\u043c\u0435\u044e\u0449\u0438\u0435 \u0432 \u0434\u0432\u0430 \u0440\u0430\u0437\u0430 \u043c\u0435\u043d\u044c\u0448\u0435\u0435 \u0440\u0430\u0441\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u043c\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u0435\u043b\u044f\u043c\u0438 \u2014 1,27 \u043c\u043c. \u041f\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u043c\u0438\u043d\u0438\u0430\u0442\u044e\u0440\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u043e\u0449\u0435\u043d\u0438\u044f \u043c\u0430\u043a\u0435\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441 \u0442\u0430\u043a\u043e\u0439 \u043f\u043b\u0430\u0442\u043e\u0439 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0430\u0434\u0430\u043f\u0442\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 \u00ab\u0431\u043e\u043b\u044c\u0448\u0438\u0435\u00bb \u043f\u0440\u043e\u0432\u043e\u0434\u0430 \u043e\u0442 Arduino:<br \/>  <img decoding=\"async\" src=\"\/\/habrastorage.org\/files\/78b\/5b0\/600\/78b5b0600dc3413d8f8ee1ae8951ecfe.jpg\"\/>  <\/p>\n<blockquote><p>SD-\u043a\u0430\u0440\u0442\u0430 \u043d\u0430 \u0444\u043e\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430.<\/p><\/blockquote>\n<p>  \u0412 \u041f\u0417\u0423 Black Swift \u043f\u0440\u043e\u0448\u0438\u0442 \u0448\u0442\u0430\u0442\u043d\u044b\u0439 \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u043f\u043b\u0430\u0442\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u043d\u0430 \u0431\u0430\u0437\u0435 <a href=\"https:\/\/github.com\/pepe2k\/u-boot_mod\">u-boot_mod<\/a>.<br \/>  \u041f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0432\u044b\u0434\u0430\u0451\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0432 UART (\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 UART: 115200 8n1):  <\/p>\n<blockquote>\n<pre> ********************************************* *        U-Boot 1.1.4  (Apr  1 2015)        * *********************************************  U-Boot for Black Swift board (AR9331)  DRAM:   64 MB DDR2 16-bit FLASH:  Winbond W25Q128 (16 MB) CLOCKS: 400\/400\/200\/33 MHz (CPU\/RAM\/AHB\/SPI)<\/pre>\n<\/blockquote>\n<p>  \u0415\u0441\u043b\u0438 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 1 \u0441\u0435\u043a\u0443\u043d\u0434\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0432 UART \u043d\u0438\u043a\u0430\u043a\u043e\u0433\u043e \u0441\u0438\u043c\u0432\u043e\u043b\u0430, \u0442\u043e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u041e\u0421 \u043d\u0430 \u0431\u0430\u0437\u0435 OpenWrt. \u0415\u0441\u043b\u0438 \u0436\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0443\u0441\u043f\u0435\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0443 \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c \u0441\u0438\u043c\u0432\u043e\u043b, \u0442\u043e \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430. \u0418\u0437 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u0430\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u041e\u0417\u0423 (\u0447\u0435\u0440\u0435\u0437 UART \u043f\u043e Y-Modem \u0438\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 Ethernet \u043f\u043e tftp) \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u043b\u044e\u0431\u043e\u0439 \u0430\u0434\u0440\u0435\u0441; \u0434\u0430\u0436\u0435 \u0435\u0441\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u041f\u0417\u0423.<\/p>\n<p>  \u041d\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 Black Swift \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430 \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u0435\u0442 \u043c\u0430\u0441\u0441\u0443 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432 \u043f\u0435\u0440\u0435\u0434 MR3020:  <\/p>\n<ul>\n<li>\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043a \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043b\u044e\u0431\u044b\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u043c AR9331 (\u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0438 JTAG) \u0441\u0442\u0430\u043b\u043e \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043f\u0440\u043e\u0449\u0435;<\/li>\n<li>\u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u0440\u0443\u0436\u0435\u043b\u044e\u0431\u0435\u043d (\u0432 MR3020 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u043a\u043e\u0434\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u041e\u0417\u0423 \u0431\u044b\u043b\u0438 \u0441\u0438\u043b\u044c\u043d\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u044b);<\/li>\n<li>\u0435\u0441\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0442\u044c, \u0432\u0445\u043e\u0434 GPIO11\/JS AR9331 \u043d\u0430 Black Swift \u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u043c \u043a VDD25, \u0447\u0442\u043e \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c EJTAG (\u043d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u043d\u0430 MR3020 \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0436\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 SW1);<\/li>\n<li>\u0432 \u0432\u0435\u0440\u0441\u0438\u0438 Black Swift Pro \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0435 \u041f\u0417\u0423 \u043a \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u0443 (\u0441\u043c. \u043d\u0438\u0436\u0435 \u043e\u0431 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u0445 AR9331).<\/li>\n<\/ul>\n<p>  \u041d\u043e, \u043a\u0430\u043a \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0441\u044f, <i>\u043f\u043e\u0432\u0435\u0440\u044c\u0442\u0435, \u0443 \u043d\u0430\u0441 \u0442\u0443\u0442 \u043d\u0435 \u0432\u0441\u0451 \u0442\u0430\u043a \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e&#8230;<\/i><\/p>\n<h4>\u041d\u0438\u0447\u0442\u043e \u043d\u0435 \u043f\u0440\u0435\u0434\u0432\u0435\u0449\u0430\u043b\u043e \u0431\u0435\u0434\u044b<\/h4>\n<p>  \u041e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0448\u0442\u0430\u0442\u043d\u0430\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 u-boot_mod, \u0445\u043e\u0442\u044f \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c \u0432 \u041e\u0417\u0423 \u043a\u043e\u0434 \u0438 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0435\u0433\u043e, \u043d\u043e, \u043a\u0430\u043a \u0438 \u0448\u0442\u0430\u0442\u043d\u0430\u044f \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0430 MR3020, \u0432\u0440\u0430\u0436\u0434\u0435\u0431\u043d\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430 \u043f\u043e \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044e \u043a \u043b\u044e\u0431\u0438\u0442\u0435\u043b\u044f\u043c EJTAG \u0438 \u043d\u043e\u0440\u043e\u0432\u0438\u0442 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c EJTAG \u0432\u0441\u043a\u043e\u0440\u0435 \u043f\u043e\u0441\u043b\u0435 \u0441\u0442\u0430\u0440\u0442\u0430.<br \/>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u043f\u044b\u0442 MR3020, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0439 \u0441 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u041f\u0417\u0423 SPI Flash \u0437\u0430 \u0441\u0447\u0451\u0442 \u0440\u0430\u0437\u0440\u044b\u0432\u0430 \u0446\u0435\u043f\u0438 CS, \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e<br \/>  \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043d\u0430 Black Swift <b>Pro<\/b> \u0435\u0441\u0442\u044c \u043c\u0438\u043a\u0440\u043e\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0438, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0438\u0435 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u041f\u0417\u0423 \u043e\u0442 AR9331 (\u0447\u0442\u043e \u043f\u043e \u0437\u0430\u0434\u0443\u043c\u043a\u0435 \u0430\u0432\u0442\u043e\u0440\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440). \u0414\u043e\u0441\u0442\u0443\u043f \u043a \u044d\u0442\u0438\u043c \u043c\u0438\u043a\u0440\u043e\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044f\u043c \u043d\u0430 \u043f\u043b\u0430\u0442\u0435, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u0430\u0434\u0430\u043f\u0442\u0435\u0440, \u043c\u044f\u0433\u043a\u043e \u0433\u043e\u0432\u043e\u0440\u044f \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0451\u043d. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0430\u043a\u043a\u0443\u0440\u0430\u0442\u043d\u043e \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0438 \u0432 \u043d\u0443\u0436\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043f\u043b\u0430\u0442\u0443 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0441\u043d\u0438\u043c\u0430\u0442\u044c \u0441 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430. \u041d\u0430 \u043f\u043b\u0430\u0442\u0435 Black Swift (\u043d\u0435 Pro!) \u0438 \u0432\u043e\u0432\u0441\u0435 \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043c\u0438\u043a\u0440\u043e\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0435\u0439. \u0422\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u043f\u0430\u044f\u0442\u044c \u043f\u0430\u0440\u0443 \u043f\u0440\u043e\u0432\u043e\u0434\u043e\u0432 \u043a \u043c\u0438\u043a\u0440\u043e\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044e \u0438\u043b\u0438 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0435 \u041f\u0417\u0423 \u0434\u043b\u044f \u0437\u0430\u043c\u044b\u043a\u0430\u043d\u0438\u044f\/\u0440\u0430\u0437\u043c\u044b\u043a\u0430\u043d\u0438\u044f \u0446\u0435\u043f\u0438 CS \u0441\u043d\u0430\u0440\u0443\u0436\u0438, \u043d\u043e \u0442\u0430\u043a\u0430\u044f \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0443\u043c\u0435\u043d\u0438\u044f \u0445\u043e\u0440\u043e\u0448\u043e \u043f\u0430\u044f\u0442\u044c (\u0434\u0443\u043c\u0430\u044e \u0444\u043e\u0442\u043e \u043d\u0438\u0436\u0435 \u0434\u0430\u0451\u0442 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0438).<br \/>  <img decoding=\"async\" src=\"\/\/habrastorage.org\/files\/030\/a87\/ea5\/030a87ea581949729485784e46653737.jpg\"\/>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0417\u0430\u0447\u0435\u043c \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u0438\u0441\u044c \u043c\u0438\u043a\u0440\u043e\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u0438 \u043d\u0430 Black Swift Pro?<\/b><\/p>\n<div class=\"spoiler_text\"> \u0414\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u043e\u043f\u044b\u0442\u043a\u0438 \u043f\u0435\u0440\u0435\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c (\u0438\u043b\u0438 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c) \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u041f\u0417\u0423 SPI Flash \u0431\u0435\u0437 \u043e\u0442\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043e\u0442 AR9331 \u043e\u0431\u0440\u0435\u0447\u0435\u043d\u044b \u043d\u0430 \u043d\u0435\u0443\u0434\u0430\u0447\u0443 \u2212 AR9331 \u0443\u043f\u043e\u0440\u043d\u043e \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0438\u0442 \u043b\u0438\u043d\u0438\u0438 SPI \u0434\u0430\u0436\u0435 \u043f\u0440\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 RESET. \u041d\u0430 Black Swift Pro \u0447\u0435\u0442\u044b\u0440\u0435 \u043c\u0438\u043a\u0440\u043e\u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u0435\u043b\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0442 \u0440\u0435\u0448\u0438\u0442\u044c \u044d\u0442\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443, \u043f\u0443\u0442\u0451\u043c \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0433\u043e \u041f\u0417\u0423 \u043e\u0442 AR9331, \u0447\u0442\u043e \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440.  <\/div>\n<\/div>\n<p>  \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434\u0438\u043a\u0443 \u043e\u0436\u0438\u0432\u043b\u0435\u043d\u0438\u044f JTAG, \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0443\u044e \u043d\u0430 MR3020, \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e.<br \/>  <i>\u041c\u044b \u043f\u043e\u0439\u0434\u0451\u043c \u0434\u0440\u0443\u0433\u0438\u043c \u043f\u0443\u0442\u0451\u043c.<\/i><\/p>\n<h4>\u00ab\u0413\u0440\u044f\u0437\u043d\u044b\u0439 \u0445\u0430\u043a \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043f\u043e\u044e\u0437\u0430\u0442\u044c JTAG\u00bb<\/h4>\n<p>  \u0418\u0442\u0430\u043a \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a u-boot_mod \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 JTAG.<br \/>  \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442 u-boot_mod \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 (\u043d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u043f\u043e\u0441\u043b\u0435 \u0441\u043d\u044f\u0442\u0438\u044f \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0441\u0431\u0440\u043e\u0441 \u043b\u044e\u0431\u043e\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0441 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043e\u0439 MIPS \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0441 \u0430\u0434\u0440\u0435\u0441\u0430 <code>0xbfc00000<\/code>):  <\/p>\n<blockquote>\n<pre>     bfc00000:   100000ff        b       0xbfc00400     bfc00004:   00000000        nop<\/pre>\n<\/blockquote>\n<p>  \u0415\u0441\u043b\u0438 \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 <code>0xbfc00400<\/code> \u043d\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 <code>0xbfc00000<\/code>, \u0432\u043e\u0442 \u0442\u0430\u043a:  <\/p>\n<blockquote>\n<pre>     bfc00000:   1000ffff        b       0xbfc00000     bfc00004:   00000000        nop<\/pre>\n<\/blockquote>\n<p>  \u0442\u043e u-boot_mod \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0432\u043e\u0451 \u0447\u0451\u0440\u043d\u043e\u0435 \u0434\u0435\u043b\u043e \u043f\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044e JTAG.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u043d\u0435\u0447\u043d\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0443\u0436 \u043e\u0447\u0435\u043d\u044c \u0442\u043e\u043f\u043e\u0440\u043d\u043e&#8230;<\/b><\/p>\n<div class=\"spoiler_text\">\u0438 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0443\u0447\u0448\u0435 \u0431\u044b\u043b\u043e \u0431\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u0442\u044c \u0448\u0442\u0430\u0442\u043d\u0443\u044e \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u0434\u043e\u0441\u0442\u0443\u043f \u043a JTAG \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u0441\u044f \u0432\u0441\u0435\u0433\u0434\u0430 (\u0438\u043b\u0438 \u0445\u043e\u0442\u044f \u0431\u044b \u043f\u0440\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0451\u043d\u043d\u043e\u043c \u0443\u0441\u043b\u043e\u0432\u0438\u0438), \u043d\u043e, \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u0435, \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u0434\u0430\u043d\u043d\u043e\u0439 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u0448\u0442\u0430\u0442\u043d\u043e\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b (\u0441\u043c. <a href=\"http:\/\/www.black-swift.ru\/forum\/suggestions\/24-vylozhit-iskhodnye-testy-na-github#53\">\u0444\u043e\u0440\u0443\u043c black-swift.ru<\/a>), \u0430 \u0432\u043d\u043e\u0441\u0438\u0442\u044c \u043d\u0435\u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432 \u0431\u0438\u043d\u0430\u0440\u043d\u0443\u044e \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0443 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u043d\u0435 \u0445\u043e\u0447\u0435\u0442\u0441\u044f.  <\/div>\n<\/div>\n<p>  \u0417\u0430\u043c\u0435\u043d\u0443 \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u043e\u0440\u0430, \u043d\u043e \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0445 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0439 \u043b\u0443\u0447\u0448\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c barebox.<\/p>\n<p>  <strong>\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435! \u041e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043f\u043e\u043b\u043d\u043e\u043c\u0443 \u043e\u043a\u0438\u0440\u043f\u0438\u0447\u0438\u0432\u0430\u043d\u0438\u044e \u0432\u0430\u0448\u0435\u0439 \u043f\u043b\u0430\u0442\u044b Black Swift.<\/strong><\/p>\n<h4>\u0421\u0431\u043e\u0440\u043a\u0430 barebox<\/h4>\n<p>  \u0414\u043b\u044f \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0443\u0436\u0435 \u043f\u0440\u043e\u0448\u0438\u0442\u043e\u0433\u043e \u0432 \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0435 \u041f\u0417\u0423 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 u-boot_mod \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c barebox \u0438\u0437 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e git-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f barebox.org. \u0421\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u0438\u0437 \u0432\u0435\u0442\u043a\u0438 next:  <\/p>\n<blockquote>\n<pre>  $ git clone -b next git:\/\/git.pengutronix.de\/git\/barebox.git<\/pre>\n<\/blockquote>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0430\u0434\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u0438\u043c\u0435\u043d\u043d\u043e \u0432\u0435\u0442\u043a\u0443 next \u0438\u0437 git-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f?<\/b><\/p>\n<div class=\"spoiler_text\">\u0412\u0435\u0442\u043a\u0443 next \u043c\u044b \u0442\u0430\u0449\u0438\u043c \u0440\u0430\u0434\u0438 \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u0443\u0447\u0438\u0442 barebox \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u043e\u0439 \u041f\u0417\u0423, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 Black Swift:  <\/p>\n<blockquote>\n<pre> commit bd3e5011346e3d4d03ac076ada5768c2cf197dc4 Author: Antony Pavlov &lt;antonynpavlov@gmail.com&gt; Date:   Mon Apr 13 23:56:41 2015 +0300      mtd: m25p80: import ID for Winbond W25Q128FVSSI from linux      Winbond W25Q128FVSSI chip is used in Black Swift board,     (see http:\/\/www.black-swift.com for details).<\/pre>\n<\/blockquote>\n<p>  \u041d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 \u0434\u0430\u043d\u043d\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0435\u0449\u0451 \u043d\u0435 \u043f\u043e\u043f\u0430\u043b\u043e \u0432 \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e barebox.  <\/div>\n<\/div>\n<p>  \u041f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0441 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c\u0438 \u0442\u0435\u043a\u0441\u0442\u0430\u043c\u0438, \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0438 \u0441\u0431\u043e\u0440\u043a\u0443:  <\/p>\n<blockquote>\n<pre>  $ cd barebox  barebox$ export ARCH=mips  barebox$ export CROSS_COMPILE=\/opt\/mips-2014.11\/bin\/mips-linux-gnu-  barebox$ make tplink-mr3020_defconfig  barebox$ sed &quot;s\/# CONFIG_PARTITION is not set\/CONFIG_PARTITION=y\/&quot; -i .config  barebox$ sed &quot;s\/# CONFIG_CMD_PARTITION is not set\/CONFIG_CMD_PARTITION=y\/&quot; -i .config  barebox$ make<\/pre>\n<\/blockquote>\n<p>  \u0415\u0441\u043b\u0438 \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u0440\u043e\u0448\u043b\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e, \u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0444\u0430\u0439\u043b <code>barebox.bin<\/code>.<br \/>  \u041e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u0432 \u041e\u0417\u0423 Black Swift \u0438 \u0441\u0442\u0430\u0440\u0442\u043e\u0432\u0430\u0442\u044c.<\/p>\n<h4>\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u043c\u0430\u043a\u0435\u0442\u043a\u0438 FT2232H \u043a Black Swift<\/h4>\n<p>  \u0414\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u043c UART \u0438 JTAG \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u044b AR9331 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <a href=\"http:\/\/microsin.net\/adminstuff\/hardware\/ft2232h-board.html\">\u043c\u0430\u043a\u0435\u0442\u043a\u0443 FT2232H<\/a> (\u0441\u043c. \u0442\u0430\u043a\u0436\u0435 <a href=\"http:\/\/dangerousprototypes.com\/docs\/FT2232_breakout_board\">FT2232 breakout board<\/a>).<br \/>  \u0425\u043e\u0442\u044f \u043f\u043b\u0430\u0442\u0430 Black Swift Pro \u0438\u043c\u0435\u0435\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c USB-UART, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f UART \u043c\u0430\u043a\u0435\u0442\u043a\u0443 FT2232H \u043f\u043e \u0440\u044f\u0434\u0443 \u043f\u0440\u0438\u0447\u0438\u043d \u0443\u0434\u043e\u0431\u043d\u0435\u0435:  <\/p>\n<ul>\n<li>\u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u0438\u043d \u043a\u0430\u0431\u0435\u043b\u044c USB;<\/li>\n<li>\u0437\u0430\u043f\u0438\u0442\u044b\u0432\u0430\u044f Black Swift \u043e\u0442 \u043c\u0430\u043a\u0435\u0442\u043a\u0438 (\u0445\u043e\u0442\u044f \u0435\u0451 \u043d\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u0430\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0430) \u0438 \u0436\u0435\u043b\u0430\u044f \u043d\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0438\u0442\u0430\u043d\u0438\u0435 \u043e\u0442 Black Swift \u043c\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043b\u0438\u043d\u0438\u044e \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u043e\u0442 \u043c\u0430\u043a\u0435\u0442\u043a\u0438; \u0442\u0430\u043a \u043c\u044b \u0438\u0437\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u043e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u043f\u0435\u0440\u0435\u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0435\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u0440\u0442\u043e\u0432 USB (ttyUSBxx) \u0432 linux, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c, \u0435\u0441\u043b\u0438 \u043c\u044b \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u043c Black Swift Pro;<\/li>\n<li>\u0443\u043c\u0435\u043d\u044c\u0448\u0430\u044f\u0435\u0442\u0441\u044f \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0432\u0440\u0435\u0434\u0438\u0442\u044c Black Swift \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u044f\/\u0432\u044b\u043d\u0438\u043c\u0430\u044f \u0440\u0430\u0437\u044a\u0451\u043c microUSB;<\/li>\n<li>\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043c\u0430\u043a\u0435\u0442\u043a\u0443 \u043d\u0435 \u043d\u0430\u0434\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u0442\u044c\u0441\u044f, \u0441 \u043a\u0430\u043a\u0438\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u043c Black Swift \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0448\u044c (Pro \u0438\u043b\u0438 \u043d\u0435 Pro) (\u0432\u0441\u0451 \u0440\u0430\u0432\u043d\u043e \u043c\u0430\u043a\u0435\u0442\u043a\u0430 \u043d\u0443\u0436\u043d\u0430 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u043e JTAG).<\/li>\n<\/ul>\n<p>  \u0412\u043e\u0442 \u0441\u0445\u0435\u043c\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f:<br \/>  <img decoding=\"async\" src=\"\/\/habrastorage.org\/files\/86f\/ace\/c5f\/86facec5f530486dbf47613370d1de37.png\"\/><br \/>  \u0412\u043d\u0435\u0448\u043d\u0438\u0439 \u0432\u0438\u0434 Black Swift \u0441 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u0439 \u043c\u0430\u043a\u0435\u0442\u043a\u043e\u0439 FT2232H:<br \/>  <img decoding=\"async\" src=\"\/\/habrastorage.org\/files\/d27\/5e0\/1a5\/d275e01a57c349feb541206b8059d1bd.jpg\"\/><\/p>\n<h4>\u041c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f u-boot_mod<\/h4>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043c\u0430\u043a\u0435\u0442\u043a\u0430 FT2232H \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u043a Black Swift \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 u-boot_mod. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c minicom.<br \/>  \u0414\u0430\u043b\u0435\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c Black Swift (\u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043b\u0438\u0431\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043e\u0442\u043e\u0440\u0432\u0430\u0432 \u043f\u0438\u0442\u0430\u043d\u0438\u0435 \u043e\u0442 \u043f\u043b\u0430\u0442\u044b, \u043b\u0438\u0431\u043e \u0437\u0430\u043c\u043a\u043d\u0443\u0432 \u0432\u0445\u043e\u0434 RESET \u043d\u0430 \u00ab\u0437\u0435\u043c\u043b\u044e\u00bb (0V)).<br \/>  \u041a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0432 minicom \u0437\u0430\u043c\u0435\u0442\u0438\u043c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435  <\/p>\n<blockquote>\n<pre> Hit any key to stop autobooting<\/pre>\n<\/blockquote>\n<p>  \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u0435\u0440\u0432\u0430\u0442\u044c \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443, \u043d\u0430\u0436\u0430\u0432 \u0432 minicom \u043b\u044e\u0431\u0443\u044e \u043a\u043b\u0430\u0432\u0438\u0448\u0443, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u043f\u043e\u044f\u0432\u0438\u0442\u044c\u0441\u044f \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 <code>BSB&gt;<\/code>.<br \/>  \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c \u0432 \u041e\u0417\u0423 <code>barebox.bin<\/code> \u043f\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443 Y-Modem (\u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f Y-Modem \u0432 Debian \u043f\u043e\u043c\u0438\u043c\u043e minicom \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u043f\u0430\u043a\u0435\u0442 lrzsz).<br \/>  \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u0440\u0438\u0451\u043c \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e Y-Modem:  <\/p>\n<blockquote>\n<pre> BSB&gt; loady 0xa0200000<\/pre>\n<\/blockquote>\n<p>  \u0412 minicom&#8217;\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443. \u0415\u0441\u043b\u0438 minicom \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d \u0442\u0430\u043a, \u043a\u0430\u043a \u0432 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 <a href=\"http:\/\/geektimes.ru\/post\/245066\/\">EJTAG: \u0430\u0442\u0442\u0440\u0430\u043a\u0446\u0438\u043e\u043d \u0434\u043b\u044f \u0445\u0430\u043a\u0435\u0440\u043e\u0432<\/a> \u0442\u043e \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0444\u0430\u0439\u043b\u0430 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u043d\u0430\u0436\u0430\u0442\u044c Ctrl-B S, \u0432 \u043c\u0435\u043d\u044e \u0432\u044b\u0431\u0440\u0430\u0442\u044c ymodem, \u0430 \u0437\u0430\u0442\u0435\u043c \u043b\u0438\u0431\u043e \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0444\u0430\u0439\u043b \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043c\u0435\u043d\u044e, \u043b\u0438\u0431\u043e \u043d\u0430\u0436\u0430\u0442\u044c Enter \u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u043f\u0443\u0442\u044c \u043a \u0444\u0430\u0439\u043b\u0443 <code>barebox.bin<\/code> \u0432\u0440\u0443\u0447\u043d\u0443\u044e.<br \/>  \u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 <code>barebox.bin<\/code>:  <\/p>\n<blockquote>\n<pre> BSB&gt; go 0xa0200000 ## Starting application at 0xA0200000...   barebox 2015.04.0-00103-g8397d68 #1 Fri Apr 17 08:59:12 MSK 2015   Board: TP-LINK MR3020 m25p80 m25p80@00: w25q128 (16384 Kbytes) malloc space: 0xa0400000 -&gt; 0xa07fffff (size 4 MiB) environment load \/dev\/env0: No such file or directory Maybe you have to create the partition. running \/env\/bin\/init... \/env\/bin\/init not found barebox:\/<\/pre>\n<\/blockquote>\n<p>  \u0421\u0442\u0440\u043e\u043a\u0430  <\/p>\n<blockquote>\n<pre> m25p80 m25p80@00: w25q128 (16384 Kbytes)<\/pre>\n<\/blockquote>\n<p>  \u0438\u0437 \u0432\u044b\u0434\u0430\u0447\u0438 \u0432\u044b\u0448\u0435 \u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043d\u0430\u043c, \u0447\u0442\u043e barebox \u043d\u0430\u0448\u0451\u043b \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u0435 \u041f\u0417\u0423 w25q128.<br \/>  \u0414\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043e\u0447\u043d\u043e\u043c\u0443 \u041f\u0417\u0423 barebox \u0441\u043e\u0437\u0434\u0430\u0451\u0442 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \/dev\/spiflash. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u041f\u0417\u0423 \u0431\u044b\u043b\u043e \u0443\u0434\u043e\u0431\u043d\u0435\u0435, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0447\u0442\u043e\u0431\u044b \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u0438\u044f \u043e\u0448\u0438\u0431\u043a\u0438, \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u043c \u041f\u0417\u0423 \u043d\u0430 \u0440\u0430\u0437\u0434\u0435\u043b\u044b. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043e\u0431\u0440\u0430\u0442\u0438\u043c\u0441\u044f \u043a <a href=\"http:\/\/www.black-swift.ru\/wiki\/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D1%84%D0%BB%D1%8D%D1%88-%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D0%B8\">\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0444\u043b\u044d\u0448-\u043f\u0430\u043c\u044f\u0442\u0438<\/a><br \/>  \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 addpart \u0434\u043b\u044f \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432:  <\/p>\n<blockquote>\n<pre> barebox:\/ addpart \/dev\/spiflash 128K@0(u-boot) barebox:\/ addpart \/dev\/spiflash 64K@128K(u-boot-env) barebox:\/ addpart \/dev\/spiflash 16128K@192K(open-wrt) barebox:\/ addpart \/dev\/spiflash 64K@16320K(art)<\/pre>\n<\/blockquote>\n<p>  \u0425\u043e\u0442\u044f \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437\u0434\u0435\u043b \u0441 u-boot, \u0438\u0437 \u0447\u0438\u0441\u0442\u043e\u0433\u043e \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0447\u0442\u043e \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043f\u0435\u0440\u0432\u044b\u0445 64 \u0431\u0430\u0439\u0442\u0430\u0445 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0430:  <\/p>\n<blockquote>\n<pre> barebox:\/ md -s \/dev\/spiflash.u-boot 0+64 00000000: 100000ff 00000000 100000fd 00000000                ................ 00000010: 1000018e 00000000 1000018c 00000000                ................ 00000020: 1000018a 00000000 10000188 00000000                ................ 00000030: 10000186 00000000 10000184 00000000                ................  barebox:\/ md -s \/dev\/spiflash.u-boot-env 0+64 00000000: 071043c4 626f6f74 636d643d 626f6f74                ..C.bootcmd=boot 00000010: 6d203078 39463033 30303030 00626f6f                m 0x9F030000.boo 00000020: 7464656c 61793d31 00626175 64726174                tdelay=1.baudrat 00000030: 653d3131 35323030 00697061 6464723d                e=115200.ipaddr=  barebox:\/ md -s \/dev\/spiflash.open-wrt 0+64 00000000: 27051956 acb82611 551bcb1f 001503ef                '..V....U....... 00000010: 80060000 80060000 bc6b30a9 05050203                .........k0..... 00000020: 4d495053 204f7065 6e577274 204c696e                MIPS OpenWrt Lin 00000030: 75782d33 2e31302e 34390000 00000000                ux-3.10.49......  barebox:\/ md -s \/dev\/spiflash.art 0+64 00000000: 807b8591 2010ffff ffffffff ffffffff                .{.. ........... 00000010: ffffffff ffffffff ffffffff ffffffff                ................ 00000020: ffffffff ffffffff ffffffff ffffffff                ................ 00000030: ffffffff ffffffff ffffffff ffffffff                ................<\/pre>\n<\/blockquote>\n<p>  \u042d\u0442\u0430 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u043e\u0448\u0438\u0431\u043a\u0438 \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0438 \u0441\u043c\u0435\u0449\u0435\u043d\u0438\u0439 \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432 \u043d\u0435\u0442 \u2212 \u0432 spiflash.u-boot \u0441\u0438\u0434\u0438\u0442 \u043d\u0430\u0447\u0430\u043b\u043e u-boot_mod, \u0432 spiflash.u-boot-env \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 u-boot_mod, \u0430 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 spiflash.open-wrt \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u043e\u0431\u0440\u0430\u0437\u0430 Linux OpenWrt.<br \/>  \u0412 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 art \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0431\u0430\u0437\u043e\u0432\u044b\u0439 MAC-\u0430\u0434\u0440\u0435\u0441 \u043f\u043b\u0430\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f MAC-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u0432\u0441\u0435\u043c \u0442\u0440\u0451\u043c \u0441\u0435\u0442\u0435\u0432\u044b\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u043c (\u043e\u0434\u043d\u043e\u043c\u0443 WiFi \u0438 \u0434\u0432\u0443\u043c Ethernet).  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u043e\u0442, \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0447\u0442\u043e \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 linux \u043f\u0440\u043e MAC-\u0430\u0434\u0440\u0435\u0441\u0430 \u044d\u0442\u043e\u0439 \u0436\u0435 \u043f\u043b\u0430\u0442\u044b<\/b><\/p>\n<div class=\"spoiler_text\">\n<blockquote>\n<pre> root@BlackSwift:\/dev# ifconfig -a | grep HWaddr br-lan    Link encap:Ethernet  HWaddr 80:7B:85:91:20:12 eth0      Link encap:Ethernet  HWaddr 80:7B:85:91:20:11 eth1      Link encap:Ethernet  HWaddr 80:7B:85:91:20:12 wlan0     Link encap:Ethernet  HWaddr 80:7B:85:91:20:10<\/pre>\n<\/blockquote>\n<\/div>\n<\/div>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u0447\u0438\u0442\u0430\u0435\u043c \u043e\u0431\u0440\u0430\u0437 u-boot_mod \u0438\u0437 \u041f\u0417\u0423 \u0432 \u041e\u0417\u0423:  <\/p>\n<blockquote>\n<pre> barebox:\/ memcpy -s \/dev\/spiflash.u-boot 0 0xa0100000<\/pre>\n<\/blockquote>\n<p>  \u0412 barebox \u044d\u0442\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0447\u0442\u0435\u043d\u0438\u044f bit-bang&#8217;\u043e\u043c \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 49 \u0441\u0435\u043a\u0443\u043d\u0434.  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0410 \u043a\u0430\u043a \u0441 \u0447\u0442\u0435\u043d\u0438\u0435\u043c \u0438\u0437 \u041f\u0417\u0423 \u0432 linux?<\/b><\/p>\n<div class=\"spoiler_text\">\u0432 linux \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0441 \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c \u043a \u0444\u043b\u0435\u0448\u0443 \u0432\u0441\u0451 \u0433\u043e\u0440\u0430\u0437\u0434\u043e \u043b\u0443\u0447\u0448\u0435 (\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0447\u0442\u0435\u043d\u0438\u044f \u0431\u043e\u043b\u0435\u0435 2 \u041c\u0411\/\u0441):  <\/p>\n<blockquote>\n<pre> root@BlackSwift:\/dev# time dd if=mtdblock2 of=\/tmp\/test bs=1M 15+1 records in 15+1 records out real    0m 7.07s user    0m 0.00s sys     0m 0.48s<\/pre>\n<\/blockquote>\n<\/div>\n<\/div>\n<p>  \u041c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c \u043e\u0431\u0440\u0430\u0437 u-boot_mod \u0432 \u041e\u0417\u0423 \u0438 \u0437\u0430\u043f\u0438\u0448\u0435\u043c \u0435\u0433\u043e \u043d\u0430\u0437\u0430\u0434 \u0432 \u041f\u0417\u0423.  <\/p>\n<blockquote>\n<pre> barebox:\/ mw 0xa0100000 0x1000ffff barebox:\/ erase \/dev\/spiflash.u-boot barebox:\/ memcpy -d \/dev\/spiflash.u-boot 0xa0100000 0 0x20000<\/pre>\n<\/blockquote>\n<p>  \u041e\u0431\u043d\u043e\u0432\u043b\u0451\u043d\u043d\u043e\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u041f\u0417\u0423:  <\/p>\n<blockquote>\n<pre> barebox:\/ md -s \/dev\/spiflash.u-boot 0+64 00000000: 1000ffff 00000000 100000fd 00000000                ................ 00000010: 1000018e 00000000 1000018c 00000000                ................ 00000020: 1000018a 00000000 10000188 00000000                ................ 00000030: 10000186 00000000 10000184 00000000                ................<\/pre>\n<\/blockquote>\n<p>  <b>\u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u043f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 <code>\/dev\/spiflash.u-boot<\/code> \u0435\u0449\u0451 \u0440\u0430\u0437 \u043f\u043e\u043a\u0430 \u043d\u0435 \u043f\u043e\u0437\u0434\u043d\u043e!<\/b><\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c Black Swift \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c. \u0418\u0437 barebox \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a \u043c\u043e\u0436\u043d\u043e \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0438\u0442\u044c \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u044b reset:  <\/p>\n<blockquote>\n<pre> barebox:\/ reset<\/pre>\n<\/blockquote>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043b\u0430\u0442\u0430 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u0437\u0430\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c EJTAG. \u041f\u0440\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e EJTAG, \u043f\u043b\u0430\u0442\u0443 \u043b\u0435\u0433\u043a\u043e \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0435 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435.<\/p>\n<h4>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 EJTAG<\/h4>\n<p>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0442\u0443\u043f\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c\u0438 openocd \u0434\u043b\u044f MR3020 \u0434\u043b\u044f Black Swift \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f: MR3020 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 DDR1 \u0432 \u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043a\u0430\u043a Black Swift \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0443 DDR2, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u0440\u0443\u0433\u0430\u044f \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u041e\u0417\u0423.<br \/>  \u041e\u0442\u043c\u0435\u0447\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u0438 <a href=\"http:\/\/geektimes.ru\/post\/245066\/\">EJTAG: \u0430\u0442\u0442\u0440\u0430\u043a\u0446\u0438\u043e\u043d \u0434\u043b\u044f \u0445\u0430\u043a\u0435\u0440\u043e\u0432<\/a> \u0432 \u0447\u0430\u0441\u0442\u0438 openocd:  <\/p>\n<ul>\n<li>\u043f\u043e \u043c\u043d\u0435\u043d\u0438\u044e \u041f\u0430\u0432\u043b\u0430 \u0424\u0435\u0440\u0446\u0435\u0440\u0430 (<a href=\"http:\/\/openocd.zylin.com\/#\/q\/owner:fercerpav%2540gmail.com+status:open\">\u0430 \u0443\u0436 \u043e\u043d-\u0442\u043e \u0437\u043d\u0430\u0435\u0442 \u0442\u043e\u043b\u043a \u0432 openocd!<\/a>), \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u043f\u0430\u0433\u0430\u043d\u0434\u0438\u0440\u043e\u0432\u0430\u043b\u0430 \u043f\u043e\u0440\u043e\u0447\u043d\u0443\u044e \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 openocd;<\/li>\n<li>\u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0443\u0436 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043d\u0438\u0437\u043a\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043f\u043e EJTAG (\u0430\u0436 \u0446\u0435\u043b\u044b\u0445 2 \u041a\u0411\/\u0441!).<\/li>\n<\/ul>\n<p>  \u0412 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u044f \u043f\u043e\u0441\u0442\u0430\u0440\u0430\u044e\u0441\u044c \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u0441\u0442\u0430\u0440\u044b\u0445 \u043e\u0448\u0438\u0431\u043e\u043a. \u0412 \u0441\u043e\u0441\u0442\u0430\u0432\u0435 openocd \u0443\u0436\u0435 \u0438\u043c\u0435\u0435\u0442\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f <a href=\"http:\/\/www.diygadget.com\/tiao-usb-multi-protocol-adapter-jtag-spi-i2c-serial.html\">TIAO USB Multi-Protocol Adapter (TUMPA)<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f FT2232 Board, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u043c\u0435\u0441\u0442\u043e \u043f\u043e\u043b\u043d\u043e\u0433\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u0443\u0435\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f TUMPA (<code>interface\/ftdi\/tumpa.cfg<\/code>).<br \/>  \u0414\u043b\u044f \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f JTAG \u043a \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u0435 AR9331 \u0410\u043b\u0435\u043a\u0441\u0435\u0435\u043c \u0420\u0435\u043c\u043f\u0435\u043b\u0435\u043c \u0443\u0436\u0435 \u0441\u043e\u0437\u0434\u0430\u043d \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b <code>atheros_ar9331.cfg<\/code>, \u0442\u0430\u043a \u0447\u0442\u043e \u0435\u0433\u043e \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c. \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 openocd \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435\u0434\u0430\u0432\u043d\u043e (\u0441\u043c. <a href=\"http:\/\/openocd.zylin.com\/gitweb?p=openocd.git;a=commitdiff;h=7e66b02ba4f1453ab1c45eaebbeee6eaa0cfb436\">\u0432\u043e\u0442 \u044d\u0442\u043e\u0442 commit<\/a>) \u0438 \u043d\u0435 \u0432\u0445\u043e\u0434\u0438\u0442 \u0432 \u0441\u043e\u0441\u0442\u0430\u0432 \u043f\u0430\u043a\u0435\u0442\u0430 openocd \u0434\u043b\u044f Debian.<br \/>  \u041f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0435\u0433\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e:  <\/p>\n<blockquote>\n<pre> $ wget -O atheros_ar9331.cfg &quot;http:\/\/openocd.zylin.com\/gitweb?p=openocd.git;a=blob_plain;f=tcl\/target\/atheros_ar9331.cfg;hb=7e66b02ba4f1453ab1c45eaebbeee6eaa0cfb436&quot;<\/pre>\n<\/blockquote>\n<p>  \u0412 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0442\u0440\u0430\u0434\u0438\u0446\u0438\u0435\u0439 openocd \u0432 \u0441\u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c <code>black-swift.cfg<\/code> \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u043b\u0430\u0442\u044b. \u042d\u0442\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 <code>atheros_ar9331.cfg<\/code> \u0438 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 DDR2 (\u0444\u0430\u0439\u043b \u0441\u043e\u0437\u0434\u0430\u043d \u043f\u043e \u043c\u043e\u0442\u0438\u0432\u0430\u043c <a href=\"http:\/\/openocd.zylin.com\/gitweb?p=openocd.git;a=blob;f=tcl\/board\/tp-link_tl-mr3020.cfg;h=0498d60c2a4bc890876fb5985a18d6655a74ae7a;hb=7e66b02ba4f1453ab1c45eaebbeee6eaa0cfb436\">tcl\/board\/tp-link_tl-mr3020.cfg<\/a>):  <\/p>\n<blockquote>\n<pre> source [find atheros_ar9331.cfg]  # ar9331_25mhz_pll_init is imported from tcl\/board\/tp-link_tl-mr3020.cfg proc ar9331_25mhz_pll_init {} {         mww 0xb8050008 0x00018004        ;# bypass PLL; AHB_POST_DIV - ratio 4         mww 0xb8050004 0x00000352        ;# 34000(ns)\/40ns(25MHz) = 0x352 (850)         mww 0xb8050000 0x40818000        ;# Power down control for CPU PLL                                          ;# OUTDIV | REFDIV | DIV_INT         mww 0xb8050010 0x001003e8        ;# CPU PLL Dither FRAC Register                                          ;# (disabled?)         mww 0xb8050000 0x00818000        ;# Power on | OUTDIV | REFDIV | DIV_INT         mww 0xb8050008 0x00008000        ;# remove bypass;                                          ;# AHB_POST_DIV - ratio 2 }  proc ar9331_ddr2_init {} {         mww 0xb8000000 0x7fbc8cd0        ;# DDR_CONFIG - lots of DRAM confs         mww 0xb8000004 0x9dd0e6a8        ;# DDR_CONFIG2 - more DRAM confs          mww 0xb800008c 0x00000a59         mww 0xb8000010 0x00000008         mww 0xb8000090 0x00000000         mww 0xb8000010 0x00000010         mww 0xb8000094 0x00000000         mww 0xb8000010 0x00000020         mww 0xb800000c 0x00000000         mww 0xb8000010 0x00000002         mww 0xb8000008 0x00000100         mww 0xb8000010 0x00000001         mww 0xb8000010 0x00000008         mww 0xb8000010 0x00000004         mww 0xb8000010 0x00000004         mww 0xb8000008 0x00000a33         mww 0xb8000010 0x00000001         mww 0xb800000c 0x00000382         mww 0xb8000010 0x00000002         mww 0xb800000c 0x00000402         mww 0xb8000010 0x00000002         mww 0xb8000014 0x00004186         mww 0xb800001c 0x00000008         mww 0xb8000020 0x00000009         mww 0xb8000018 0x000000ff }  $TARGETNAME configure -event reset-init {         ar9331_25mhz_pll_init         sleep 1         ar9331_ddr2_init }  set ram_boot_address 0xa0000000 $TARGETNAME configure -work-area-phys 0xa1ffe000 -work-area-size 0x1000<\/pre>\n<\/blockquote>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0423 \u0447\u0438\u0442\u0430\u0442\u0435\u043b\u044f \u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0437\u043d\u0438\u043a\u043d\u0443\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441 &#8230;<\/b><\/p>\n<div class=\"spoiler_text\">\u043a\u0430\u043a \u0431\u044b\u043b\u0430 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u044b, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0430\u044f \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043f\u0430\u043c\u044f\u0442\u0438 DDR2? \u0422\u0430\u043a\u0430\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 EJTAG! \u0414\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0442\u0440\u0430\u0441\u0441\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 u-boot_mod: \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430 \u0441\u0430\u043c\u043e\u043c \u0440\u0430\u043d\u043d\u0435\u043c \u044d\u0442\u0430\u043f\u0435, \u0432\u044b\u0431\u0440\u0430\u0432 \u0438\u0437 \u0442\u0440\u0430\u0441\u0441\u044b \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 (store), \u043f\u043e\u043b\u0443\u0447\u0438\u043c \u0438\u0441\u043a\u043e\u043c\u0443\u044e \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c.<\/div>\n<\/div>\n<p>  \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b <code>run-barebox.cfg<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u0432\u0441\u0451 \u0432\u043e\u0435\u0434\u0438\u043d\u043e \u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a <code>barebox.bin<\/code> \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:  <\/p>\n<blockquote>\n<pre> source [find interface\/ftdi\/tumpa.cfg]  adapter_khz 6000  source [find black-swift.cfg]  init halt  reset init  load_image barebox\/barebox.bin 0xa0100000 bin  # General Purpose I\/O Function (GPIO_FUNCTION_1) # #   SPI_EN  (18) enables SPI SPA Interface signals #                in GPIO_2, GPIO_3, GPIO_4 and GPIO_5. #   RES     (15) reserved. This bit must be written with 1. #   UART_EN  (2) enables UART I\/O on GPIO_9 (SIN) and GPIO_10 (SOUT). # mww 0xb8040028 0x48002  resume 0xa0100000 shutdown<\/pre>\n<\/blockquote>\n<p>  \u0418\u0442\u0430\u043a, \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u0443 \u043d\u0430\u0441 \u0432 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0444\u0430\u0439\u043b\u044b <code>atheros_ar9331.cfg<\/code>, <code>black-swift.cfg<\/code>, <code>run-barebox.cfg<\/code> \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c barebox:  <\/p>\n<blockquote>\n<pre> $ sudo openocd -f run-barebox.cfg Open On-Chip Debugger 0.8.0 (2014-10-20-21:48) Licensed under GNU GPL v2 For bug reports, read         http:\/\/openocd.sourceforge.net\/doc\/doxygen\/bugs.html Info : only one transport option; autoselect 'jtag' none separate adapter speed: 6000 kHz Error: no device found Error: unable to open ftdi device with vid 0403, pid 8a98, description '*' and serial '*' Info : clock speed 6000 kHz Info : JTAG tap: ar9331.cpu tap\/device found: 0x00000001 (mfg: 0x000, part: 0x0000, ver: 0x0) target state: halted target halted in MIPS32 mode due to debug-request, pc: 0xa080078c 189216 bytes written at address 0xa0100000 downloaded 189216 bytes in 0.459115s (402.473 KiB\/s) shutdown command invoked<\/pre>\n<\/blockquote>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u044b openocd \u0432 \u043e\u043a\u043d\u0435 minicom \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0442\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u043e \u0441\u0442\u0430\u0440\u0442\u0435 barebox.  <\/p>\n<blockquote><p>\u0417\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0432 \u043c\u043e\u0451\u043c \u0447\u0430\u0441\u0442\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e\u0434\u043d\u044f\u0442\u044c \u0447\u0430\u0441\u0442\u043e\u0442\u0443 \u0442\u0430\u043a\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 JTAG \u0432\u044b\u0448\u0435 6 \u041c\u0413\u0446 \u043d\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u043d\u0430\u0431\u043b\u044e\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0440\u0447\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.  <\/p><\/blockquote>\n<h4>\u041a\u0430\u043a \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0435?<\/h4>\n<p>  \u0414\u043b\u044f \u043e\u0434\u043d\u043e\u0440\u0430\u0437\u043e\u0432\u043e\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0433\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 <code>run-u-boot_mod.cfg<\/code>:  <\/p>\n<blockquote>\n<pre> source [find interface\/ftdi\/tumpa.cfg]  adapter_khz 6000  source [find black-swift.cfg]  init halt resume 0xbfc00400 shutdown<\/pre>\n<\/blockquote>\n<p>  <\/p>\n<blockquote><p>\u0417\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0441\u043a\u0440\u0438\u043f\u0442 <code>run-u-boot_mod.cfg<\/code> \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u0434\u0430\u0447\u0438 \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u043d\u0430 \u043f\u043b\u0430\u0442\u0443, \u0442\u0430\u043a \u043a\u0430\u043a u-boot_mod \u0434\u043b\u044f \u0431\u043e\u0440\u044c\u0431\u044b \u0441 \u0442\u0430\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u043e\u0448\u0438\u0431\u043a\u0430\u043c\u0438 AR9331 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0441\u0431\u0440\u043e\u0441. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u043a\u0440\u0438\u043f\u0442 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b, \u043f\u0435\u0440\u0435\u0434 \u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u043d\u0430 \u043f\u043b\u0430\u0442\u0443 \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0430\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b \u0441\u0431\u0440\u043e\u0441. \u0414\u0440\u0443\u0433\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442: \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 <code>run-u-boot_mod.cfg<\/code> \u0434\u0432\u0430\u0436\u0434\u044b.  <\/p><\/blockquote>\n<p>  \u0414\u043b\u044f \u043f\u0435\u0440\u043c\u0430\u043d\u0435\u043d\u0442\u043d\u043e\u0433\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0443\u044e \u0432\u044b\u0448\u0435 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u0443 \u043f\u043e \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u043f\u0435\u0440\u0432\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 u-boot_mod \u0441 \u0442\u043e\u0439 \u043b\u0438\u0448\u044c \u0440\u0430\u0437\u043d\u0438\u0446\u0435\u0439, \u0447\u0442\u043e \u0432\u043c\u0435\u0441\u0442\u043e \u0437\u0430\u043c\u0435\u043d\u044b <code>0x100000ff<\/code> \u043d\u0430 <code>0x1000ffff<\/code>, \u043d\u0430\u0434\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c <code>0x1000ffff<\/code> \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u043d\u0430 <code>0x100000ff<\/code>.<\/p>\n<h4>\u0418\u0442\u043e\u0433\u0438<\/h4>\n<p>  \u041a\u0430\u043a \u0431\u044b\u043b\u043e \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u0432\u044b\u0448\u0435, \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043f\u043e EJTAG \u0441 Black Swift \u0432\u043f\u043e\u043b\u043d\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u041f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u0430\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u0432 400 \u041a\u0411\/\u0441 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043a\u043e\u043c\u0444\u043e\u0440\u0442\u043d\u043e \u0433\u0440\u0443\u0437\u0438\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e barebox, \u043d\u043e \u0438 \u044f\u0434\u0440\u043e linux; \u044d\u0442\u043e \u0442\u0435\u043c \u0431\u043e\u043b\u0435\u0435 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e, \u0447\u0442\u043e \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u0448\u0442\u0430\u0442\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0435\u043d\u044c\u043a\u043e\u0433\u043e \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 Ethernet \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u043d\u0435 \u0432\u044b\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u043c.<\/p>\n<h4>\u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u0438<\/h4>\n<p>  \u0410\u0432\u0442\u043e\u0440 \u0432\u044b\u0440\u0430\u0436\u0430\u0435\u0442 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u043d\u043e\u0441\u0442\u044c \u043b\u044e\u0434\u044f\u043c, \u0431\u0435\u0437 \u0443\u0447\u0430\u0441\u0442\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0434\u0430\u043d\u043d\u0430\u044f \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f \u0435\u0434\u0432\u0430 \u043b\u0438 \u0431\u044b\u043b\u0430 \u0431\u044b \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430:  <\/p>\n<ul>\n<li>\u041f\u0430\u0432\u043b\u0443 \u0424\u0435\u0440\u0446\u0435\u0440\u0443 \u0437\u0430 \u0446\u0435\u043d\u043d\u044b\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f;<\/li>\n<li>\u0410\u043b\u0435\u043a\u0441\u0435\u044e \u0420\u0435\u043c\u043f\u0435\u043b\u044e \u0437\u0430 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 <a href=\"http:\/\/openocd.zylin.com\/#\/c\/2519\/\">\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438 \u043f\u043b\u0430\u0442\u044b TP-Link MR3020 \u0432 openocd<\/a>;<\/li>\n<li>\u0414\u043c\u0438\u0442\u0440\u0438\u044e \u0416\u0435\u0440\u0435\u0431\u043a\u043e\u0432\u0443 \u0437\u0430 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u043f\u043b\u0430\u0442\u0443 Black Swift Pro.<\/li>\n<\/ul>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/geektimes.ru\/post\/249184\/\"> http:\/\/geektimes.ru\/post\/249184\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>     \t<img decoding=\"async\" src=\"\/\/habrastorage.org\/files\/3a7\/83c\/08d\/3a783c08d637468ab021227c3b0548d2.jpg\"\/><br \/>  \u041c\u043e\u044f \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0430\u044f \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f <a href=\"http:\/\/geektimes.ru\/post\/245066\/\">EJTAG: \u0430\u0442\u0442\u0440\u0430\u043a\u0446\u0438\u043e\u043d \u0434\u043b\u044f \u0445\u0430\u043a\u0435\u0440\u043e\u0432<\/a> \u0445\u043e\u0442\u044f \u0438 \u0431\u044b\u043b\u0430 \u0442\u0435\u043f\u043b\u043e \u0432\u0441\u0442\u0440\u0435\u0447\u0435\u043d\u0430 \u043e\u0431\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0441\u0442\u044c\u044e, \u0438\u043c\u0435\u043b\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0451\u0442\u044b: \u043a \u043f\u0440\u0438\u043c\u0435\u0440\u0443, \u0431\u044b\u043b\u0430 \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0443\u0436 \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u043d\u0438\u0437\u043a\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u043f\u043e EJTAG (\u0430\u0436 \u0446\u0435\u043b\u044b\u0445 2 \u041a\u0411\/\u0441!).<br \/>  \u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u044f \u0443\u043c\u0443\u0434\u0440\u0438\u043b\u0441\u044f \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 JTAG \u043f\u043b\u0430\u0442\u044b MR3020 \u0432 \u043f\u043e\u043b\u043d\u0443\u044e \u043d\u0435\u0433\u043e\u0434\u043d\u043e\u0441\u0442\u044c (\u0431\u044b\u043b \u043e\u0442\u043e\u0440\u0432\u0430\u043d \u043f\u0440\u043e\u0432\u043e\u0434 TDI \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043a\u0443\u0441\u043e\u0447\u043a\u043e\u043c SMD-\u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440\u0430 R16). \u0422\u0430\u043a \u043a\u0430\u043a \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u043e\u043b\u043e\u043c\u043a\u0443 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c, \u0442\u043e \u043d\u0435\u0434\u043e\u0447\u0451\u0442\u044b \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u043d\u0435\u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438.<br \/>  \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0434\u043d\u0435\u0439 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u043e\u0442 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044f <a href=\"http:\/\/www.black-swift.ru\">\u043f\u0440\u043e\u0435\u043a\u0442\u0430 Black Swift<\/a> \u0414\u043c\u0438\u0442\u0440\u0438\u044f \u0416\u0435\u0440\u0435\u0431\u043a\u043e\u0432\u0430 \u043f\u043b\u0430\u0442\u0443 Black Swift Pro \u0441 \u0430\u0434\u0430\u043f\u0442\u0435\u0440\u043e\u043c. \u041f\u043b\u0430\u0442\u0430 Black Swift Pro \u0432\u043e \u043c\u043d\u043e\u0433\u043e\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430 MR3020, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u0443 \u043c\u0435\u043d\u044f \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u043f\u0440\u043e EJTAG \u043d\u0430 Black Swift \u0438 \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0440\u043e\u0448\u043b\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0451\u0442\u044b!  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-255488","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/255488","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=255488"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/255488\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=255488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=255488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=255488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}