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

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

помогите оптимизировать код

#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"
#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
int cases = 0;
int t = 150;
RF24 radio(9, 10); 

byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"}; //возможные номера труб

byte button = 3;  // кнопка на 3 цифровом
byte potent = 0; // потенциометр на 0 аналоговом
byte slider = 1; // движковый потенциометр на 1 аналоговом пине

MPU 6050 помогите получить среднее значение

Недавно пришел датчик MPU 6050. залил стандартный скетч. вывел показания на монитор, и хорошо зафиксированный датчик "калеблется" почти на градус. точный уровень из него сделать не получится)) подскажите как усреднить

скетч

Проблема с диапазоном времени

Не могу заставить работать свечение светодиода в определенном промежутке времени. Если ставить всё в пределах одного часа(например от 10:30 до 10:55), то всё работает. А вот если указан диапазон от 10:30 до 11:20, то в включается он в нужное время, но вот выключается он при переходе в новый час(11:00). Подскажите, как это вылечить? Вот условие из скетча:

Сделать компонент класса ссылкой на массив

Для того, чтобы напрямую работать с "внешней" переменной (в данном примере массив out_pins) в качестве аргумента функции мы передаем ссылку на начало переменной

void pinController::SetPinOn(byte (&out_pins)[PINS_OUT_COUNT])

А вот как сделать такой массив компонентом класса ?

Строка вида:

class pinController
{
  public: (&out_pins)[PINS_OUT_COUNT];

Работать не будет.

Какой в данном случае должен быть синтаксис ?

Ошибка при прошивки платы NodeMCU

Ребят купил плату NodeMCU на ESP8266 для не очень хорших дел и немогу ее прошить вылезает ошибка Arduino: 1.8.3 (Windows 10), Плата:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Serial, 9600, 4M (3M SPIFFS)"

Заводская бегущая строка (uln2803 + 74hc595)

Привет. Есть вот такая бегущая строка:

При включении показывает 0,00 по центре. Питается от 5 В. Сзади выглядит вот так:

Средний контакт конектора питания идёт к RXD Atmega162. МК находится только на 1 модуле, все другие слейвы. 

Листалка параметров

Помогите в создании нормальной листалки.

Програмированием до этого никогда не занимался.

В итоге код откудато содрал и доработал, но работает не как хотелось бы.

Листалка по кругу одной кнопкой. при включении оказывается посередине (mode 6) и при нажатии кнопки двигаетсся по кругу.

Хотелосьбы 2 кнопки - вниз и вверх.

 

навигация для дрона

iМогу предложить работу с достойной оплатой по программированию на симулинк матлаб  с последующей трансляцией на ПЛИС и бортовой процессор дрона для коррекции инерциальной системы навигации по информации фото аппарата. Алгоритмы заказчика.
Буду рад скорому отклику.

 

Watchdog на час

Всем доброго времени суток. Начал работу над датчиком влажности для комнатных растений, и для снижения энергопотребления решил отправлять ардуинку в сон, потому как замерять влажность чаще 5-10 раз в день не нужно. Все здорово, ардуинка уснула, но как уу будить? Первое что подвернулось под руку - watchdog, но максимальное время для работы вотчдога 8с, далее он перезагружает всю программу. Мне хотелось бы увеличить это время раз в 450. Логично подумать что просыпаясь программа должна считывать состояние некой переменной, и если она не достигла 450, то снова спать.

Arduino и ATtiny44A настройка частоты таймера TIMER0B на 10кГц

Доброго времени, подскажите как изменить частоту на выходе ШИМ.  А то пищание мотора аж уши режет при использовании драйвера VNH3SP30. 

Я только начиную во всем этом разбираться.

В настройках использую МК ATtiny44 CPU clock 8MHz