新手編譯求救
剛接觸 ARDUINO ,請問一下編譯錯誤的問題:我實在看出哪裡有錯,請大大門提示一下,
或是告訴我哪邊有編譯錯誤的DEBUG教學。謝謝。
主要就是最後一行的},我沒辦法上傳晶片辦法執行,也不能編譯,
整個卡住...........
附上程式碼:
int lpledPin = 2;
int mpledPin = 3;
int hpledPin = 4;
int 3pledPin = 5;
int pwmPin = 8;
int val = 0;
int light = 0;
void setup()
{
pinMode(lpledPin, OUTPUT);
pinMode(mpledPin, OUTPUT);
pinMode(hpledPin, OUTPUT);
pinMode(3pledPin, OUTPUT);
pinMode(pwmPin, INPUT);
}
void loop()
{
val = digitalRead(pwmPin);
if (val == HIGH)
{
light = light + 1 ;
analogWrite(lpledPin, light);
delay(10);
}
val = digitalRead(pwmPin);
if (val == LOW)
{
analogWrite(lpledPin, 0);
analogWrite(mpledPin, light);
delay(200);
analogWrite(mpledPin, 0);
analogWrite(hpledPin, light);
delay(200);
analogWrite(hpledPin, 0);
analogWrite(3pledPin, light);
delay(200);
analogWrite(3pledPin, 0);
val = 0;
light = 0;
}
}
估计是因中文字符所引起的! 是輸入了一些看不到的字符,而 3pledPin 不是一個正規名字。下面是改好的。
int lpledPin = 2;
int mpledPin = 3;
int hpledPin = 4;
int pledPin = 5;
int pwmPin = 8;
int val = 0;
int light = 0;
void setup()
{
pinMode(lpledPin, OUTPUT);
pinMode(mpledPin, OUTPUT);
pinMode(hpledPin, OUTPUT);
pinMode(pledPin, OUTPUT);
pinMode(pwmPin, INPUT);
}
void loop()
{
val = digitalRead(pwmPin);
if (val == HIGH)
{
light = light + 1 ;
analogWrite(lpledPin, light);
delay(10);
}
val = digitalRead(pwmPin);
if (val == LOW)
{
analogWrite(lpledPin, 0);
analogWrite(mpledPin, light);
delay(200);
analogWrite(mpledPin, 0);
analogWrite(hpledPin, light);
delay(200);
analogWrite(hpledPin, 0);
analogWrite(pledPin, light);
delay(200);
analogWrite(pledPin, 0);
val = 0;
light = 0;
}
}
eddiewwm大,
可以幫忙指出您所謂的看不見的字符嗎?
我真的是不知道要哪裡出錯.....
謝謝您 你看不到的字符就是用中文打的空格,以后空格不要用中文打,你打的所有东西都要用英文输入法
int LED1 = 2;
int LED2 = 3;
int LED3 = 4;
int LED4 = 5;
int PWP = 8;
int val;
int LIT =0;
void setup()
{
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
pinMode(LED3, OUTPUT);
pinMode(LED4, OUTPUT);
pinMode(PWP, INPUT);
}
void loop()
{
if (digitalRead(PWP) == HIGH)
{
LIT = LIT + 1;
analogWrite(LED1, LIT);
delay(10);
}
else if (digitalRead(PWP) == LOW)
{
analogWrite(LED1, 0);
analogWrite(LED2, LIT);
delay(200);
analogWrite(LED2, 0);
analogWrite(LED3, LIT);
delay(200);
analogWrite(LED3, 0);
analogWrite(LED4, LIT);
delay(200);
analogWrite(LED4, 0);
val = 0;
LIT = 0;
}
} 一般都是中英文字符引起 謝謝樓上大大們,
可恨的是,都知道原因了,我自己修改的還是過不了......。
页:
[1]