Вы можете использовать это в jQuery, и он будет работать.
$('.input-categories > span').on('click',function(){
if ($(this).parent().hasClass("open")){
$(this).parent().removeClass("open");
}else {
$(this).parent().addClass('open');
}
});
При каждом вызове loop()
вы устанавливаете штифт на HIGH. Даже если вы установите значение LOW, оно сразу же будет установлено на HIGH при следующем вызове loop()
.
Переместите вызов digitalWrite(pinLED, HIGH);
из loop()
в функцию setup()
.
const int pinLED = 8;
void setup()
{
Serial.begin(9600);
pinMode(pinLED, OUTPUT);
digitalWrite(pinLED, HIGH);
}
void loop()
{
if (Serial.available() > 0)
{
char option = Serial.read();
if (option == '1')
{
digitalWrite(pinLED, LOW);
}
}
}
Из кода это выглядит, как если бы вы установили запись на LOW, она немедленно перезаписывается на HIGH этой частью CODE:
void loop()
{
digitalWrite(pinLED, HIGH);
if (Serial.available() > 0)
{
....
Так что создайте новое условие с «0» и удалите строку с [112 ] который пишет в каждом цикле:
const int pinLED = 8;
void setup()
{
Serial.begin(9600);
pinMode(pinLED, OUTPUT);
}
void loop()
{
if (Serial.available() > 0)
{
char option = Serial.read();
if (option == '1')
{
digitalWrite(pinLED, LOW);
}
if (option == '0')
{
digitalWrite(pinLED, HIGH);
}
}
}
Опираясь на ответ, который дал @Marthin ,
Я предполагаю, что вы просто хотите навсегда снять пин-код при отправке сигнала, и в этом случае вы должны использовать Глобальная переменная, например, так:
void setup()
{
Serial.begin(9600);
pinMode(pinLED, OUTPUT);
}
bool pinState=HIGH;
void loop()
{
digitalWrite(pinLED, pinState);
if (Serial.available() > 0)
{
char option = Serial.read();
pinState= option == '1'?LOW:pinState;
}
}
Если вы хотите управлять опциями «high» и «low» для вывода, вам просто нужно изменить одну строку в приведенном выше коде так:
pinState= option == '1'?LOW:HIGH;