{"id":128106,"date":"2022-06-10T22:44:14","date_gmt":"2022-06-10T16:44:14","guid":{"rendered":"http:\/\/rcl-radio.ru\/?p=128106"},"modified":"2024-03-20T09:25:20","modified_gmt":"2024-03-20T03:25:20","slug":"%d0%b3%d0%b5%d0%bd%d0%b5%d1%80%d0%b0%d1%82%d0%be%d1%80-ad9833-%d1%87%d0%b0%d1%81%d1%82%d0%be%d1%82%d0%be%d0%bc%d0%b5%d1%80-arduino","status":"publish","type":"post","link":"http:\/\/rcl-radio.ru\/?p=128106","title":{"rendered":"\u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 (AD9833) + \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440 (Arduino)"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"alignright\" src=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2020\/05\/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA-%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0-%D0%BE%D1%82-2020-05-16-191556.png\" width=\"205\" height=\"175\" \/>\u0420\u0430\u043d\u0435\u0435 \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043d\u0430 \u043c\u043e\u0434\u0443\u043b\u0435 AD9833 \u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430, \u043d\u043e \u044d\u0442\u043e \u0431\u044b\u043b\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b, \u043d\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430 \u0432 \u043e\u0434\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435.<\/p>\n<p>AD9833 \u2014 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 \u0441 \u043d\u0438\u0437\u043a\u0438\u043c \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435\u043c. \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 \u0434\u043e 12.5 \u041c\u0413\u0446 \u0441\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u043e\u0439, \u0442\u0440\u0435\u0443\u0433\u043e\u043b\u044c\u043d\u043e\u0439 \u0438 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u044b. \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0440\u0435\u0445\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 SPI.<\/p>\n<div id=\"marketWidget\"><\/div>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u043c\u0438\u043a\u0440\u043e\u0441\u0445\u0435\u043c\u044b:<\/p>\n<ul>\n<li>\u0426\u0438\u0444\u0440\u043e\u0432\u043e\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0438 \u0444\u0430\u0437\u044b.<\/li>\n<li>\u041f\u043e\u0442\u0440\u0435\u0431\u043b\u044f\u0435\u043c\u0430\u044f \u043c\u043e\u0449\u043d\u043e\u0441\u0442\u044c 12.65 \u043c\u0412\u0442 \u043f\u0440\u0438 \u043d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u0438 3 \u0412.<\/li>\n<li>\u0414\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0445 \u0447\u0430\u0441\u0442\u043e\u0442 \u043e\u0442 0 \u041c\u0413\u0446 \u0434\u043e 12.5 \u041c\u0413\u0446.<\/li>\n<li>\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 28 \u0431\u0438\u0442 (0.1 \u0413\u0446 \u043f\u0440\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u0435 \u043e\u043f\u043e\u0440\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 25 \u041c\u0413\u0446).<\/li>\n<li>\u0421\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u044b\u0435, \u0442\u0440\u0435\u0443\u0433\u043e\u043b\u044c\u043d\u044b\u0435 \u0438 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u044b\u0435 \u0432\u044b\u0445\u043e\u0434\u043d\u044b\u0435 \u043a\u043e\u043b\u0435\u0431\u0430\u043d\u0438\u044f.<\/li>\n<li>\u041d\u0430\u043f\u0440\u044f\u0436\u0435\u043d\u0438\u0435 \u043f\u0438\u0442\u0430\u043d\u0438\u044f \u043e\u0442 2.3 \u0412 \u0434\u043e 5.5 \u0412.<\/li>\n<li>\u0422\u0440\u0435\u0445\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 SPI.<\/li>\n<li>\u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0439 \u0442\u0435\u043c\u043f\u0435\u0440\u0430\u0442\u0443\u0440\u043d\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d: \u043e\u0442 \u201340\u00b0C \u0434\u043e +105\u00b0C.<\/li>\n<li>\u041e\u043f\u0446\u0438\u044f \u043f\u043e\u043d\u0438\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f.<\/li>\n<\/ul>\n<p>\u041f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0441\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u044b\u0445 \u0438 \u0442\u0440\u0435\u0443\u0433\u043e\u043b\u044c\u043d\u044b\u0445 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u043e\u0432 \u0430\u043c\u043f\u043b\u0438\u0442\u0443\u0434\u0430 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0435 38\u043c\u0412\u20260,65\u0412. \u041f\u0440\u0438 \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0438\u043c\u043f\u0443\u043b\u044c\u0441\u043e\u0432 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u044b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0441\u0438\u0433\u043d\u0430\u043b \u0443\u0440\u043e\u0432\u043d\u044f TTL.<\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 2-\u0445 \u043a\u043d\u043e\u043f\u043e\u043a \u0438 \u044d\u043d\u043a\u043e\u0434\u0435\u0440\u0430, \u043f\u0440\u0438 \u043d\u0430\u0436\u0430\u0442\u0438\u0438 \u043a\u043d\u043e\u043f\u043a\u0438 \u044d\u043d\u043a\u043e\u0434\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0442\u044c \u0440\u0430\u0437\u0440\u044f\u0434\u044b \u0438 \u043f\u043e\u0432\u043e\u0440\u043e\u0442\u043e\u043c \u0440\u0443\u0447\u043a\u0438 \u044d\u043d\u043a\u043e\u0434\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0447\u0438\u0441\u043b\u043e \u043e\u0442 0 \u0434\u043e 9 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0440\u0430\u0437\u0440\u044f\u0434\u0435. \u041f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0432\u044b\u0445\u043e\u0434 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f, \u043f\u043e\u0441\u043b\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043d\u0443\u0436\u043d\u043e \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043d\u0430\u0436\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 &#171;<strong>\u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 On\/Off<\/strong>&#171;, \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0444\u043e\u0440\u043c\u044b \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043d\u0430\u0436\u0430\u0442\u044c \u043a\u043d\u043e\u043f\u043a\u0443 &#171;\u0424\u043e\u0440\u043c\u0430 \u0441\u0438\u0433\u043d.&#187;. \u0422\u0430\u043a \u0436\u0435 \u043f\u0440\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u0444\u043e\u0440\u043c\u044b \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0432\u044b\u0445\u043e\u0434 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>\u0427\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0438 \u0432 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0438 \u043d\u0435 \u043d\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>\u0413\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0432 \u0434\u0430\u043d\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 \u0432 10 \u041c\u0413\u0446, \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430 \u043e\u0442 0 \u0434\u043e 6,5 \u041c\u0413\u0446.<\/p>\n<p><a href=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-202103-1.png\" class=\"highslide-image\" onclick=\"return hs.expand(this);\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-128108\" src=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-202103-1.png\" alt=\"\" width=\"764\" height=\"222\" srcset=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-202103-1.png 764w, http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-202103-1-200x58.png 200w, http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-202103-1-500x145.png 500w\" sizes=\"auto, (max-width: 764px) 100vw, 764px\" \/><\/a><\/p>\n<ol>\n<li>\u041f\u043e\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430<\/li>\n<li>\u041f\u043e\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430<\/li>\n<li>\u0418\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u0441\u0438\u0433\u043d\u0430\u043b\u0430 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430<\/li>\n<li>\u0424\u043e\u0440\u043c\u0430 \u0441\u0438\u0433\u043d\u0430\u043b\u0430<\/li>\n<\/ol>\n<p><a href=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-224036.png\" class=\"highslide-image\" onclick=\"return hs.expand(this);\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-128109\" src=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-224036.png\" alt=\"\" width=\"805\" height=\"427\" srcset=\"http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-224036.png 805w, http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-224036-200x106.png 200w, http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-224036-500x265.png 500w, http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/06\/\u0421\u043d\u0438\u043c\u043e\u043a-\u044d\u043a\u0440\u0430\u043d\u0430-\u043e\u0442-2022-06-10-224036-768x407.png 768w\" sizes=\"auto, (max-width: 805px) 100vw, 805px\" \/><\/a><\/p>\n<pre><span style=\"color: #434f54;\">\/\/ \u00a0ATMEGA328 16 MHz<\/span>\r\n<span style=\"color: #434f54;\">\/\/ \u00a0PD5 frequency input<\/span>\r\n \r\n<span style=\"color: #434f54;\">\/\/AD9833<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">CS<\/span> \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">PC0<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">MCLK<\/span> \u00a0<span style=\"color: #5e6d03;\">PC1<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">DATA<\/span> \u00a0<span style=\"color: #5e6d03;\">PC2<\/span>\r\n<span style=\"color: #434f54;\">\/\/ ENCODER<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">DT<\/span> \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">PB0<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">CLK<\/span> \u00a0\u00a0<span style=\"color: #5e6d03;\">PB1<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">SW<\/span> \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">PB2<\/span>\r\n<span style=\"color: #434f54;\">\/\/ BUTTON<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">G_ON_OFF<\/span> <span style=\"color: #5e6d03;\">PB3<\/span>\r\n<span style=\"color: #5e6d03;\">#define<\/span> <span style=\"color: #000000;\">FORM<\/span> \u00a0\u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">PB4<\/span>\r\n \r\n \r\n<span style=\"color: #5e6d03;\">#include<\/span> <span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">avr<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">io<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">h<\/span><span style=\"color: #434f54;\">&gt;<\/span>\r\n<span style=\"color: #5e6d03;\">#include<\/span> <span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">util<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #d35400;\">delay<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">h<\/span><span style=\"color: #434f54;\">&gt;<\/span>\r\n<span style=\"color: #5e6d03;\">#include<\/span> <span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">Wire_low<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">h<\/span><span style=\"color: #434f54;\">&gt;<\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #434f54;\">\/\/ <\/span><u><span style=\"color: #434f54;\">http:\/\/forum.rcl-radio.ru\/viewtopic.php?pid=5521#p5521<\/span><\/u>\r\n<span style=\"color: #5e6d03;\">#include<\/span> <span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">Lcd1602_i2c_low<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">h<\/span><span style=\"color: #434f54;\">&gt;<\/span> \u00a0<span style=\"color: #434f54;\">\/\/ <\/span><u><span style=\"color: #434f54;\">http:\/\/rcl-radio.ru\/wp-content\/uploads\/2022\/03\/Lcd1602_i2c_low.zip<\/span><\/u>\r\n \u00a0<span style=\"color: #000000;\">Lcd1602_i2c_low<\/span> <span style=\"color: #000000;\">lcd<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0x27<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ \u0430\u0434\u0440\u0435\u0441 I2C<\/span>\r\n \r\n<span style=\"color: #00979c;\">volatile<\/span> <span style=\"color: #00979c;\">uint8_t<\/span> <span style=\"color: #000000;\">_prevValueAB<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span> \u00a0\u00a0\u00a0\r\n<span style=\"color: #00979c;\">volatile<\/span> <span style=\"color: #00979c;\">uint8_t<\/span> <span style=\"color: #000000;\">_currValueAB<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">volatile<\/span> <span style=\"color: #00979c;\">int16_t<\/span> <span style=\"color: #000000;\">newPosition<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">int<\/span> <span style=\"color: #d35400;\">position<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">999<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">form<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">volatile<\/span> <span style=\"color: #00979c;\">byte<\/span> <span style=\"color: #000000;\">x<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">unsigned<\/span> <span style=\"color: #00979c;\">long<\/span> <span style=\"color: #000000;\">f<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">bool<\/span> <span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">long<\/span> <span style=\"color: #000000;\">fg<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">long<\/span> <span style=\"color: #000000;\">b<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">h_bit<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">l_bit<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #00979c;\">float<\/span> <span style=\"color: #000000;\">k<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0.995265<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u043c \u043f\u043e\u0433\u0440\u0435\u0448\u043d\u043e\u0441\u0442\u044c \u043a\u0432\u0430\u0440\u0446\u0430<\/span>\r\n<span style=\"color: #00979c;\">const<\/span> <span style=\"color: #00979c;\">long<\/span> <span style=\"color: #000000;\">f25<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">25000000<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u043a\u0432\u0430\u0440\u0446\u0430, \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0433\u043e \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u0447\u0430\u0441\u0442\u043e\u0442\u0443 25000000 \u0413\u0446<\/span>\r\n<span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">7<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">;<\/span>\r\n \r\n \r\n<span style=\"color: #00979c;\">int<\/span> <span style=\"color: #5e6d03;\">main<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span> \r\n \u00a0<span style=\"color: #00979c;\">PCICR<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">PCIE0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #00979c;\">PCMSK0<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">PCINT0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">PCINT1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \r\n \u00a0<span style=\"color: #00979c;\">PORTB<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">PB3<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">PB4<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #00979c;\">PORTD<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #5e6d03;\">PD5<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u044e\u0449\u0438\u0439 \u0440\u0435\u0437\u0438\u0441\u0442\u043e\u0440 \u043d\u0430 PD5 (\u0432\u0445\u043e\u0434 T1)<\/span>\r\n \u00a0<span style=\"color: #00979c;\">DDRC<\/span> <span style=\"color: #434f54;\">|=<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">CS<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">MCLK<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">DATA<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">|=<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">MCLK<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">CS<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">DATA<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #d35400;\">_delay_ms<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">500<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">ad_AD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">cli<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #434f54;\">\/\/ TIMER 1 \u00a0<\/span>\r\n \u00a0<span style=\"color: #00979c;\">TCCR1A<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #00979c;\">TCCR1B<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #00979c;\">TCCR1B<\/span> <span style=\"color: #434f54;\">&amp;=<\/span> <span style=\"color: #434f54;\">~<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS12<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS11<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/\u0412\u043d\u0435\u0448\u043d\u0438\u0439 \u0442\u0430\u043a\u0442\u043e\u0432\u044b\u0439 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u043d\u0430 \u0432\u044b\u0432\u043e\u0434\u0435 T1. \u0422\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043e \u0444\u0440\u043e\u043d\u0442\u0443<\/span>\r\n \u00a0<span style=\"color: #00979c;\">TIMSK1<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">TOIE1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0431\u0438\u0442 TOIE1 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 TIMSK1 \u0432\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u0433\u0434\u0430 \u0442\u0430\u0439\u043c\u0435\u0440 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f<\/span>\r\n \u00a0<span style=\"color: #434f54;\">\/\/ TIMER 2<\/span>\r\n \u00a0<span style=\"color: #00979c;\">TCCR2A<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span> \u00a0\u00a0\r\n \u00a0<span style=\"color: #00979c;\">TCCR2B<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span> \u00a0\u00a0\r\n \u00a0<span style=\"color: #00979c;\">OCR2A<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">155<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ 100 Hz <\/span>\r\n \u00a0<span style=\"color: #00979c;\">TCCR2A<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">WGM21<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \r\n \u00a0<span style=\"color: #00979c;\">TCCR2B<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS22<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">|<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS21<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">|<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS20<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \r\n \u00a0<span style=\"color: #00979c;\">TIMSK2<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">OCIE2A<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \r\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">sei<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \r\n \u00a0<span style=\"color: #000000;\">wire_set<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">16000000<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">100000<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0442\u0430\u043a\u0442\u043e\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0430, \u0447\u0430\u0441\u0442\u043e\u0442\u0430 \u0448\u0438\u043d\u044b I2C<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">setInit<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Clear<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u043e\u0447\u0438\u0441\u0442\u043a\u0430 \u044d\u043a\u0440\u0430\u043d\u0430<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">led<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \u00a0<span style=\"color: #434f54;\">\/\/ \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0438 \u044d\u043a\u0440\u0430\u043d\u0430<\/span>\r\n \u00a0<span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">form<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">7<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \r\n<span style=\"color: #5e6d03;\">while<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span> \r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PINB<\/span> <span style=\"color: #434f54;\">&gt;&gt;<\/span> <span style=\"color: #000000;\">SW<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">++<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #d35400;\">_delay_ms<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">300<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PINB<\/span> <span style=\"color: #434f54;\">&gt;&gt;<\/span> <span style=\"color: #000000;\">G_ON_OFF<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span> <span style=\"color: #434f54;\">&amp;&amp;<\/span> <span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #d35400;\">_delay_ms<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">300<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PINB<\/span> <span style=\"color: #434f54;\">&gt;&gt;<\/span> <span style=\"color: #000000;\">G_ON_OFF<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span> <span style=\"color: #434f54;\">&amp;&amp;<\/span> <span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">fg<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #d35400;\">_delay_ms<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">300<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PINB<\/span> <span style=\"color: #434f54;\">&gt;&gt;<\/span> <span style=\"color: #000000;\">FORM<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">form<\/span><span style=\"color: #434f54;\">++<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">form<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">form<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">fg<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #d35400;\">_delay_ms<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">300<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n<span style=\"color: #434f54;\">\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">newPosition<\/span> <span style=\"color: #434f54;\">!=<\/span> <span style=\"color: #d35400;\">position<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #d35400;\">position<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">newPosition<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">]<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">newPosition<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">newPosition<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #000000;\">}<\/span> \u00a0\r\n<span style=\"color: #434f54;\">\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ \u00a0<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">fg<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">11<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">on<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">11<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\"*\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">w<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">7<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">form<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">ad_AD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">13<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">switch<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">form<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">case<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #434f54;\">:<\/span> <span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\"DAC\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0x2028<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">break<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">case<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">:<\/span> <span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\"SIN\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0x2000<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">break<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">case<\/span> <span style=\"color: #000000;\">2<\/span><span style=\"color: #434f54;\">:<\/span> <span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\"TRI\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0x2002<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">break<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">}<\/span>\r\n<span style=\"color: #434f54;\">\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ <\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\"F \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">1000000<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\".\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">100000<\/span><span style=\"color: #434f54;\">%<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">10000<\/span><span style=\"color: #434f54;\">%<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">1000<\/span><span style=\"color: #434f54;\">%<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\".\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #434f54;\">%<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">%<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">f<\/span><span style=\"color: #434f54;\">%<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \u00a0\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \u00a0Hz \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n<span style=\"color: #434f54;\">\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ \u00a0<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">9<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">9<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\"G \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\".\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">7<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\".\"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">8<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">9<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">Curs<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;=<\/span><span style=\"color: #000000;\">50<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintString<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #005c5f;\">\" \"<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">-<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">&gt;<\/span><span style=\"color: #000000;\">100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">times<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">lcd<\/span><span style=\"color: #434f54;\">.<\/span><span style=\"color: #000000;\">PrintInt<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">fg<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">3<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">4<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">5<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">10<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">+<\/span><span style=\"color: #000000;\">a<\/span><span style=\"color: #000000;\">[<\/span><span style=\"color: #000000;\">6<\/span><span style=\"color: #000000;\">]<\/span><span style=\"color: #000000;\">;<\/span>\r\n \r\n \r\n<span style=\"color: #000000;\">}<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #434f54;\">\/\/ end main\/while<\/span>\r\n \r\n<span style=\"color: #5e6d03;\">ISR<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">TIMER1_OVF_vect<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">x<\/span><span style=\"color: #434f54;\">++<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #434f54;\">\/\/ \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u0445 \u043d\u0430 1<\/span>\r\n<span style=\"color: #5e6d03;\">ISR<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">TIMER2_COMPA_vect<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">++<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #000000;\">x<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #00979c;\">TCNT1<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span> \r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #00979c;\">TCCR1B<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS12<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS11<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">101<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #00979c;\">TCCR1B<\/span> <span style=\"color: #434f54;\">&amp;=<\/span> <span style=\"color: #434f54;\">~<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS12<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS11<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">|<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #5e6d03;\">CS10<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #000000;\">f<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">x<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #000000;\">65535<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">+<\/span> <span style=\"color: #00979c;\">TCNT1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">timer2<\/span><span style=\"color: #434f54;\">=<\/span><span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n<span style=\"color: #000000;\">}<\/span> \u00a0\r\n \r\n<span style=\"color: #00979c;\">void<\/span> <span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">data<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span> \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #434f54;\">\/\/ SPI<\/span>\r\n \u00a0<span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">|=<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">MCLK<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">&amp;=<\/span><span style=\"color: #434f54;\">~<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">CS<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">for<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">i<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">15<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #000000;\">i<\/span> <span style=\"color: #434f54;\">&gt;=<\/span> <span style=\"color: #000000;\">0<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #000000;\">i<\/span><span style=\"color: #434f54;\">--<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">|=<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">MCLK<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">data<\/span><span style=\"color: #434f54;\">&gt;&gt;<\/span><span style=\"color: #000000;\">i<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">&amp;<\/span><span style=\"color: #000000;\">0x01<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">==<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">|=<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">DATA<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span><span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">&amp;=<\/span><span style=\"color: #434f54;\">~<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">DATA<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">&amp;=<\/span><span style=\"color: #434f54;\">~<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">MCLK<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #d35400;\">_delay_ms<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span style=\"color: #00979c;\">PORTC<\/span> <span style=\"color: #434f54;\">|=<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">CS<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">}<\/span>\r\n \r\n<span style=\"color: #00979c;\">void<\/span> <span style=\"color: #000000;\">ad_AD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0<span style=\"color: #000000;\">b<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">fg<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #d35400;\">pow<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">2<\/span><span style=\"color: #434f54;\">,<\/span><span style=\"color: #000000;\">28<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">\/<\/span><span style=\"color: #000000;\">f25<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #434f54;\">*<\/span><span style=\"color: #000000;\">k<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">if<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">b<\/span><span style=\"color: #434f54;\">&lt;<\/span><span style=\"color: #000000;\">16383<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">l_bit<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">b<\/span> <span style=\"color: #434f54;\">+<\/span> <span style=\"color: #000000;\">0x4000<\/span> <span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">h_bit<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">0x4000<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">else<\/span><span style=\"color: #000000;\">{<\/span><span style=\"color: #000000;\">h_bit<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">b<\/span><span style=\"color: #434f54;\">&gt;&gt;<\/span><span style=\"color: #000000;\">14<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">+<\/span> <span style=\"color: #000000;\">0x4000<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">l_bit<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">b<\/span> <span style=\"color: #434f54;\">-<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">h_bit<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #000000;\">14<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">+<\/span> <span style=\"color: #000000;\">0x4000<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0x2100<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ 0010 0001 0000 0000 - Reset + DB28<\/span>\r\n \u00a0<span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">l_bit<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ 0100 0000 0000 0000 - Freq0 LSB <\/span>\r\n \u00a0<span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">h_bit<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ 0100 0000 0000 0000 - Freq0 MSB <\/span>\r\n \u00a0<span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0xC000<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ 1100 0000 0000 0000 - Phase0 <\/span>\r\n \u00a0<span style=\"color: #000000;\">WriteAD9833<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">0x2028<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ 0010 0000 0000 0000 - Exit Reset<\/span>\r\n \u00a0<span style=\"color: #000000;\">}<\/span> \r\n \r\n<span style=\"color: #5e6d03;\">ISR<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PCINT0_vect<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span> \r\n \u00a0<span style=\"color: #00979c;\">bool<\/span> <span style=\"color: #000000;\">pinA<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PINB<\/span> <span style=\"color: #434f54;\">&gt;&gt;<\/span> <span style=\"color: #000000;\">DT<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #00979c;\">bool<\/span> <span style=\"color: #000000;\">pinB<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">PINB<\/span> <span style=\"color: #434f54;\">&gt;&gt;<\/span> <span style=\"color: #000000;\">CLK<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0<span style=\"color: #000000;\">_currValueAB<\/span> \u00a0<span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">pinA<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #000000;\">1<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">|<\/span> <span style=\"color: #000000;\">pinB<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0<span style=\"color: #5e6d03;\">switch<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">_prevValueAB<\/span> <span style=\"color: #434f54;\">|<\/span> <span style=\"color: #000000;\">_currValueAB<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">case<\/span> <span style=\"color: #000000;\">0b0001<\/span><span style=\"color: #434f54;\">:<\/span> <span style=\"color: #000000;\">newPosition<\/span><span style=\"color: #434f54;\">++<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">break<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">case<\/span> <span style=\"color: #000000;\">0b0100<\/span><span style=\"color: #434f54;\">:<\/span> <span style=\"color: #000000;\">newPosition<\/span><span style=\"color: #434f54;\">--<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #5e6d03;\">break<\/span><span style=\"color: #000000;\">;<\/span>\r\n \u00a0<span style=\"color: #000000;\">}<\/span>\r\n \u00a0<span style=\"color: #000000;\">_prevValueAB<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">_currValueAB<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">;<\/span> \u00a0\u00a0\u00a0\u00a0\r\n \u00a0<span style=\"color: #000000;\">}<\/span> \u00a0\u00a0\r\n \r\n<span style=\"color: #00979c;\">unsigned<\/span> <span style=\"color: #00979c;\">char<\/span> <span style=\"color: #000000;\">EEPROM_read<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">unsigned<\/span> <span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">uiAddress<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">while<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">EECR<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #5e6d03;\">EEPE<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> \u00a0<span style=\"color: #434f54;\">\/\/ \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 EEPROM <\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EEARH<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">uiAddress<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">0xF0<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 H<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EEARL<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">uiAddress<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">0x0F<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 L<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EECR<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #5e6d03;\">EERE<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ \u0447\u0442\u0435\u043d\u0438\u0435 EEPROM<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #5e6d03;\">return<\/span> <span style=\"color: #00979c;\">EEDR<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0432\u044b\u0432\u043e\u0434 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f<\/span>\r\n<span style=\"color: #000000;\">}<\/span>\r\n \r\n<span style=\"color: #00979c;\">void<\/span> <span style=\"color: #000000;\">EEPROM_write<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">unsigned<\/span> <span style=\"color: #00979c;\">int<\/span> <span style=\"color: #000000;\">uiAddress<\/span><span style=\"color: #434f54;\">,<\/span> <span style=\"color: #00979c;\">unsigned<\/span> <span style=\"color: #00979c;\">char<\/span> <span style=\"color: #000000;\">ucData<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">{<\/span>\r\n \u00a0<span style=\"color: #5e6d03;\">while<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #00979c;\">EECR<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #5e6d03;\">EEPE<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 EEPROM <\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EEARH<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">uiAddress<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">0xF0<\/span><span style=\"color: #000000;\">)<\/span> <span style=\"color: #434f54;\">&lt;&lt;<\/span> <span style=\"color: #000000;\">2<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 H<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EEARL<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">uiAddress<\/span> <span style=\"color: #434f54;\">&amp;<\/span> <span style=\"color: #000000;\">0x0F<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0430\u0434\u0440\u0435\u0441\u0430 L<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EEDR<\/span> <span style=\"color: #434f54;\">=<\/span> <span style=\"color: #000000;\">ucData<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0440\u0435\u0433\u0438\u0441\u0442\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 <\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EECR<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #5e6d03;\">EEMPE<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span><span style=\"color: #434f54;\">\/\/ \u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 EEPROM<\/span>\r\n \u00a0\u00a0\u00a0<span style=\"color: #00979c;\">EECR<\/span> <span style=\"color: #434f54;\">|=<\/span> <span style=\"color: #000000;\">(<\/span><span style=\"color: #000000;\">1<\/span><span style=\"color: #434f54;\">&lt;&lt;<\/span><span style=\"color: #5e6d03;\">EEPE<\/span><span style=\"color: #000000;\">)<\/span><span style=\"color: #000000;\">;<\/span> <span style=\"color: #434f54;\">\/\/ \u0417\u0430\u043f\u0438\u0441\u044c \u0432 EEPROM<\/span>\r\n<span style=\"color: #000000;\">}<\/span>\r\n\r\n<\/pre>\n<p>\u0424\u043e\u0440\u0443\u043c &#8212; <a href=\"http:\/\/forum.rcl-radio.ru\/viewtopic.php?pid=6247#p6247\">http:\/\/forum.rcl-radio.ru\/viewtopic.php?pid=6247#p6247<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0420\u0430\u043d\u0435\u0435 \u043d\u0430 \u0441\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u043d\u0430 \u043c\u043e\u0434\u0443\u043b\u0435 AD9833 \u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430, \u043d\u043e \u044d\u0442\u043e \u0431\u044b\u043b\u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u044b, \u043d\u0430 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0430 \u0438 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u043c\u0435\u0440\u0430 \u0432 \u043e\u0434\u043d\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0435. AD9833 \u2014 \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440 \u0441\u0438\u0433\u043d\u0430\u043b\u043e\u0432 \u0441 \u043d\u0438\u0437\u043a\u0438\u043c \u044d\u043d\u0435\u0440\u0433\u043e\u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435\u043c. \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u044b \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 \u0434\u043e 12.5 \u041c\u0413\u0446 \u0441\u0438\u043d\u0443\u0441\u043e\u0438\u0434\u0430\u043b\u044c\u043d\u043e\u0439, \u0442\u0440\u0435\u0443\u0433\u043e\u043b\u044c\u043d\u043e\u0439 \u0438 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u043e\u0439 \u0444\u043e\u0440\u043c\u044b. \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0442\u0440\u0435\u0445\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u043e\u0433\u043e [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":128108,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[239,15],"tags":[],"class_list":["post-128106","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino","category-15"],"views":11895,"_links":{"self":[{"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/posts\/128106","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=128106"}],"version-history":[{"count":6,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/posts\/128106\/revisions"}],"predecessor-version":[{"id":131762,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/posts\/128106\/revisions\/131762"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=\/wp\/v2\/media\/128108"}],"wp:attachment":[{"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=128106"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=128106"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/rcl-radio.ru\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=128106"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}