<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[CANNY forum &mdash; Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
		<link>https://forum.canny.ru/viewtopic.php?id=161</link>
		<atom:link href="https://forum.canny.ru/extern.php?action=feed&amp;tid=161&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004».]]></description>
		<lastBuildDate>Fri, 02 Dec 2016 12:36:13 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5716#p5716</link>
			<description><![CDATA[<p>Можно устанавливать нужную длину &quot;слова&quot;.<br />В исходном примере длина строки больше.<br />В последующих примерах применен подход с выводом данных в нужные координаты экрана: часть&nbsp; информации выводится 1 раз и отображается постоянно (подписи), а часть постоянно обновляется (данные). Если изменить этот подход и обновлять весь экран, то можно формировать строки целиком (подписи и данные) и выводить их построчно, указывая только одну координату (первого символа в строке). Диаграмма изменится и, возможно, немного упростится. Тогда в строку из 20 символов уместится 3 блока (3х(2 символа подписи + 3 символа данных + разделитель)).<br />Главное правильно сформировать данные для вывода.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Fri, 02 Dec 2016 12:36:13 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5716#p5716</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5714#p5714</link>
			<description><![CDATA[<p>Спасибо, то, что надо. <br />Еще вопрос. <br />Длинна (в данный момент 5 знаков) &quot;слова&quot; как-то регулируется? Если не нужно такое длинное сообщение, можно сделать, к примеру, два знака на подпись, три знака на данные? Тогда в строке по три поля вывода можно получить.<br />Спасибо</p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Fri, 02 Dec 2016 11:31:51 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5714#p5714</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5703#p5703</link>
			<description><![CDATA[<div class="quotebox"><cite>alex_engine пишет:</cite><blockquote><p>...Просто скопировать часть диаграммы и назначить адреса (с адресами разобрался вроде)&nbsp; не получается, важную роль играют сопутствующие элементы...</p></blockquote></div><p>Фактически все сводится именно к копированию частей диаграммы... с добавлением некоторых доп.условий. При этом основной алгоритм вывода на дисплей не меняется. Просто нужно ему подставлять для вывода нужные данные.<br />В ряде случаев проще организовать динамическое отображение данных (в один момент времени отображается одна часть данных с требуемыми пояснениями и т.п., в другой - другая, в третий - третья и т.д. и по кругу), чем пытаться все впихнуть на один экран.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Thu, 01 Dec 2016 15:42:12 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5703#p5703</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5701#p5701</link>
			<description><![CDATA[<p>Чуть изменил диаграмму из примера.<br />Теперь у меня две строки с меткой и данными дважды в строке. <br />Пытался самостоятельно также заполнить оставшиеся строки, чтобы иметь еще пару строк в таком же формате, да не хватает понимания <img src="https://forum.canny.ru/img/smilies/sad.png" width="15" height="15" alt="sad" /></p><p>Просто скопировать часть диаграммы и назначить адреса (с адресами разобрался вроде)&nbsp; не получается, важную роль играют сопутствующие элементы.<br />Подскажите, пожалуйста, как доработать, чтобы все работало.<br />Спасибо</p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Thu, 01 Dec 2016 12:01:03 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5701#p5701</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5682#p5682</link>
			<description><![CDATA[<p>Одновременно на 1 (!!!) шину <strong><a href="https://ru.wikipedia.org/wiki/I%C2%B2C" rel="noopener noreferrer" target="_blank">I2C</a></strong> можно подключить более 100 устройств (классическая адресация включает 7-битное адресное пространство с 16 зарезервированными адресами, т.е. разработчикам доступно до 112 свободных адресов для подключения периферии на одну шину).<br />На 1 шину вполне можно подключить 2 дисплея, задав им различные адреса, с помощью специальных резисторов (см. сообщение 10 данной темы) и обращаться к ним изменяя адрес устройства в соответствующем регистре драйвера I2C.<br />Технически возможно подключить один CANNY7 к нескольким шинам I2C (до 5 шт), используя по 2 отдельных канала на каждую шину. При таком подходе нужно будет, при обращении к другой шине, деактивировать драйвер, изменить каналы контроллера, использующиеся для подключения к шине и снова активировать драйвер. Очевидно, что диаграмма несколько усложнится. Дисплеи имеют сою память и будут продолжать отображение полученных данных даже после отключения контроллера от шины, при условии сохранения питания на дисплее.<br />Мы сами не пробовали (просто не ставилось такой задачи) организовывать одновременное подключение нескольких дисплеев к CANNY7.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Fri, 25 Nov 2016 15:54:14 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5682#p5682</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5681#p5681</link>
			<description><![CDATA[<p>Снова здравствуйте<br />Можно ли подключить одновременно два разных экрана и управлять ими раздельно? Ведь аппаратно это возможно, свободных выходов хватает.</p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Fri, 25 Nov 2016 09:16:33 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5681#p5681</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5655#p5655</link>
			<description><![CDATA[<p>1. counter - определяет последовательность отправляемых дисплею команд, т.о. и последовательность вывода символов - если они выводятся один за другим, то будут располагаться в соседних ячейках экрана. За расположение символов на экране отвечают специальные команды - установки адреса ячейки экрана дисплея (это то что на входе 0 коммутатора №17 - &quot;addrs&quot;).<br />В последнем примере счетчик counter сбрасывается после вывода пары символов на входе 11 коммутатора. В нем сеть от блока 13 названа &quot;output char&quot; и участвует в задании условия для обнуления счетчика (блоки №№92,93,2,5,6 последнего примера), после чего цикл вывода символов повторяется.<br />2. В принципе можно, но для этого понадобится помудрить с коммутаторами, или использовать подход из последнего примера, отдельно сформировать постоянную часть выводимую на дисплей (пояснения и подписи, z.B. Val1:,..., usw), а необходимые данные (data1,...) выводить в нужные координаты экрана, либо определиться сколько символов данных действительно требуется выводить в каждую строку, возможно это будет меньше 16 и тогда можно будет обойтись одним основным коммутатором (нужно смотреть конкретно). В любом случае универсальный вариант для таких дисплеев сделать довольно сложно. Оптимальный подход - это как в последнем примере. Главное правильно указать адрес ячейки экрана.<br />3. Вывод одного символа выполняется за 4 прохода: 2 тетрады (2 х 4 бита), по 2 раза на каждую (стробирование). Счетчик используется для отправки каждой посылки и увеличивает свое значение после каждой отправки. Т.о. всего на отправку 2 символов (1го 16-битного регистра - значения на входе коммутатора №17) требуется 8 циклов. Побитовое И в сочетании со сдвигом позволяют увеличивать значение индекса коммутатора на единицу 1 раз в восемь циклов отправки данных дисплею, обеспечивая переход к следующей паре символов.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Thu, 17 Nov 2016 12:35:39 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5655#p5655</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5654#p5654</link>
			<description><![CDATA[<p>И снова здравствуйте.<br />Пробую заполнить всю строку экрана 1602 символами. На диаграмме &quot;хелло ворд&quot;, поменял на входах коммутатора знаки на нужные мне, ясное дело, выводятся не все.<br />В связи с этим куча вопросов.<br /><a href="http://piccy.info/view3/10529190/23bff635e68492eefe83c67bdb3f882b/orig/" rel="noopener noreferrer" target="_blank"><span class="postimg"><img src="http://i.piccy.info/i9/5c370241a6996cba87eaccc84693ba97/1479368241/132277/1087899/lcd_800.jpg" alt="http://i.piccy.info/i9/5c370241a6996cba87eaccc84693ba97/1479368241/132277/1087899/lcd_800.jpg" /></span></a><a href="http://i.piccy.info/a3c/2016-11-17-07-37/i9-10529190/800x500-r" rel="noopener noreferrer" target="_blank"><span class="postimg"><img src="http://i.piccy.info/a3/2016-11-17-07-37/i9-10529190/800x500-r/i.gif" alt="http://i.piccy.info/a3/2016-11-17-07-37/i9-10529190/800x500-r/i.gif" /></span></a></p><p>1. counter - этот счетчик не влияет на вывод и расположение символов? Он организован точно также, как и на диаграмме 2004 из последнего примера.<br />2 Как можно доработать диаграмму &quot;хелло ворд&quot;, чтобы выводить все 16 символов в каждой строке?<br />3. побитовое И значений счетчика с числом 111000 и последующий сдвиг вправо на 3. Зачем это и почему нельзя сразу сделать побитовое И с 000111?</p><p>Спасибо</p><p>П.С получилось засветить две строки путем переделки второй диаграммы.</p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Thu, 17 Nov 2016 07:53:47 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5654#p5654</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5648#p5648</link>
			<description><![CDATA[<p>Премного благодарен. Попробую разобраться. Экран нужен для другого проекта с кэнни, для отображения промежуточных состояний диаграммы, так как светодиодов уже не хватает.</p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Wed, 16 Nov 2016 12:37:35 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5648#p5648</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5647#p5647</link>
			<description><![CDATA[<p>Да после отключения питания от дисплея сбрасывается его настройка. При включении, дисплей находится в 8-битном режиме обмена данными и требует повторной инициализации.<br />Диаграмму в части инициализации менять не требуется. Можете попробовать подставить нужные данные в коммутатор блок №17, начиная с входа 1, вместо &quot;Hello, world!&quot;, используя конвертеры ITOA.<br />Немного доработанный пример во вложении. Он для LCD 2004 - вывод данных (4 изменяющихся значения) в 4 строки. Добавлены краткие пояснения. Однако боюсь что разобраться в ней будет довольно сложно, но адаптировать под нужный дисплей вполне возможно. Главное там показано, как выполнить преобразование данных и передать их на вывод.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Wed, 16 Nov 2016 11:51:19 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5647#p5647</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5646#p5646</link>
			<description><![CDATA[<p>Спасибо</p><p>Посадил а0, а1, а2 на массу, взял адрес 0х40 - завелось.<br />от наличия-отсутствия резисторов по 4.7кОм ничего не меняется. Похоже, на плате они уже есть.</p><p>Если экранчик отключить от кэнни а потом снова включить - отображается хаотичный набор знаков, до перевключения питания 12 вольт - я так понял, это сбивается инициализация?</p><p>Дальше, для использования 1602 мне нужно что-то поправлять в диаграмме, в части где инициализация? Или просто организовывать вывод символов с учетом меньшего &quot;разрешения&quot;?</p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Wed, 16 Nov 2016 10:25:55 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5646#p5646</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5645#p5645</link>
			<description><![CDATA[<p>Попробуйте 0х40. Особенность нашего регистра. Это то же что 0х20&lt;&lt;1, т.к. адрес PCF8574 начинает задаваться с бита 1 (а еще есть бит 0 - R/W).<br />Но подтяжка линий SDA и SCL к 5В нужна все равно.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Wed, 16 Nov 2016 09:11:42 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5645#p5645</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5644#p5644</link>
			<description><![CDATA[<p>Денис, спасибо за ответ<br />У меня на плате PCF8574T <br /><span class="postimg"><img src="http://zelectro.cc/Content/Uploads/116/Files/Z-PCF8574T_I2C_mod-address.jpg" alt="http://zelectro.cc/Content/Uploads/116/Files/Z-PCF8574T_I2C_mod-address.jpg" /></span> <br />Наверное нужно пробовать адреса 0х20? Или все же 0х40?</p><p> Главное, что принципиальных отличий в экранах нет.</p><p>На плате между питанием и линиями 4.7кОм прозванивается. Стало быть дело не в этом <img src="https://forum.canny.ru/img/smilies/sad.png" width="15" height="15" alt="sad" /></p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Wed, 16 Nov 2016 08:29:19 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5644#p5644</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5643#p5643</link>
			<description><![CDATA[<p>Если подключение PCF8574 к LCD соответствует приведенной выше схеме (на контактах А0, А1, А2 PCF8574 потенциал GND), то можно попробовать использовать адрес 0х40.<br />На дисплее 1602 можно попробовать текущую диаграмму, установив правильный адрес I2C, подход к выводу не меняется, адрес начала первой строки такой же (0х00), длины строки (16 символов) хватит для вывода текста &quot;Hello, world!&quot; начиная, как установлено в текущей диаграмме, с 4го знакоместа.<br /><strong>ВНИМАНИЕ! Напряжение питания и допускаемое напряжение на портах микросхемы PCF8574 составляет 5В! При подключении шины I2C контроллера CANNY7 к PCF8574 необходимо организовать подтяжку линий SDA и SCL к напряжению +5В резисторами 4,7кОм</strong>.<br />В использованном нами расширителе портов эти подтяжки уже есть, в Вашем случае их нужно установить дополнительно.</p>]]></description>
			<author><![CDATA[null@example.com (Денис, CANNY)]]></author>
			<pubDate>Wed, 16 Nov 2016 08:23:20 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5643#p5643</guid>
		</item>
		<item>
			<title><![CDATA[Re: Работа CANNY7 с жидкокристаллическим дисплеем I2C LCD2004]]></title>
			<link>https://forum.canny.ru/viewtopic.php?pid=5642#p5642</link>
			<description><![CDATA[<p>Отложил в сторону ардуиновский шилд, и (как думал) пошел простым путем.<br />Купил экран и плату (PCF8574T) к нему. Спаял, подключил - тишина. Просто синий экран.<br />Начал разбираться - экран оказался не 2004, а 1602. <br />Сложно диаграмму под такой экран переделать?<br /><a href="https://www.openhacks.com/uploadsproductos/eone-1602a1.pdf" rel="noopener noreferrer" target="_blank">https://www.openhacks.com/uploadsproduc … 1602a1.pdf</a></p><p>Вот даташит. Надо только адрес поменять или все глобальнее?</p><p>Спасибо</p><p>Полистал интернет, пробовал менять адреса: 0х20, 0х27, 0х3F. Тишина <img src="https://forum.canny.ru/img/smilies/sad.png" width="15" height="15" alt="sad" /></p>]]></description>
			<author><![CDATA[null@example.com (alex_engine)]]></author>
			<pubDate>Tue, 15 Nov 2016 18:09:53 +0000</pubDate>
			<guid>https://forum.canny.ru/viewtopic.php?pid=5642#p5642</guid>
		</item>
	</channel>
</rss>
