Проблема с кодом или программой?

SwEeTxD
Offline
Зарегистрирован: 31.01.2013

Всем привет!

Писал код, который показан в этом видео и одновременно на практике.

Использую VBB3(virtual breadboard) для эмуляции.

class blink extends com.muvium.compatibility.arduino.Arduino{//Automatically Added VBB Framework Code - do not remove
int switchPin = 11;
int ledPin = 13;
boolean lastButton = LOW;
boolean currentButton = LOW;
boolean ledOn = false;
	
void setup()
{
	pinMode(switchPin, INPUT);
	pinMode(ledPin, OUTPUT);
}

boolean debounce(boolean last)
{
	boolean current = digitalRead(switchPin);
	if(last != current)
	{
		delay(5);
		current = digitalRead(switchPin);
	}
	return current;
}

void loop()
{
	currentButton = debounce(lastButton);
	if(lastButton == LOW && currentButton == HIGH)
	{
		ledOn = !ledOn;
	}
	lastButton = currentButton;
	digitalWrite(ledPin, ledOn);
}
}

А вот сдесь беда, эмулятор кидает вот такое:

Если VBB3 и вправду глючный, есть ли хотя бы какой то эмулятор который, выполнит этот код?

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Эта прога работает с java-кодом, а там boolean - это boolean (В ардуине этот тип приведен к uint_8), поэтому вместо LOW для boolean нужно использовать FALSE и т.д. Ну или как эта штука просит - изменить boolean на int.

SwEeTxD
Offline
Зарегистрирован: 31.01.2013

Огромнешое спасибо! Впервые узнал что в яве bolean это uint_8.

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Да не!!!! Это в ардуино boolean это uint8_t, а в яве нет!