iron 发表于 2012-1-18 16:04:13

第一个实验blink没成功,大家帮我看看,谢谢。

弄了一块uno,通过USB线连上电脑,装好驱动,她的"ON"灯亮了,还有"L"灯每隔1S闪一次。
然后我打开arduino 1.0, 打开File > Examples > 1.Basics > Blink,执行upload,“Done uploading”后TX,RX灯闪了几下就灭了,"L"灯一直都是每隔1S闪一次。

blink程序如下:
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly.

This example code is in the public domain.
*/

void setup() {               
// initialize the digital pin as an output.
// Pin 13 has an LED connected on most Arduino boards:
pinMode(13, OUTPUT);   
}

void loop() {
digitalWrite(13, HIGH);   // set the LED on
delay(1000);            // wait for a second
digitalWrite(13, LOW);    // set the LED off
delay(1000);            // wait for a second
}

麻烦大家帮我看看是什么原因。
还有,loop里的程序只执行一次,还是一直循环呢?
谢谢各位。

zhanggang1971 发表于 2012-1-18 17:54:06

Loop 里面的东东是一直循环的,按你说的现象来看,没看出失败啊?是在13口连接了LED吗?LED的极性再检查一下。想不出来有什么错。已经编译通过,而且下载成功了啊?

iron 发表于 2012-1-18 21:52:31

zhanggang1971 发表于 2012-1-18 17:54 static/image/common/back.gif
Loop 里面的东东是一直循环的,按你说的现象来看,没看出失败啊?是在13口连接了LED吗?LED的极性再检查一下 ...

digitalWrite(13, HIGH);
这句里的13号口在哪呀,不是TX,RX灯吗?
TX,RX灯闪烁,是不是因为upload时产生的呢?
"L"灯一直都是每隔1S闪一次,是怎么回事呢?

zhanggang1971 发表于 2012-1-18 21:57:53

iron 发表于 2012-1-18 21:52 static/image/common/back.gif
digitalWrite(13, HIGH);
这句里的13号口在哪呀,不是TX,RX灯吗?
TX,RX灯闪烁,是不是因为upload时产 ...

我的理解,“L”灯就是13号端口的指示灯,你也可以在13号接口插上一个LED试试,这两个灯应该是同步闪的。

zhanggang1971 发表于 2012-1-18 22:00:02

iron 发表于 2012-1-18 21:52 static/image/common/back.gif
digitalWrite(13, HIGH);
这句里的13号口在哪呀,不是TX,RX灯吗?
TX,RX灯闪烁,是不是因为upload时产 ...

TX,RX灯闪烁,是因为upload导致的。
digitalWrite(13, HIGH)其中的“13”指的就是13号端口啊,你看一下digitalWrite的帮助吧

iron 发表于 2012-1-18 22:40:10

zhanggang1971 发表于 2012-1-18 22:00 static/image/common/back.gif
TX,RX灯闪烁,是因为upload导致的。
digitalWrite(13, HIGH)其中的“13”指的就是13号端口啊,你看一下 ...

有点明白了,谢谢

zzz 发表于 2012-1-19 13:04:33

这个程序的效果就是指示灯每隔1S闪一下,没问题。

ardyPro 发表于 2012-1-19 15:45:30

弄了一块uno,通过USB线连上电脑,装好驱动,她的"ON"灯亮了,还有"L"灯每隔1S闪一次。
然后我打开arduino 1.0, 打开File > Examples > 1.Basics > Blink,执行upload,“Done uploading”后TX,RX灯闪了几下就灭了,"L"灯一直都是每隔1S闪一次。

还有,loop里的程序只执行一次,还是一直循环呢?
谢谢各位。

你的程序没有问题。

你现在看到的L灯每秒中闪烁一次,就是程序的正常结果。L灯就是连接13号脚的一个内置的LED,而且已经内置1k的电阻。你也可以在D13脚接入一个LED正极,负极接入旁边的GND,这样效果明显一点。

第二个问题,loop就是一直执行,正如它的英文单词显示的一样。如果说的深入一点,那就是:C/C++的程序都是以main()过程作为程序的开始,你打开xxx\arduino-0022\hardware\arduino\cores\arduino文件夹,就会发现有个main.cpp,里面的内容就是
#include <WProgram.h>

int main(void)
{
        init();

        setup();
   
        for (;;)
                loop();
      
        return 0;
}
就是在初始化板子之后,运行一次setup(),然后一直在循环调用loop()的。

幻生幻灭 发表于 2012-1-20 09:00:46

看来已经解决了,来晚一步{:soso__2152927486043015124_1:}
页: [1]
查看完整版本: 第一个实验blink没成功,大家帮我看看,谢谢。