Ниже вы можете найти одну версию моей функции test()
(я пробовал несколько), но, увы, безуспешно. Индикатор выхода остается включенным или выключенным, но я ожидал, что он будет гореть sh.
Очевидно, я чего-то не понял, возможно, работает static
. Я пробовал булево и целочисленное определения для ledPinState
, также пробовал вывод на контакт 13 и цифровой вывод 48 (LED + 1k Res). Блок, который я закомментировал, работает просто найти и, по сути, производит вывод, который я ожидаю, используя мою функцию. Я был бы признателен за любую помощь с ошибкой моих путей!
Моя задача - создать функцию, которую я могу вызвать для работы с шестью входными контактами. Toggle()
только для проверки принципа.
const int ledPin = 48; // tried 13
void setup() {
pinMode(ledPin, OUTPUT);
}
/* THIS works
void loop() {
digitalWrite(13, HIGH); // sets the digital pin 13 on
delay(1000); // waits for a second
digitalWrite(13, LOW); // sets the digital pin 13 off
delay(1000); // waits for a second
}
*/
void loop() {
digitalWrite(ledPin, toggle());
delay(1000); // slow it down
digitalWrite(ledPin, toggle());
delay(1000);
}
// Test function
bool toggle(){
static bool ledPinState;
if (ledPinState = HIGH){
ledPinState = LOW;
}else{ // = LOW
ledPinState = HIGH;
}
return ledPinState;
}
/* OR above
..
return false;
..
return true;
*/