Resident
На 1 есп
Yuriy
Resident
berrymorr
Resident
Думал до этого не дойдёт
berrymorr
эй! кто тут стикеры выпиливает(
Resident
Raspberry zero хватит же?
berrymorr
berrymorr
Resident
Мне просто нужны 2 возможности
Resident
Пулять в aux и по ble
Resident
Да мощи 32ой не хватит
berrymorr
дум даже на авр-8 запускают, но какой ценой)
berrymorr
я делал на стм8 8-битный BAM на 400, емнип, герц, на 64 канала
berrymorr
binary angle modulation
berrymorr
binary angle modulation
и это даже нормально работало, если не пытаться "плавно" крутить яркость - возле минимальных значений светодиоды всё равно мерцали, как я там ни пытался править характеристику
berrymorr
но стоило ли это тех усилий?
berrymorr
данунахуй.
Yuriy
berrymorr
если хочется спорта - это одно, хочется решить задачу - ставьте малину или апельсину, или ещё какой овощ, но вот чтоб с каким-то запасом
berrymorr
Yuriy
https://www.3cx.com/user-manual/ - есть для малины
berrymorr
возможно, придётся файлики в /dev/shm класть. возможно, туда придётся класть предварительно раскукоженные вавки
berrymorr
возможно, придётся свой миксер написать
Yuriy
надо что то похожее найти - реализованное. возможно всё - но общий битрейт никто не посчитал?
berrymorr
но сможет, йащетаю)
berrymorr
Resident
До мб где то
berrymorr
berrymorr
До мб где то
ннууу... мб на мрз - не такие уж и маленькие)
berrymorr
хотя всё равно, наверное, можно упихать в оперативку
Resident
Продолжительность воспроизведения будет зависит от продолжительности нажатия кнопки
berrymorr
а, типа трекер/секвенсор/синт?
berrymorr
короче, отрезайте всё ненужное (или вообще вливайте какой-нибудь alpine minimal), и вперёд и с песней, а на еспхе точно нет пути
Александра
#define TXD 8 // GPIO1/TXD01
void setup() {
pinMode(TXD, OUTPUT);
}
void loop() {
light();
}
void light()
{
for(int i = 0; i < 5; i++)
{
digitalWrite(TXD, HIGH);
delay(1000);
digitalWrite(TXD, LOW);
}
}
Александра
По идеи светодиод должен мигать раз в секунду, а на деле получается секунд 20. что я делаю не так?
Александра
И светодиод мигает больше, чем 5 раз
Василий
Александра
Сейчас поменяем полярность
Василий
надо как минимум еще одну задержку после digitalWrite(TXD, LOW);
Александра
berrymorr
berrymorr
так делайте, чтобы одинаково было
Александра
berrymorr
berrymorr
в коде у вас:
1. включить ногу
2. подождать 1000 чего-то там
3. выключить ногу
> начать цикл сначала
berrymorr
дальше, про 20 секунд: в каких единицах там delay - я без понятия, если честно. видимо, не в миллисекундах) возможно, где-то нужно задать (часто это делается через #define) частоту ядра
Александра
berrymorr
если некритично, то тупо на глаз можно
berrymorr
найдите целиком готовый проект, со всеми готовыми дефайнами и инициализациями
berrymorr
на такой ерунде затыкаться - только мотивацию почём зря терять
Ivansuper
Loop() и так постоянно вызывается после выхода из себя, отдельный цикл не нужен. Так оно работает
Александра
#define BLUE 2 // синий диод
#define WHITE 13 // белый диод
bool gState = false;
void setup() {
pinMode(BLUE, OUTPUT);
pinMode(WHITE, OUTPUT);
}
void loop() {
if(gState == false)
{
light();
gState = true;
}
}
void light()
{
for(int i = 0; i < 5; i++)
{
digitalWrite(BLUE, LOW);
digitalWrite(WHITE, LOW);
delay(1000);
digitalWrite(BLUE, HIGH);
digitalWrite(WHITE, HIGH);
delay(1000);
}
}
Александра
Почему два диода работают по очереди а не одновременно? И белый остается гореть после завершения цикла
Александра
#define BLUE 2 // синий диод
#define WHITE 13 // белый диод
bool gState = false;
void setup() {
pinMode(BLUE, OUTPUT);
pinMode(WHITE, OUTPUT);
}
void loop() {
if(gState == false)
{
light();
light2();
gState = true;
}
}
void light()
{
for(int i = 0; i < 5; i++)
{
digitalWrite(BLUE, LOW);
delay(1000);
digitalWrite(BLUE, HIGH);
delay(1000);
}
}
void light2()
{
for(int i = 0; i < 5; i++)
{
digitalWrite(WHITE, LOW);
delay(1000);
digitalWrite(WHITE, HIGH);
delay(1000);
}
}
Александра
При таком коде, проблема та же, белый светодиод не тухнет
Александра
Хотелось бы что нибудь похожее на многопоточность...
Александра
😔
Yuriy
Yuriy
так на двух ядрах запускайте
Александра
А как?
Yuriy
одну задачу на одно другую на другом
Yuriy
очевидно что рано об этом "многопоточность" - вам тут не нужна
Александра
У меня esp8266, тут одно ядро 😔
Yuriy
нужна тетрадь - ручка и в ручном режиме дебаг
Yuriy
serial.print - если тетрадки нет по рукой
Yuriy
и смотрите что происходит в недрах вашей программы
Yuriy
в чем различие между вашим представлением о порядке выполнения и реальностью
Yuriy
for(int i = 0; i < 5; i++)
{
digitalWrite(WHITE, LOW);
digitalWrite(BLUE, LOW);
delay(1000);
digitalWrite(WHITE, HIGH);
digitalWrite(BLUE, HIGH);
delay(1000);
}
на чем завершится ? Многозадачность. Зачем их два? если надо одновременно мигать?
Зачем вообще цикл - что он определяет?
Yuriy
void loop() {
static int flag = 0;
if(flag <=10) {
digitalWrite(WHITE, LOW);
digitalWrite(BLUE, LOW);
delay(1000);
digitalWrite(WHITE, HIGH);
digitalWrite(BLUE, HIGH);
delay(1000);
flag++;
} else {
// done
}
}
romanetz
romanetz
Алексей
А кто-нибудь пробовал при помощи ESP дернуть кадр с камеры и вывести его на экран?