极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 16466|回复: 8

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

[复制链接]
发表于 2012-1-18 16:04:13 | 显示全部楼层 |阅读模式
弄了一块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里的程序只执行一次,还是一直循环呢?
谢谢各位。
回复

使用道具 举报

发表于 2012-1-18 17:54:06 | 显示全部楼层
Loop 里面的东东是一直循环的,按你说的现象来看,没看出失败啊?是在13口连接了LED吗?LED的极性再检查一下。想不出来有什么错。已经编译通过,而且下载成功了啊?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-1-18 21:52:31 | 显示全部楼层
zhanggang1971 发表于 2012-1-18 17:54
Loop 里面的东东是一直循环的,按你说的现象来看,没看出失败啊?是在13口连接了LED吗?LED的极性再检查一下 ...

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

使用道具 举报

发表于 2012-1-18 21:57:53 | 显示全部楼层
iron 发表于 2012-1-18 21:52
digitalWrite(13, HIGH);
这句里的13号口在哪呀,不是TX,RX灯吗?
TX,RX灯闪烁,是不是因为upload时产 ...

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

使用道具 举报

发表于 2012-1-18 22:00:02 | 显示全部楼层
iron 发表于 2012-1-18 21:52
digitalWrite(13, HIGH);
这句里的13号口在哪呀,不是TX,RX灯吗?
TX,RX灯闪烁,是不是因为upload时产 ...

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

使用道具 举报

 楼主| 发表于 2012-1-18 22:40:10 | 显示全部楼层
zhanggang1971 发表于 2012-1-18 22:00
TX,RX灯闪烁,是因为upload导致的。
digitalWrite(13, HIGH)其中的“13”指的就是13号端口啊,你看一下 ...

有点明白了,谢谢
回复 支持 反对

使用道具 举报

发表于 2012-1-19 13:04:33 | 显示全部楼层
这个程序的效果就是指示灯每隔1S闪一下,没问题。
回复 支持 反对

使用道具 举报

发表于 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:}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-26 20:07 , Processed in 0.046329 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表