Программирование

Вопросы по программированию Arduino.

Помогите пожалуйста с моим проектом. Делаю консоль на базе esp32. Как сделать меню?

[code]
#include <SD.h>
#include <EEPROM.h>
#include <WiFi.h>
#include <Wire.h>

#include "SPI.h"
#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"


#define _cs   17  // goes to TFT CS
#define _dc   15  // goes to TFT DC
#define _mosi 23  // goes to TFT MOSI
#define _sclk 18  // goes to TFT SCK/CLK
#define _rst  5   // goes to TFT RESET
#define _miso     // Not connected





Adafruit_ILI9341 tft = Adafruit_ILI9341(_cs, _dc, _mosi, _sclk, _rst);


void setup() {

расчет диаметра

Ребята привет!
пишу небольшую программу. сначала отрабатываю на компьютере потом хочу перенести на ардуино нано.
приходят цифры от 0 до 4200. 3600 цифр по X оси
хочу в дальнейшем средствами ардуино рассчитать диаметр объекта где памяти не хватит хранить в массиве.
поэтому нужно данные обработать сразу на лету.
я бы хотел расчитать разницу по оси Х между точкой подъем и спуска. это и будет диаметр объекта.
Как определить точку подъема и спуска с учетом что бывают уж не большие шумы. не обязательно последующий пиксель больше другого.

Автономная работа NodeMCU v3(без WiFi и TCP сервера)

Приветствую всех пользователей, посетивших данную тему! Есть проект, когда NodeMCU v3 отсылает данные по WiFi на приложение на компьютере. На данный момент для работы платы необходимы сеть WiFi и запущенное приложение на компьютере, мне необходимо узнать можно ли заставить NodeMCU работать автономно(без WiFi и приложения), но при появлении сети и открытого приложения начинать отсылать информацию собранную во время работы без сети и открытого приложения. Заранее благодарю за любую полезную информацию!

1-wire без delay

вот мучает меня все время вот какой вопрос. есть библиотека для работы с 1wire. если посмотреть в ее функцию отправки данных -

Отправка и приём данных HC-12

Хотел с помощью модулей HC-12 передавать зашифрованные данные.

По итогу у меня получается так, что на приёме данные бьются.

Пример:

Отправил - f4f2b6db26f3666f4f00a7d588416f8330f5574d96e707f3f60eace320f21276

Принял - f4f2b6db26f3666f⸮f60eace320f21276

Возможно так выходит из-за того, что мк просто не успевает обрабатывать данные, но я не знаю, как это можно исправить.

Если строка короткая (Например - 123456) - данные принимаются нормально.

Помогите пожалуйста разобраться и решить данную проблему

Макет автоматических ворот

Строю макет автоматических ворот, которые будут управляться сторонним контроллером.

Макет нужен для отладки программы стороннего контроллера.

В чем вопрос? Вопрос в том, что нужна помощь в допиливании скетча.

Проект находится здесь: https://www.tinkercad.com/things/jyzbbX2gSwm

 

не работает чтение епрома в цикле

странности происходят какие то. вот код -

    etemp[9] = eeprom_read_byte((uint8_t*)17);
    etemp[10] = eeprom_read_byte((uint8_t*)18);
    etemp[11] = eeprom_read_byte((uint8_t*)19);
    etemp[12] = eeprom_read_byte((uint8_t*)20);
    etemp[13] = eeprom_read_byte((uint8_t*)21);
    etemp[14] = eeprom_read_byte((uint8_t*)22);
    etemp[15] = eeprom_read_byte((uint8_t*)23);
    etemp[16] = eeprom_read_byte((uint8_t*)24);

он работает. но выглядит не красиво. сделал через цикл -

ESP8266 - web server

Запустил ESP8266 (библиотека ESP8266WiFi.h) с простеньким примером (сервером), все вроде работает. Прикрутил Ajax  - то же все нормально.

Теперь решил от тестов перейти к делу, и тут вопросы

1. многопоточность сервера, да я понимаю как это можно сделать глобальный массив объектов WiFiClient и в главном цикле обрабатывать их запросы, но тогда сразу возникает вопрос как определять где чей клиент, в больших системах есть дискриптрор сессии, где его взять этот самый дискриптр... (все примеры в инете расчитаны на 1 сеанс)