ENC28J60 +Фиксированный IP
- Войдите на сайт для отправки комментариев
Сб, 11/05/2019 - 13:43
Как в данном примере установить фиксированный адрес? Ардуина постоянно лезет в сеть и подымает адрес с DHSP <code class="hljs sketch"><span class="hljs-comment"> For this example you need UIPEthernet library: <a data-cke-saved-href="https://github.com/UIPEthernet/UIPEthernet" href="https://github.com/UIPEthernet/UIPEthernet" target="_blank">https://github.com/UIPEthernet/UIPEthernet</a> Typical wiring would be (this is for Arduino UNO, search for correct wiring for your board): VCC -- 5V GND -- GND CS -- D10 SI -- D11 SCK -- D13 SO -- D12 INT -- D2 Blynk using a LED widget on your phone! App project setup: LED widget on V3 *************************************************************/</span> <span class="hljs-comment">/* Comment this out to disable prints and save space */</span> <span class="hljs-meta">#<span class="hljs-meta-keyword">define</span> BLYNK_PRINT Serial</span> <span class="hljs-meta">#<span class="hljs-meta-keyword">include</span> <span class="hljs-meta-string"><UIPEthernet.h></span></span> <span class="hljs-meta">#<span class="hljs-meta-keyword">include</span> <span class="hljs-meta-string"><BlynkSimpleUIPEthernet.h></span></span> <span class="hljs-comment">// You should get Auth Token in the Blynk App.</span> <span class="hljs-comment">// Go to the Project Settings (nut icon).</span> <span class="hljs-keyword">char</span> auth[] = <span class="hljs-string">"YourAuthToken"</span>; <span class="hljs-comment">// Select your pin with physical button</span> <span class="hljs-keyword">const</span> <span class="hljs-keyword">int</span> btnPin = <span class="hljs-number">1</span>; <span class="hljs-built_in">WidgetLED</span> led3(<span class="hljs-literal">V3</span>); <span class="hljs-built_in">BlynkTimer</span> timer; <span class="hljs-comment">// V3 LED Widget represents the physical button state</span> <span class="hljs-keyword">boolean</span> btnState = false; <span class="hljs-keyword">void</span> buttonLedWidget() { <span class="hljs-comment">// Read button</span> <span class="hljs-keyword">boolean</span> <span class="hljs-built_in">isPressed</span> = (<span class="hljs-built_in">digitalRead</span>(btnPin) == <span class="hljs-literal">LOW</span>); <span class="hljs-comment">// If state has changed...</span> <span class="hljs-built_in">if</span> (<span class="hljs-built_in">isPressed</span> != btnState) { <span class="hljs-built_in">if</span> (<span class="hljs-built_in">isPressed</span>) { led3.on(); } <span class="hljs-built_in">else</span> { led3.off(); } btnState = <span class="hljs-built_in">isPressed</span>; } } <span class="hljs-keyword">void</span> <span class="hljs-built_in">setup</span>() { <span class="hljs-comment">// Debug console</span> <span class="hljs-built_in">Serial</span>.<span class="hljs-built_in">begin</span>(<span class="hljs-number">9600</span>); <span class="hljs-built_in">Blynk</span>.<span class="hljs-built_in">begin</span>(auth); <span class="hljs-comment">// You can also specify server:</span> <span class="hljs-comment">//Blynk.begin(auth, "blynk-cloud.com", 80);</span> <span class="hljs-comment">//Blynk.begin(auth, IPAddress(192,168,1,100), 8080);</span> <span class="hljs-comment">// Setup physical button pin (active low)</span> <span class="hljs-built_in">pinMode</span>(btnPin, <span class="hljs-literal">INPUT_PULLUP</span>); timer.setInterval(<span class="hljs-number">500</span>L, buttonLedWidget); } <span class="hljs-keyword">void</span> <span class="hljs-built_in">loop</span>() { <span class="hljs-built_in">Blynk</span>.<span class="hljs-built_in">run</span>(); timer.<span class="hljs-built_in">run</span>(); }</code>
Как в данном примере установить фиксированный адрес?
Для начала, вставить код по-человечески, чтобы его читать можно было.
@AleksandrM,
Вы используете Blynk объявленный в BlynkSimpleUIPEthernet.h
Вызываете Blynk.begin(auth) именно для использования DHCP
Adapters/BlynkEthernet.h
Также есть возможность использовать статический адрес.
Используйте другой метод begin - тот, в котором есть параметр IPAddress local.
Этот? тоже не получаеться....
Blynk.begin(auth,IPAddress(10,121,65,155), 8080);
Можно пример?
Нет, не этот. Вам же в #3 написали какой.
Подскажите где ошибка?
Blynk.begin(auth,IPAddress(10.121.65.249), 8080, IPAddress local (10.121.66.155));
Подскажите где ошибка?
Blynk.begin(auth,IPAddress(10.121.65.249), 8080, IPAddress local (10.121.66.155));
void begin(const char* auth, const char* domain, uint16_t port, IPAddress local, IPAddress dns, const byte mac[] = NULL)
1-й параметр - указатель на строку символов с токеном
2-й - тоже указатель на строку символов, на домен или строка с ip это адресом, совсем не IPAddress
3-й - порт блинк сервера
4-й - экземпляр IPAddress представляющий локальный ip адрес в вашей сети, который хотите использовать для вашего enc28
5-й - экземпляр IPAddress представляющий ip адрес dns сервера.
6-й - мак адрес, если не требуется задавать конкретное значение можете не передавать.
Спасибо за помощь.Разобрался заработало.