<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://wikihandbk.com/ruwiki/index.php?action=history&amp;feed=atom&amp;title=Arduino%3A%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino%2F%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino</id>
	<title>Arduino:Знакомство с Arduino/Знакомство с TFT-модулем Arduino - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://wikihandbk.com/ruwiki/index.php?action=history&amp;feed=atom&amp;title=Arduino%3A%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino%2F%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino"/>
	<link rel="alternate" type="text/html" href="http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;action=history"/>
	<updated>2026-04-11T16:49:27Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=8495794&amp;oldid=prev</id>
		<title>EducationBot в 08:31, 8 июля 2023</title>
		<link rel="alternate" type="text/html" href="http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=8495794&amp;oldid=prev"/>
		<updated>2023-07-08T08:31:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 12:31, 8 июля 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l511&quot;&gt;Строка 511:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 511:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;references /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;references /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Навигационная таблица/Портал/Arduino}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>EducationBot</name></author>
	</entry>
	<entry>
		<id>http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=8494877&amp;oldid=prev</id>
		<title>EducationBot в 07:18, 8 июля 2023</title>
		<link rel="alternate" type="text/html" href="http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=8494877&amp;oldid=prev"/>
		<updated>2023-07-08T07:18:26Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 11:18, 8 июля 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Строка 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{#setlogo:ArduinoCommunityLogo.png}}&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Arduino панель перехода}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Arduino панель перехода}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Перевод от Сubewriter}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Перевод от Сubewriter}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>EducationBot</name></author>
	</entry>
	<entry>
		<id>http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=7735652&amp;oldid=prev</id>
		<title>EducationBot в 08:30, 20 мая 2023</title>
		<link rel="alternate" type="text/html" href="http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=7735652&amp;oldid=prev"/>
		<updated>2023-05-20T08:30:42Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 12:30, 20 мая 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l64&quot;&gt;Строка 64:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 64:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Итак, начинаем скетч. Первым делом объявляем контакты, которые будем использовать, подключаем необходимые библиотеки и создаем экземпляр '''TFT'''-библиотеки:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Итак, начинаем скетч. Первым делом объявляем контакты, которые будем использовать, подключаем необходимые библиотеки и создаем экземпляр '''TFT'''-библиотеки:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l82&quot;&gt;Строка 82:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 82:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/setup()‎|setup()]] запускаем библиотеку при помощи функции begin() и '''«обнуляем»''' экран, заливая его черным цветом – это делается при помощи функции background().&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/setup()‎|setup()]] запускаем библиотеку при помощи функции begin() и '''«обнуляем»''' экран, заливая его черным цветом – это делается при помощи функции background().&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void setup(){&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void setup(){&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   myScreen.begin();   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   myScreen.begin();   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l92&quot;&gt;Строка 92:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 92:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] рисуем линию – это делается функцией line(). Она принимает '''4''' аргумента: стартовые координаты '''X''' и '''Y''', а также конечные координаты '''X''' и '''Y'''. Чтобы нарисовать прямоугольник, воспользуемся функцией rect(). Она тоже принимает '''4''' аргумента: координаты X и Y для левого верхнего угла, а также ширину и высоту (оба – в пикселях). Работа с цветом осуществляется с помощью функций stroke() и fill() – они вызываются перед функциями создания прямоугольников. Функция stroke() меняет цвет линии прямоугольника, т.е. его контур. Функция fill() меняет цвет прямоугольника. Функция noStroke() отменяет рисование контура у всех прямоугольников, которые будут созданы после ее вызова. Если после этого снова вызвать функцию stroke(), то контуры снова начнут рисоваться.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] рисуем линию – это делается функцией line(). Она принимает '''4''' аргумента: стартовые координаты '''X''' и '''Y''', а также конечные координаты '''X''' и '''Y'''. Чтобы нарисовать прямоугольник, воспользуемся функцией rect(). Она тоже принимает '''4''' аргумента: координаты X и Y для левого верхнего угла, а также ширину и высоту (оба – в пикселях). Работа с цветом осуществляется с помощью функций stroke() и fill() – они вызываются перед функциями создания прямоугольников. Функция stroke() меняет цвет линии прямоугольника, т.е. его контур. Функция fill() меняет цвет прямоугольника. Функция noStroke() отменяет рисование контура у всех прямоугольников, которые будут созданы после ее вызова. Если после этого снова вызвать функцию stroke(), то контуры снова начнут рисоваться.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void loop(){&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void loop(){&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   myScreen.stroke(255, 0, 0); // делаем цвет контура красным&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   myScreen.stroke(255, 0, 0); // делаем цвет контура красным&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l117&quot;&gt;Строка 117:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 117:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Никаких контактов объявлять не нужно, а объект '''EsplloraTFT''' создается автоматически.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Никаких контактов объявлять не нужно, а объект '''EsplloraTFT''' создается автоматически.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l156&quot;&gt;Строка 156:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 156:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В примере ниже будет точка, прыгающая по экрану. Сначала мы настроим скетч (так же, как в примере выше), добавим несколько переменных – для того, чтобы с их помощью отслеживать текущие и предыдущие координаты точки, а также следить за ее скоростью и направлением движения.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В примере ниже будет точка, прыгающая по экрану. Сначала мы настроим скетч (так же, как в примере выше), добавим несколько переменных – для того, чтобы с их помощью отслеживать текущие и предыдущие координаты точки, а также следить за ее скоростью и направлением движения.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l191&quot;&gt;Строка 191:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 191:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] сначала обновляем позицию точки, добавляя к переменным для координат '''X''' и '''Y''' значения из переменных для направления. После этого проверяем, есть ли разница между текущими и предыдущими координатами точки. Если разница есть, стираем точку, окрашивая ее в фоновый цвет, а затем рисуем на новых координатах новую точку. Если точка убегает за пределы экрана, реверсируем ее направление.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] сначала обновляем позицию точки, добавляя к переменным для координат '''X''' и '''Y''' значения из переменных для направления. После этого проверяем, есть ли разница между текущими и предыдущими координатами точки. Если разница есть, стираем точку, окрашивая ее в фоновый цвет, а затем рисуем на новых координатах новую точку. Если точка убегает за пределы экрана, реверсируем ее направление.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void loop(){&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void loop(){&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   // обновляем месторасположение точки:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   // обновляем месторасположение точки:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l227&quot;&gt;Строка 227:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 227:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;А вот версия для '''Esplora''':&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;А вот версия для '''Esplora''':&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l290&quot;&gt;Строка 290:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 290:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Далее переходим к [[Arduino:Справочник языка Arduino/setup()‎|setup()]] и указываем здесь статический текст, т.е. текст, который меняться не будет. С помощью функции setTextSize() можно увеличить некоторые символы, тем самым выделив их на фоне другого текста. Динамический текст следует хранить в символьном массиве. Лучше всего для этого подойдет класс String – c его помощью легко обновлять находящийся в массиве текст.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Далее переходим к [[Arduino:Справочник языка Arduino/setup()‎|setup()]] и указываем здесь статический текст, т.е. текст, который меняться не будет. С помощью функции setTextSize() можно увеличить некоторые символы, тем самым выделив их на фоне другого текста. Динамический текст следует хранить в символьном массиве. Лучше всего для этого подойдет класс String – c его помощью легко обновлять находящийся в массиве текст.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l324&quot;&gt;Строка 324:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 324:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] берем текущее время и сохраняем эту цифру в символьный массив. Перед завершением каждого цикла стираем текст, который был написан ранее, чтобы надписи не наслаивались друг на друга.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] берем текущее время и сохраняем эту цифру в символьный массив. Перед завершением каждого цикла стираем текст, который был написан ранее, чтобы надписи не наслаивались друг на друга.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void loop(){&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;void loop(){&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     // берем истекшее время:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     // берем истекшее время:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l343&quot;&gt;Строка 343:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 343:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Код для '''Esplora''':&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Код для '''Esplora''':&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l392&quot;&gt;Строка 392:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 392:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Будучи прочитанным, изображение будет показано на указанных вами координатах. В данном случае оно начнет рисоваться с левого верхнего края экрана.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Будучи прочитанным, изображение будет показано на указанных вами координатах. В данном случае оно начнет рисоваться с левого верхнего края экрана.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// подключаем необходимые библиотеки:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// подключаем необходимые библиотеки:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l453&quot;&gt;Строка 453:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 453:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Для '''Esplora''':&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Для '''Esplora''':&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; enclose=&quot;div&lt;/del&gt;&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// подключаем необходимые библиотеки:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// подключаем необходимые библиотеки:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;#include &amp;lt;SPI.h&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>EducationBot</name></author>
	</entry>
	<entry>
		<id>http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=21089&amp;oldid=prev</id>
		<title>Myagkij: Замена текста — «&lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot;&gt;» на «&lt;syntaxhighlight lang=&quot;c&quot; line=&quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&quot; enclose=&quot;div&quot;&gt;»</title>
		<link rel="alternate" type="text/html" href="http://wikihandbk.com/ruwiki/index.php?title=Arduino:%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_Arduino/%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE_%D1%81_TFT-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5%D0%BC_Arduino&amp;diff=21089&amp;oldid=prev"/>
		<updated>2016-12-13T21:44:05Z</updated>

		<summary type="html">&lt;p&gt;Замена текста — «&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot;&amp;gt;» на «&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{#setlogo:ArduinoCommunityLogo.png}}&lt;br /&gt;
{{Arduino панель перехода}}&lt;br /&gt;
{{Перевод от Сubewriter}}&lt;br /&gt;
{{Myagkij-редактор}}&lt;br /&gt;
&lt;br /&gt;
=Знакомство с TFT-модулем Arduino&amp;lt;ref&amp;gt;[https://www.arduino.cc/en/Guide/TFT Getting Started with the Arduino TFT Screen // Retired]&amp;lt;/ref&amp;gt;=&lt;br /&gt;
&lt;br /&gt;
'''TFT-модуль Arduino''' – это '''TFT LCD''' дисплей с функцией подсветки и слотом для '''SD'''-карты (она расположен сзади). На этом дисплее можно рисовать текст, изображения и различные фигуры, и все это делается при помощи [https://www.arduino.cc/en/Reference/TFTLibrary библиотеки TFT].&lt;br /&gt;
&lt;br /&gt;
[[File:ImageOnTFT_1.jpg|center]]&lt;br /&gt;
&lt;br /&gt;
Распиновка '''TFT'''-модуля '''Arduino''' выполнена таким образом, чтобы соответствовать контактам на сокете '''Arduino Esplora''' и '''Arduino Robot'''. Впрочем, его можно использовать и с любой другой платой '''Arduino'''.&lt;br /&gt;
&lt;br /&gt;
Библиотека '''TFT''' уже включена в '''IDE Arduino''' версии '''1.0.5''' и выше.&lt;br /&gt;
&lt;br /&gt;
== Библиотека ==&lt;br /&gt;
&lt;br /&gt;
'''Библиотека Arduino TFT''' – это расширенная версия библиотек [https://github.com/adafruit/Adafruit-GFX-Library Adafruit GFX] и [https://github.com/adafruit/Adafruit-ST7735-Library Adafruit STL7735]. Библиотека '''GFX''' отвечает за функции рисования, а '''STL7735''' – за функции, характерные для экрана, которым оснащен '''TFT'''-модуль '''Arduino'''. Сверх этого разработчиками '''Arduino''' были внесены специальные дополнения, чтобы библиотека '''TFT''' работала максимально похоже на '''Processing API'''.&lt;br /&gt;
&lt;br /&gt;
'''Библиотека TFT''' обладает обратной совместимостью, благодаря чему вы по-прежнему можете пользоваться функциями '''Adafruit''', описанными [https://learn.adafruit.com/adafruit-gfx-graphics-library/overview здесь].&lt;br /&gt;
&lt;br /&gt;
Кроме того, библиотека '''TFT''' полагается на [https://www.arduino.cc/en/Reference/SPI библиотеку SPI], поэтому ее нужно подключать ко всем скетчам, где используется '''TFT'''-модуль. Если вы собираетесь использовать '''SD'''-карту, то вам, к тому же, нужно будет подключить [https://www.arduino.cc/en/Reference/SD библиотеку SD].&lt;br /&gt;
&lt;br /&gt;
== Особенности экрана ==&lt;br /&gt;
&lt;br /&gt;
По умолчанию экран ориентирован так, что его ширина больше, чем высота. Верх экрана – это там, где находится надпись '''«SD CARD»'''. В таком положении ширина экрана составляет '''160 пикселей''', а высота – '''128 пикселей'''.&lt;br /&gt;
&lt;br /&gt;
Чтобы понять, что такое координаты экрана, представьте решетку. Каждый квадратик в этой решетке – это пиксель, и координаты позволяют определить месторасположение этого пикселя, а также любого другого пикселя на экране. Точка в левом верхнем углу экрана имеет координаты '''«0, 0»'''. Если бы эта точка переместилась в правый верхний угол экрана, у нее были бы координаты '''«0, 159»'''. Если в левый нижний угол – '''«127, 0»'''. Если в правый нижний – '''«127, 159»'''.&lt;br /&gt;
&lt;br /&gt;
Впрочем, экран можно использовать и в вертикальном (его также называют '''«портретным»''') режиме, и это делается вызовом функции setRotation(0). После того, как вы вызовете эту функцию, оси '''X''' и '''Y''' поменяются местами, а функции screen.width() и screen.height() – ролями.&lt;br /&gt;
&lt;br /&gt;
== Цвета ==&lt;br /&gt;
&lt;br /&gt;
Экран способен показывать '''16-битный цвет''': глубина цвета для синего и красного составляет '''5 бит (32 уровня)''', а для зеленого – '''6 бит (64 уровня)'''. Все вместе – как раз '''16 бит'''. Чтобы оставаться совместимой с другими приложениями, библиотека работает с '''8-битной глубиной цвета''' (для всех трех каналов – синего, красного и зеленого). Следовательно, цветовым диапазоном для всех трех цветов будет '''«0-255»''' (потому что '''8 бит''' – это '''256 уровней'''). Таким образом, библиотека как бы подтягивает '''5''' (для синего), '''5''' (для красного) и '''6''' (для зеленого) бит до необходимых '''8 бит'''.&lt;br /&gt;
&lt;br /&gt;
== SPI-интерфейс – аппаратный и программный ==&lt;br /&gt;
&lt;br /&gt;
Использование экрана можно настроить двумя способами. Первый – через аппаратный '''SPI'''-интерфейс '''Arduino'''. Второй – через ручное объявление всех необходимых контактов. Функциональной разницы между двумя этими методами нет, но если использовать аппаратный '''SPI'''-интерфейс, рисование происходит значительно быстрее.&lt;br /&gt;
&lt;br /&gt;
Если вы планируете работать с '''SD'''-картой, то должны использовать именно аппаратный '''SPI'''-интерфейс.&lt;br /&gt;
&lt;br /&gt;
Все примеры ниже написаны для аппаратного '''SPI'''-интерфейса.&lt;br /&gt;
&lt;br /&gt;
== Подключение экрана ==&lt;br /&gt;
&lt;br /&gt;
[[File:GLCD_pinUse_2.png|center]]&lt;br /&gt;
&lt;br /&gt;
=== Подключение к Esplora ===&lt;br /&gt;
&lt;br /&gt;
Сокет для '''TFT'''-модуля находится в самом центре '''Esplora'''. Вставьте модуль в сокет таким образом, чтобы синяя надпись '''«SD CARD»''' была рядом с '''USB'''-портом.&lt;br /&gt;
&lt;br /&gt;
[[File:Esplora_GTFT_3.png|center]]&lt;br /&gt;
&lt;br /&gt;
=== Подключение к другим Arduino ===&lt;br /&gt;
&lt;br /&gt;
Чтобы подключить '''TFT'''-модуль к другой плате '''Arduino''', читайте [http://www.arduino.cc/en/Guide/TFTtoBoards это руководство].&lt;br /&gt;
&lt;br /&gt;
== Пишем первый скетч ==&lt;br /&gt;
&lt;br /&gt;
Для начала попробуем написать скетч, который нарисует линию, а затем два разноцветных горизонтальных прямоугольника.&lt;br /&gt;
&lt;br /&gt;
Сначала будут описаны инструкции для '''Uno''', '''Leonardo''' и других подобных плат. Инструкции для '''Esplora''' будут описаны чуть ниже.&lt;br /&gt;
&lt;br /&gt;
Итак, начинаем скетч. Первым делом объявляем контакты, которые будем использовать, подключаем необходимые библиотеки и создаем экземпляр '''TFT'''-библиотеки:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define CS   10&lt;br /&gt;
#define DC   9&lt;br /&gt;
#define RESET  8  &lt;br /&gt;
&lt;br /&gt;
// объявляем контакты для Leonardo:&lt;br /&gt;
// #define CS   7&lt;br /&gt;
// #define DC   0&lt;br /&gt;
// #define RESET  1 &lt;br /&gt;
&lt;br /&gt;
TFT myScreen = TFT(CS, DC, RESET);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В блоке [[Arduino:Справочник языка Arduino/setup()‎|setup()]] запускаем библиотеку при помощи функции begin() и '''«обнуляем»''' экран, заливая его черным цветом – это делается при помощи функции background().&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
void setup(){&lt;br /&gt;
  myScreen.begin();  &lt;br /&gt;
  myScreen.background(0,0,0);  // заливаем экран черным цветом&lt;br /&gt;
  delay(1000);  // пауза для драматического эффекта&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] рисуем линию – это делается функцией line(). Она принимает '''4''' аргумента: стартовые координаты '''X''' и '''Y''', а также конечные координаты '''X''' и '''Y'''. Чтобы нарисовать прямоугольник, воспользуемся функцией rect(). Она тоже принимает '''4''' аргумента: координаты X и Y для левого верхнего угла, а также ширину и высоту (оба – в пикселях). Работа с цветом осуществляется с помощью функций stroke() и fill() – они вызываются перед функциями создания прямоугольников. Функция stroke() меняет цвет линии прямоугольника, т.е. его контур. Функция fill() меняет цвет прямоугольника. Функция noStroke() отменяет рисование контура у всех прямоугольников, которые будут созданы после ее вызова. Если после этого снова вызвать функцию stroke(), то контуры снова начнут рисоваться.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
void loop(){&lt;br /&gt;
  myScreen.stroke(255, 0, 0); // делаем цвет контура красным&lt;br /&gt;
  myScreen.line(0, 10, myScreen.width(), 10); // рисуем на экране линию&lt;br /&gt;
  delay(1000);&lt;br /&gt;
&lt;br /&gt;
  myScreen.noStroke(); // не рисуем контур для нижеследующих прямоугольников&lt;br /&gt;
  myScreen.fill(0,255,0); // делаем цвет прямоугольника зеленым&lt;br /&gt;
  myScreen.rect(0,20,myScreen.width(),10); // рисуем прямоугольник&lt;br /&gt;
  delay(1000);&lt;br /&gt;
&lt;br /&gt;
  myScreen.fill(0,0,255); // делаем цвет прямоугольника синим&lt;br /&gt;
  myScreen.stroke(255,255,255); // рисуем для прямоугольника белый контур&lt;br /&gt;
  myScreen.rect(0,45,myScreen.width(),45); // рисуем более толстый прямоугольник&lt;br /&gt;
  delay(1000);&lt;br /&gt;
&lt;br /&gt;
  myScreen.background(0,0,0); // перед тем, как начать снова, очищаем экран&lt;br /&gt;
  delay(1000); &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Если вы используете '''Esplora''', структура скетча будет той же самой. Поскольку '''Esplora''' имеет сокет под '''TFT'''-модуль, контакты для дисплея – фиксированные. Кроме того, вы можете обращаться к дисплею, подключенному к '''Esplora''', через объект ''EsploraTFT''.&lt;br /&gt;
&lt;br /&gt;
Никаких контактов объявлять не нужно, а объект '''EsplloraTFT''' создается автоматически.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
#include &amp;lt;Esplora.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void setup(){&lt;br /&gt;
  EsploraTFT.begin();  &lt;br /&gt;
  EsploraTFT.background(0,0,0);  // заливаем экран черным цветом&lt;br /&gt;
  delay(1000);  // пауза для драматического эффекта&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop(){&lt;br /&gt;
  EsploraTFT.stroke(255, 0, 0); // делаем цвет линии красным&lt;br /&gt;
  EsploraTFT.line(0, 10, EsploraLCD.width(), 10); // рисуем линию на экране&lt;br /&gt;
  delay(1000);&lt;br /&gt;
&lt;br /&gt;
  EsploraTFT.noStroke(); //  у следующего прямоугольника контур не рисуем&lt;br /&gt;
  EsploraTFT.fill(0,255,0); //  делаем цвет прямоугольника зеленым&lt;br /&gt;
  EsploraTFT.rect(0,20,EsploraTFT.width(),20); //  рисуем прямоугольник&lt;br /&gt;
  delay(1000);&lt;br /&gt;
&lt;br /&gt;
  EsploraTFT.fill(0,0,255); // делаем следующий прямоугольник синим&lt;br /&gt;
  EsploraTFT.stroke(255,255,255); // добавляем ему белый контур&lt;br /&gt;
  EsploraTFT.rect(0,45,EsploraTFT.width(),50); // рисуем более толстый прямоугольник&lt;br /&gt;
  delay(1000);&lt;br /&gt;
&lt;br /&gt;
  EsploraTFT.background(0,0,0); // очищаем экран перед тем, как начать заново&lt;br /&gt;
  delay(1000); &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Перемещение объектов по экрану ==&lt;br /&gt;
&lt;br /&gt;
Чтобы создать иллюзию движения, объекты нужно рисовать и тут же стирать, а потом снова рисовать, но уже в другом месте. Если вы используете Processing на мощном компьютере, то можете рисовать объекты с помощью функции draw() и затем стирать их функцией background(), а после снова рисовать эти объекты функцией draw(), но уже на новых позициях. '''Arduino''', однако, работает не так быстро – ей нужно некоторое время, чтобы очистить экран вызовом функции background() из библиотеки '''TFT'''.&lt;br /&gt;
&lt;br /&gt;
Таким образом, чтобы создать иллюзию движения, мы будем при каждом проходе через [[Arduino:Справочник языка Arduino/loop()|loop()]] проверять, двигается ли объект. Если двигается, то мы заливаем объект фоновым цветом, а затем перерисовываем его в новом месте. Таким образом, мы не обновляем все пиксели на экране, но иллюзия движения при этом все равно остается.&lt;br /&gt;
&lt;br /&gt;
В примере ниже будет точка, прыгающая по экрану. Сначала мы настроим скетч (так же, как в примере выше), добавим несколько переменных – для того, чтобы с их помощью отслеживать текущие и предыдущие координаты точки, а также следить за ее скоростью и направлением движения.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define CS   10&lt;br /&gt;
#define DC   9&lt;br /&gt;
#define RESET  8  &lt;br /&gt;
&lt;br /&gt;
// контакты для Leonardo&lt;br /&gt;
// #define CS   7&lt;br /&gt;
// #define DC   0&lt;br /&gt;
// #define RESET  1 &lt;br /&gt;
&lt;br /&gt;
TFT myScreen = TFT(CS, DC, RESET);&lt;br /&gt;
&lt;br /&gt;
// начальная позиция точки в середине экрана:&lt;br /&gt;
int xPos = 80;&lt;br /&gt;
int yPos = 64;&lt;br /&gt;
&lt;br /&gt;
// направление и скорость:&lt;br /&gt;
int xDir = 1;&lt;br /&gt;
int yDir = 1;&lt;br /&gt;
&lt;br /&gt;
// переменные для отслеживания месторасположения точки:&lt;br /&gt;
int xPrev = xPos;&lt;br /&gt;
int yPrev = yPos;&lt;br /&gt;
&lt;br /&gt;
void setup(){&lt;br /&gt;
  myScreen.begin();  &lt;br /&gt;
  myScreen.background(0,0,0); // очищаем экран&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] сначала обновляем позицию точки, добавляя к переменным для координат '''X''' и '''Y''' значения из переменных для направления. После этого проверяем, есть ли разница между текущими и предыдущими координатами точки. Если разница есть, стираем точку, окрашивая ее в фоновый цвет, а затем рисуем на новых координатах новую точку. Если точка убегает за пределы экрана, реверсируем ее направление.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
void loop(){&lt;br /&gt;
  // обновляем месторасположение точки:&lt;br /&gt;
  xPos = xPos + xDir;&lt;br /&gt;
  yPos = yPos + yDir;&lt;br /&gt;
&lt;br /&gt;
  // проверяем, отличается ли текущая локация от предыдущей:&lt;br /&gt;
  if(xPos != xPrev || yPos != yPrev){&lt;br /&gt;
    myScreen.stroke(0,0,0); // делаем цвет точки черным &lt;br /&gt;
    myScreen.point(xPrev, yPrev); // закрашиваем точку, находящуюся на прежних координатах &lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // рисуем точку на текущих координатах:&lt;br /&gt;
  myScreen.stroke(255,255,255);&lt;br /&gt;
  myScreen.point(xPos, yPos);&lt;br /&gt;
&lt;br /&gt;
  // если координаты X или Y вышли за пределы экрана, реверсируем направление:&lt;br /&gt;
  if(xPos &amp;gt;= 160 || xPos &amp;lt;= 0){&lt;br /&gt;
    xDir = xDir*-1;&lt;br /&gt;
  }&lt;br /&gt;
  if(yPos &amp;gt;= 128 || yPos &amp;lt;= 0){&lt;br /&gt;
    yDir = yDir*-1;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // обновляем предыдущее расположение точки:&lt;br /&gt;
  xPrev=xPos;&lt;br /&gt;
  yPrev=yPos;&lt;br /&gt;
&lt;br /&gt;
  // делаем задержку в 33 миллисекунды – это значит, что экран будет обновляться 30 раз в секунду:&lt;br /&gt;
  delay(33);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А вот версия для '''Esplora''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
#include &amp;lt;Esplora.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
// начальная позиция точки (в середине экрана):&lt;br /&gt;
int xPos = 80;&lt;br /&gt;
int yPos = 64;&lt;br /&gt;
&lt;br /&gt;
// направление движения и скорость:&lt;br /&gt;
int xDir = 1;&lt;br /&gt;
int yDir = 1;&lt;br /&gt;
&lt;br /&gt;
// переменные для отслеживания месторасположения точки:&lt;br /&gt;
int xPrev, yPrev;&lt;br /&gt;
&lt;br /&gt;
void setup(){&lt;br /&gt;
  EsploraTFT.begin();  &lt;br /&gt;
  EsploraTFT.background(0,0,0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop(){&lt;br /&gt;
  // обновляем месторасположение точки:&lt;br /&gt;
  xPos = xPos + xDir;&lt;br /&gt;
  yPos = yPos + yDir;&lt;br /&gt;
&lt;br /&gt;
  // проверяем, отличается ли текущее месторасположение от предыдущего:&lt;br /&gt;
  if(xPos != xPrev || yPos != yPrev){&lt;br /&gt;
    EsploraTFT.stroke(0,0,0); // делаем цвет строки черным &lt;br /&gt;
    EsploraTFT.point(xPrev, yPrev); // закрашиваем точку на предыдущих координатах &lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // рисуем точку на текущих координатах: EsploraTFT.stroke(255,255,255);&lt;br /&gt;
  EsploraTFT.point(xPos, yPos);&lt;br /&gt;
&lt;br /&gt;
  // если координаты X или Y находятся за пределами экрана, реверсируем направление точки:&lt;br /&gt;
  if(xPos &amp;gt;= 160 || xPos &amp;lt;= 0){&lt;br /&gt;
    xDir = xDir*-1;&lt;br /&gt;
  }&lt;br /&gt;
  if(yPos &amp;gt;= 128 || yPos &amp;lt;= 0){&lt;br /&gt;
    yDir = yDir*-1;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // обновляем предыдущее расположение точки:&lt;br /&gt;
  xPrev=xPos;&lt;br /&gt;
  yPrev=yPos;&lt;br /&gt;
&lt;br /&gt;
  // небольшая пауза:&lt;br /&gt;
  delay(33);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Рисуем текст==&lt;br /&gt;
&lt;br /&gt;
В библиотеку '''TFT''' уже встроен шрифт, с помощью которого на экране можно рисовать текст. По умолчанию ширина символов составляет '''5 пикселей''', а высота – '''8 пикселей'''. Впрочем, эти размеры можно поменять на '''10x16''', '''15x24''' и '''20х32'''. &lt;br /&gt;
&lt;br /&gt;
Дополнительную информацию о возможностях шрифта читайте в [https://learn.adafruit.com/adafruit-gfx-graphics-library/graphics-primitives этой статье о графических примитивах на сайте Adafruit].&lt;br /&gt;
&lt;br /&gt;
В скетче-примере ниже мы создадим простенький счетчик, меняющий цифры на экране каждые полсекунды. Как и в других примерах, в самом начале – т.е. перед тем, как приступать к блоку [[Arduino:Справочник языка Arduino/setup()‎|setup()]] – мы подключим к скетчу необходимые библиотеки и переменные.&lt;br /&gt;
&lt;br /&gt;
Далее переходим к [[Arduino:Справочник языка Arduino/setup()‎|setup()]] и указываем здесь статический текст, т.е. текст, который меняться не будет. С помощью функции setTextSize() можно увеличить некоторые символы, тем самым выделив их на фоне другого текста. Динамический текст следует хранить в символьном массиве. Лучше всего для этого подойдет класс String – c его помощью легко обновлять находящийся в массиве текст.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define CS   10&lt;br /&gt;
#define DC   9&lt;br /&gt;
#define RESET  8   &lt;br /&gt;
&lt;br /&gt;
// контакты для Leonardo:&lt;br /&gt;
// #define CS   7&lt;br /&gt;
// #define DC   0&lt;br /&gt;
// #define RESET  1 &lt;br /&gt;
&lt;br /&gt;
TFT myScreen = TFT(CS, DC, RESET);&lt;br /&gt;
&lt;br /&gt;
// переменная для отслеживания истекшего времени:&lt;br /&gt;
int counter = 0;&lt;br /&gt;
// символьный массив, из которого будут браться данные для отображения времени:&lt;br /&gt;
char printout[4];&lt;br /&gt;
&lt;br /&gt;
void setup(){&lt;br /&gt;
  myScreen.begin();  &lt;br /&gt;
  myScreen.background(0,0,0); // очищаем экран&lt;br /&gt;
  myScreen.stroke(255,0,255);&lt;br /&gt;
  // Статический текст:&lt;br /&gt;
  myScreen.text(&amp;quot;Running for&amp;quot;,0,0);&lt;br /&gt;
  myScreen.text(&amp;quot;seconds&amp;quot;,0,30);  &lt;br /&gt;
  // Увеличиваем размер экрана для текста в loop(): &lt;br /&gt;
  myScreen.setTextSize(3);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В блоке [[Arduino:Справочник языка Arduino/loop()|loop()]] берем текущее время и сохраняем эту цифру в символьный массив. Перед завершением каждого цикла стираем текст, который был написан ранее, чтобы надписи не наслаивались друг на друга.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
void loop(){&lt;br /&gt;
    // берем истекшее время:&lt;br /&gt;
    counter = millis();&lt;br /&gt;
    // конвертируем его в строку:&lt;br /&gt;
    String elapsedTime = String(counter/1000);&lt;br /&gt;
    // добавляем в массив:&lt;br /&gt;
    elapsedTime.toCharArray(printout,4);&lt;br /&gt;
    // показываем и стираем:&lt;br /&gt;
    myScreen.stroke(255,255,255);&lt;br /&gt;
    myScreen.text(printout,0,10);&lt;br /&gt;
    delay(1000);&lt;br /&gt;
    myScreen.stroke(0,0,0);&lt;br /&gt;
    myScreen.text(printout,0,10);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Код для '''Esplora''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
#include &amp;lt;Esplora.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
// переменная для отслеживания истекшего времени:&lt;br /&gt;
long counter = 0;&lt;br /&gt;
// символьный массив, из которого будут браться данные для отображения времени:&lt;br /&gt;
char printout[4];&lt;br /&gt;
&lt;br /&gt;
void setup(){&lt;br /&gt;
  EsploraTFT.begin();  &lt;br /&gt;
  EsploraTFT.background(0,0,0); // очищаем экран&lt;br /&gt;
  EsploraTFT.stroke(255,0,255);&lt;br /&gt;
  // Статический текст:&lt;br /&gt;
  EsploraTFT.text(&amp;quot;Running for&amp;quot;,0,0);&lt;br /&gt;
  EsploraTFT.text(&amp;quot;seconds&amp;quot;,0,30);  &lt;br /&gt;
  // увеличиваем размер шрифта для текста в loop(): &lt;br /&gt;
  EsploraTFT.setTextSize(3);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop(){&lt;br /&gt;
    // берем истекшее время:&lt;br /&gt;
    counter = millis();&lt;br /&gt;
    // конвертируем его в строку:&lt;br /&gt;
    String elapsedTime = String(counter/1000);&lt;br /&gt;
    // добавляем в массив:&lt;br /&gt;
    elapsedTime.toCharArray(printout,4);&lt;br /&gt;
    // показываем и стираем:&lt;br /&gt;
    EsploraTFT.stroke(255,255,255);&lt;br /&gt;
    EsploraTFT.text(printout,0,10);&lt;br /&gt;
    delay(1000);&lt;br /&gt;
    EsploraTFT.stroke(0,0,0);&lt;br /&gt;
    EsploraTFT.text(printout,0,10);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Рисуем изображение с SD-карты==&lt;br /&gt;
&lt;br /&gt;
В библиотеке '''TFT''' есть функционал для считывания с '''SD'''-карты '''BMP'''-файлов и их отображения на дисплее. Разрешение этих изображений может быть больше или меньше разрешения '''TFT'''-дисплея ('''160x128'''), однако в языке '''Arduino''' нет функции для того, чтобы подгонять показываемое изображение под экран. Таким образом, перед тем, как загружать на '''SD'''-карту какие-либо изображения, их нужно сначала вручную подогнать под нужное разрешение.&lt;br /&gt;
&lt;br /&gt;
В примере ниже будет использован '''BMP'''-файл '''''«arduino.bmp»''''' c разрешением '''160х128''', хранящийся в корневой директории '''SD'''-карты. Соответственно, когда этот файл будет прочитан библиотекой и выведен на экран, он займет всю его площадь.&lt;br /&gt;
&lt;br /&gt;
Вдобавок к библиотекам, которые вы указывали ранее (т.е. '''SPI''' и '''TFT'''), вам нужно будет также добавить библиотеку '''SD'''. Кроме того, для '''SD'''-слота нужно будет указать '''CS'''-контакт.&lt;br /&gt;
&lt;br /&gt;
Для загрузки изображения используется класс '''PImage'''. Кроме того, с его помощью можно проверять, может ли файл быть прочитан библиотекой.&lt;br /&gt;
&lt;br /&gt;
Будучи прочитанным, изображение будет показано на указанных вами координатах. В данном случае оно начнет рисоваться с левого верхнего края экрана.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
// подключаем необходимые библиотеки:&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
#include &amp;lt;SD.h&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;br /&gt;
&lt;br /&gt;
// Контакты для Uno: &lt;br /&gt;
#define SD_CS  11&lt;br /&gt;
#define LCD_CS 10&lt;br /&gt;
#define DC    9&lt;br /&gt;
#define RESET    8  &lt;br /&gt;
&lt;br /&gt;
// Контакты для Leonardo:&lt;br /&gt;
// #define SD_CS  8&lt;br /&gt;
// #define LCD_CS 7&lt;br /&gt;
// #define DC   0&lt;br /&gt;
// #define RESET  1&lt;br /&gt;
&lt;br /&gt;
TFT myScreen = TFT(LCD_CS, DC, RESET);&lt;br /&gt;
&lt;br /&gt;
// эта переменная будет представлять изображение, которое будет выведено на экран:&lt;br /&gt;
PImage image;&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // Инициируем последовательный порт:&lt;br /&gt;
  Serial.begin(9600);&lt;br /&gt;
  while (!Serial) {&lt;br /&gt;
    // ждем открытия порта (нужно для Leonardo)&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // пытаемся получить доступ к SD-карте:&lt;br /&gt;
  Serial.print(&amp;quot;Initializing SD card...&amp;quot;);  // &amp;quot;Инициализация SD-карты...&amp;quot;&lt;br /&gt;
  if (!SD.begin(SD_CS)) {&lt;br /&gt;
    Serial.println(&amp;quot;failed!&amp;quot;);  // &amp;quot;Неуспешно!&amp;quot;&lt;br /&gt;
    return;&lt;br /&gt;
  }&lt;br /&gt;
  Serial.println(&amp;quot;OK!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  // Инициализируем и очищаем LCD-экран:&lt;br /&gt;
  myScreen.begin();&lt;br /&gt;
  myScreen.background(255, 255, 255);&lt;br /&gt;
&lt;br /&gt;
  // загружаем изображение с SD-карты:&lt;br /&gt;
  image = myScreen.loadImage(&amp;quot;arduino.bmp&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  // проверяем, правильно ли загрузилось изображение:&lt;br /&gt;
  if (image.isValid() != true) {&lt;br /&gt;
    Serial.println(&amp;quot;error while loading arduino.bmp&amp;quot;);  //  &amp;quot;ошибка при загрузке arduino.bmp&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // рисуем изображение на экране:&lt;br /&gt;
  myScreen.image(image, 0, 0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop(){&lt;br /&gt;
// тут ничего не происходит&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для '''Esplora''':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot; line=&amp;quot;GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;&lt;br /&gt;
// подключаем необходимые библиотеки:&lt;br /&gt;
#include &amp;lt;SPI.h&amp;gt;&lt;br /&gt;
#include &amp;lt;SD.h&amp;gt;&lt;br /&gt;
#include &amp;lt;TFT.h&amp;gt; // библиотека для используемого устройства (т.е. для TFT-модуля)&lt;br /&gt;
#include &amp;lt;Esplora.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
// CS-контакт (т.е. контакт для сигнала «выбор кристалла») для SD-карты:&lt;br /&gt;
#define SD_CS    8&lt;br /&gt;
&lt;br /&gt;
// эта переменная для изображения, которое будет нарисовано:&lt;br /&gt;
PImage image;&lt;br /&gt;
&lt;br /&gt;
void setup() {&lt;br /&gt;
  // инициализируем последовательный порт:&lt;br /&gt;
  Serial.begin(9600);&lt;br /&gt;
  while (!Serial) {&lt;br /&gt;
    // ждем открытия последовательного порта&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // пытаемся получить доступ к SD-карте&lt;br /&gt;
  Serial.print(&amp;quot;Initializing SD card...&amp;quot;); // &amp;quot;Инициализация SD-карты...&amp;quot;&lt;br /&gt;
  if (!SD.begin(SD_CS)) {&lt;br /&gt;
    Serial.println(&amp;quot;failed!&amp;quot;); // &amp;quot;Неуспешно!&amp;quot;&lt;br /&gt;
    return;&lt;br /&gt;
  }&lt;br /&gt;
  Serial.println(&amp;quot;OK!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  // инициализируем и очищаем LCD-экран:&lt;br /&gt;
  EsploraTFT.begin();&lt;br /&gt;
  EsploraTFT.background(255, 255, 255);&lt;br /&gt;
&lt;br /&gt;
  // загружаем изображение с SD-карты:&lt;br /&gt;
  image = EsploraTFT.loadImage(&amp;quot;arduino.bmp&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  // проверяем, правильно ли загрузилось изображение:&lt;br /&gt;
  if (image.isValid() != true) {&lt;br /&gt;
    Serial.println(&amp;quot;error while loading arduino.bmp&amp;quot;); // &amp;quot;ошибка при загрузке arduino.bmp&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  // рисуем изображение на экране:&lt;br /&gt;
  EsploraTFT.image(image, 0, 0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void loop(){&lt;br /&gt;
// здесь ничего не происходит&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Что дальше ==&lt;br /&gt;
&lt;br /&gt;
Теперь, когда мы разобрались с базовым функционалом '''TFT'''-модуля, можно приступить к более углубленному изучению темы. [https://www.arduino.cc/en/Reference/TFTLibrary Здесь] можно почитать об '''API''' библиотеки '''TFT''' и найти другие скетчи-примеры. [http://arduino.cc/en/Main/GTFT Здесь] можно более подробно почитать о различных компонентах дисплея. [https://learn.adafruit.com/adafruit-gfx-graphics-library/overview Здесь] можно прочесть о функциях графической библиотеки '''Adafruit''', которые не были описаны в этом руководстве.&lt;br /&gt;
&lt;br /&gt;
=См.также=&lt;br /&gt;
&lt;br /&gt;
=Внешние ссылки=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Myagkij</name></author>
	</entry>
</feed>