• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Мерцание лампы от AC Light Dimmer Module

nikolz

Well-known member
попробуйте так:
Код:
int Dimmer1, Dimmer2;
void setup()
{
D5_Out; D6_Out; //Настраиваем порты на выход
D2_In; //настраиваем порт на вход для отслеживания прохождения сигнала через ноль
pinMode(A0, INPUT); pinMode(A1, INPUT);
attachInterrupt(0, detect,High); // настроить срабатывание прерывания interrupt0 на pin 2 на высокий уровень
UART_Init(115200); //инициализация порта
}
void loop()
{    D5_Low; D6_Low;
    if ((Dimmer1--)==0) D5_High;
    if ((Dimmer2--)==0) D6_High;
}
//********************обработчики прерываний*******************************
void detect()
{ Dimmer1=5+analogRead(0); Dimmer2=5+analogRead(1); }
 

petran67

New member
у Вас изначально написано uint8_t.
Покажите сообщение об ошибке.
Там не была проблема в 8, 16 или 32 а в том что отсутствовало продолжение "_t"
Это я добавил, эта ошибка исчезла но после нее есть еще 16 ошибок, которые выдает компилятор. А дальше уже черт ногу сломит ((
 

nikolz

Well-known member
Там не была проблема в 8, 16 или 32 а в том что отсутствовало продолжение "_t"
Это я добавил, эта ошибка исчезла но после нее есть еще 16 ошибок, которые выдает компилятор. А дальше уже черт ногу сломит ((
ну так покажите, а то у меня телепатия сегодня отключилась.
 

petran67

New member
ну так покажите, а то у меня телепатия сегодня отключилась.
error: 'uint16' does not name a type; did you mean 'uint16_t'?
volatile uint16 tic, Dimmer1, Dimmer2;
^~~~~~
uint16_t

In function 'void setup()':
error: 'High' was not declared in this scope
attachInterrupt(0, detect,High); // настроить прерывание interrupt0 на pin 2 на высокий уровень
^~~~

9:27: note: suggested alternative: 'sinh'
attachInterrupt(0, detect,High); // настроить прерывание interrupt0 на pin 2 на высокий уровень
^~~~
sinh

In function 'void loop()':

15:5: error: 'uint16' was not declared in this scope
uint16 T1=micros()-tic;

^~~~~~

15:5: note: suggested alternative: 'uint16_t'
uint16 T1=micros()-tic;
^~~~~~
uint16_t


error: 'ledPin' was not declared in this scope
digitalWrite(ledPin, val); // устанавливаем значение на све
^~~~~~

16:16: note: suggested alternative: 'ldiv'
digitalWrite(ledPin, val); // устанавливаем значение на све
^~~~~~
ldiv


16:24: error: 'val' was not declared in this scope
digitalWrite(ledPin, val); // устанавливаем значение на све
^~~


17:13: error: 'Dimmer1' was not declared in this scope
if ((Dimmer1-T1)>0) { D5_High; delayMicroseconds(50);Dimmer1 =0;}
^~~~~~~

17:21: error: 'T1' was not declared in this scope
if ((Dimmer1-T1)>0) { D5_High; delayMicroseconds(50);Dimmer1 =0;}
^~


17:21: note: suggested alternative: 'A1'
if ((Dimmer1-T1)>0) { D5_High; delayMicroseconds(50);Dimmer1 =0;}
^~
A1


18:13: error: 'Dimmer2' was not declared in this scope
if ((Dimmer2-T1)>0) { D6_High; delayMicroseconds(50);Dimmer2 =0;}
^~~~~~~

18:21: error: 'T1' was not declared in this scope
if ((Dimmer2-T1)>0) { D6_High; delayMicroseconds(50);Dimmer2 =0;}
^~


18:21: note: suggested alternative: 'A1'
if ((Dimmer2-T1)>0) { D6_High; delayMicroseconds(50);Dimmer2 =0;}
^~
A1


In function 'void detect()':

23:3: error: 'tic' was not declared in this scope
tic=micros();
^~~

24:5: error: 'Dimmer1' was not declared in this scope
Dimmer1= map(analogRead(0), 0,1023,50,9800); // Эти входы для потенциометров
^~~~~~~

25:5: error: 'Dimmer2' was not declared in this scope
Dimmer2 = map(analogRead(1), 0,1023,50,9800);
^~~~~~~


exit status 1

'uint16' does not name a type; did you mean 'uint16_t'?
 

petran67

New member
Вобщем, я вопрос уже решил. Нашел по объявлениям исполнителя и за символические 10 евро написал мне скетч, который заставил все заработать как надо.
Спасибо nikolz за желание и попытку помочь.
 
Сверху Снизу