<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[RemoteXY community — Два проекта в одном скетче]]></title>
	<link rel="self" href="https://forum.remotexy.com/extern.php?action=feed&amp;tid=1303&amp;type=atom" />
	<updated>2021-04-23T14:47:10Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.remotexy.com/viewtopic.php?id=1303</id>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3873#p3873" />
			<content type="html"><![CDATA[<p>ОК! Буду пробовать.</p>]]></content>
			<author>
				<name><![CDATA[bukinay1]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=1728</uri>
			</author>
			<updated>2021-04-23T14:47:10Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3873#p3873</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3872#p3872" />
			<content type="html"><![CDATA[<p>Привожу пример кода двух разных интерфейсов на двух разных каналах передачи данных реализованных в одном контроллере. Код компилируется только под новую библиотеку 3.x.x<br /></p><div class="codebox"><pre><code>#include &lt;SoftwareSerial.h&gt;
#include &lt;RemoteXY.h&gt;

//////////////////////////////////////////
// RemoteXY configurate PROJ 1  
#pragma pack(push, 1)
uint8_t const PROGMEM RemoteXY_CONF_PROGMEM_PROJ1[] =
  { 255,1,0,1,0,27,0,10,13,2,
  1,0,9,9,46,46,6,7,50,50,
  2,31,88,0,65,4,62,16,31,31,
  14,62,35,35 };
  
// this structure defines all the variables and events of your control interface 
struct {

    // input variables
  uint8_t button_1; // =1 if button pressed, else =0 

    // output variables
  uint8_t led_1_r; // =0..255 LED Red brightness 

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0 

} RemoteXY_PROJ1;
#pragma pack(pop)
CRemoteXY *remotexy_PROJ1;

//////////////////////////////////////////
// RemoteXY configurate PROJ 2 
#pragma pack(push, 1)
uint8_t const PROGMEM RemoteXY_CONF_PROGMEM_PROJ2[] =
  { 255,1,0,1,0,27,0,10,13,2,
  1,0,9,9,46,46,6,7,50,50,
  2,31,88,0,65,4,62,16,31,31,
  14,62,35,35 };
  
// this structure defines all the variables and events of your control interface 
struct {

    // input variables
  uint8_t button_1; // =1 if button pressed, else =0 

    // output variables
  uint8_t led_1_r; // =0..255 LED Red brightness 

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0 

} RemoteXY_PROJ2;
#pragma pack(pop)
CRemoteXY *remotexy_PROJ2;

void setup() {

  // external ESP8266 ethernet (not access point)
  remotexy_PROJ1 = new CRemoteXY (
    RemoteXY_CONF_PROGMEM_PROJ1, 
    &amp;RemoteXY_PROJ1, 
    &quot;&quot;, 
    new CRemoteXYConnectionServer (
      new CRemoteXYComm_ESP8266 (
        new CRemoteXYStream_HardSerial (
          &amp;Serial,
          115200
        ),
        &quot;myHomeFiFi&quot;,       // REMOTEXY_WIFI_SSID
        &quot;12345678&quot;),        // REMOTEXY_WIFI_PASSWORD
      6377                  // REMOTEXY_SERVER_PORT
    )
  ); 

  /*
  // if ESP8266 connected to softserial
  remotexy_PROJ1 = new CRemoteXY (
    RemoteXY_CONF_PROGMEM_PROJ1, 
    &amp;RemoteXY_PROJ1, 
    &quot;&quot;, 
    new CRemoteXYConnectionServer (
      new CRemoteXYComm_ESP8266 (
        new CRemoteXYStream_SoftSerial (
          2,       // REMOTEXY_SERIAL_RX
          3,       // REMOTEXY_SERIAL_TX, 
          9600
        ),
        &quot;myHomeFiFi&quot;,       // REMOTEXY_WIFI_SSID
        &quot;12345678&quot;),        // REMOTEXY_WIFI_PASSWORD
      6377                  // REMOTEXY_SERVER_PORT
    )
  ); 
  */

  // Serial (USB or Bluetooth)
  remotexy_PROJ2 = new CRemoteXY (
    RemoteXY_CONF_PROGMEM_PROJ2, 
    &amp;RemoteXY_PROJ2, 
    &quot;&quot;, 
    new CRemoteXYStream_SoftSerial (
      2,       // REMOTEXY_SERIAL_RX
      3,       // REMOTEXY_SERIAL_TX, 
      9600     // REMOTEXY_SERIAL_SPEED
    )
  ); 

  /*
  // for Hard serial
  remotexy_PROJ2 = new CRemoteXY (
    RemoteXY_CONF_PROGMEM_PROJ2, 
    &amp;RemoteXY_PROJ2, 
    &quot;&quot;, 
    new CRemoteXYStream_HardSerial (
      &amp;Serial1,       
      9600     
    )
  );  
  */
}


void loop() {
  remotexy_PROJ1-&gt;handler ();
  remotexy_PROJ2-&gt;handler ();

  if (RemoteXY_PROJ1.button_1 != 0) RemoteXY_PROJ1.led_1_r = 255;
  else RemoteXY_PROJ1.led_1_r = 0;

  if (RemoteXY_PROJ2.button_1 != 0) RemoteXY_PROJ2.led_1_r = 255;
  else RemoteXY_PROJ2.led_1_r = 0;
  

}</code></pre></div>]]></content>
			<author>
				<name><![CDATA[remotexy]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=2</uri>
			</author>
			<updated>2021-04-23T13:34:15Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3872#p3872</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3871#p3871" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>remotexy wrote:</cite><blockquote><p>Понятно.<br />Думаю что вам не нужно делать два проекта в одном скетче.<br />Вам необходимо реализовать один проект с возможностью одновременного подключения по разным каналам.<br />Это возможно с новой библиотекой 3.x.x<br />Пример есть тут <a target="_blank" href="http://forum.remotexy.com/viewtopic.php?id=1284">http://forum.remotexy.com/viewtopic.php?id=1284</a></p></blockquote></div><p>Мне представляться, что для <strong>Arduino + ESP-01</strong>&nbsp; это решение не имеет перспективы.<br />Причина в том, что:<br /> - объём передаваемых данных&nbsp; возрастает в два раза;<br />-&nbsp; в то же время скорость передачи данных уменьшиться (определяться наименьшей скоростью из двух потоков)<br /> Собственно так и произошло с моим проектом выполненным по вышеприведенной ссылке.</p>]]></content>
			<author>
				<name><![CDATA[bukinay1]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=1728</uri>
			</author>
			<updated>2021-04-23T07:25:44Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3871#p3871</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3870#p3870" />
			<content type="html"><![CDATA[<p>Понятно.<br />Думаю что вам не нужно делать два проекта в одном скетче.<br />Вам необходимо реализовать один проект с возможностью одновременного подключения по разным каналам.<br />Это возможно с новой библиотекой 3.x.x<br />Пример есть тут <a target="_blank" href="http://forum.remotexy.com/viewtopic.php?id=1284">http://forum.remotexy.com/viewtopic.php?id=1284</a></p>]]></content>
			<author>
				<name><![CDATA[remotexy]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=2</uri>
			</author>
			<updated>2021-04-23T04:25:29Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3870#p3870</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3865#p3865" />
			<content type="html"><![CDATA[<p>Хотелось бы понять, будет ли мне ответ, на мой вопрос?!</p>]]></content>
			<author>
				<name><![CDATA[bukinay1]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=1728</uri>
			</author>
			<updated>2021-04-20T12:58:44Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3865#p3865</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3856#p3856" />
			<content type="html"><![CDATA[<p>Программа одна - это контроллер газового котла. В нем участвую все девять датчиков температуры. Причем четыре из них контролируют температуру окружающей среды. В программе две страницы, присутствует графика. Цикл опроса 5 сек.<br />&nbsp; &nbsp; Добавляю еще одну страницу третью. Это <strong>мониторинг окружающей среды</strong> (<em>назвал некорректно - второй проек</em>т).<br />В этой части программы цикл опроса равный 5 сек. совершенно излишен. Можно сделать раз в минуту или реже<br />&nbsp; &nbsp;Весь проект постоянно подключен по<strong> USB</strong> к <strong>мультимедийной андроид приставке</strong>. Пишется графика<br />С другой стороны, к части этой большой программы, именно <strong>к третьей странице</strong>, я хочу иметь отдельный доступ через смартфон&nbsp; по&nbsp; <strong>WI-FI Ethernet</strong>.<br />&nbsp; &nbsp; Почему так - слишком много переменных, что бы все выводить по двум потокам USB/Bluetooth и <strong>WI-FI Ethernet</strong>.<br />Конфигурация третьей станицы - это есть </p><div class="codebox"><pre><code>uint8_t RemoteXY_CONF[]{...}
.....</code></pre></div><p> для второго проекта</p><p>Если коротко, то программа одна, а конфигураций <strong>RemoteXY</strong> две (<strong>RemoteXY_CONF_1</strong> и <strong>RemoteXY_CONF_2</strong>) и каждая со своим подключением.<br />Вот как то так...</p>]]></content>
			<author>
				<name><![CDATA[bukinay1]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=1728</uri>
			</author>
			<updated>2021-04-16T11:49:56Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3856#p3856</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3855#p3855" />
			<content type="html"><![CDATA[<p>Не совсем понял как вы хотите объединить. Что вы хотите получить после объединения? Вы хотите что бы в одном контроллере были оба проекта?</p>]]></content>
			<author>
				<name><![CDATA[remotexy]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=2</uri>
			</author>
			<updated>2021-04-16T10:27:09Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3855#p3855</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Два проекта в одном скетче]]></title>
			<link rel="alternate" href="https://forum.remotexy.com/viewtopic.php?pid=3852#p3852" />
			<content type="html"><![CDATA[<p>В доме произведен монтаж системы из девяти датчиков температуры типа <strong>Ds18b20.</strong><br />Все эти девять датчики используется в проекте для контроля системы отопления выполненном на <strong>Arduino pro mini</strong>.<br />Оптимальным решением является проект с подключением по <strong>USB.</strong><br />Вторым проектом является мониторинг температуры окружающего воздуха. В этом проекте желательно использовать уже смонтированные четыре датчика <strong>Ds18b20</strong> из имеющейся системы контроля.<br />Оптимальным решением для этих датчиков является проект с подключением по <strong>WI-FI Ethernet.</strong><br />Возникает вопрос, каким способом можно объединить два этих проекта в один.</p><p>Итак для первого проекта имеем:<br /></p><div class="codebox"><pre><code>#define REMOTEXY_MODE__HARDSERIAL
   #include &lt;RemoteXY.h&gt;

// настройки соединения 
#define REMOTEXY_SERIAL Serial
#define REMOTEXY_SERIAL_SPEED 19200

// конфигурация интерфейса  
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] ={ // Для каждого проекта своя конфигурация
..................
}
struct {
.......
char text_3; //одни и те же датчики для обоих проектов
} RemoteXY;
#pragma pack(pop)
............</code></pre></div><p>Для второго проекта имеем:<br /></p><div class="codebox"><pre><code>#define REMOTEXY_MODE__ESP8266_SOFTSERIAL
#include &lt;SoftwareSerial.h&gt;
#include &lt;RemoteXY.h&gt;

// настройки соединения 
#define REMOTEXY_SERIAL_RX 5
#define REMOTEXY_SERIAL_TX 4
#define REMOTEXY_SERIAL_SPEED 19200
#define REMOTEXY_WIFI_SSID &quot;XXXXXX&quot;
#define REMOTEXY_WIFI_PASSWORD &quot;password&quot;
#define REMOTEXY_SERVER_PORT 6377

// конфигурация интерфейса  
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] ={// Для каждого проекта своя конфигурация
..................
..................
}
struct {
.......
char text_3; //одни и те же датчики для обоих проектов
} RemoteXY;
#pragma pack(pop)</code></pre></div><p>Переменная </p><div class="codebox"><pre><code>char text_3; //одни и те же  для обоих проектов</code></pre></div><p>Подскажите каким образом можно объединить два этих проекта в один.</p>]]></content>
			<author>
				<name><![CDATA[bukinay1]]></name>
				<uri>https://forum.remotexy.com/profile.php?id=1728</uri>
			</author>
			<updated>2021-04-15T17:15:38Z</updated>
			<id>https://forum.remotexy.com/viewtopic.php?pid=3852#p3852</id>
		</entry>
</feed>
