如何检查我的Arduino板是否正常工作?


Answers:


14

注意: @Ricardo对我的上个帖子发表评论后,我将发布此信息!

将评估板插入计算机的USB端口,并检查评估板上的绿色LED电源指示灯是否点亮。标准Arduino板(Uno,Duemilanove和Mega)在复位开关附近有一个绿色LED电源指示灯。

电路板上电时,电路板中心附近的橙色LED(在下图中标记为“ Pin 13 LED”)应点亮和熄灭(电路板来自工厂,预装了软件以使LED闪烁,这是一项简单的检查,板正在工作)。

在此处输入图片说明

如果将主机板连接到计算机时电源LED指示灯不亮,则可能是主机板未接通电源。

闪烁的LED(连接到数字输出引脚13)由板上运行的代码控制(新板上预装有Blink示例草图)。如果13针LED指示灯闪烁,则草图运行正确,这表示板上的芯片正在工作。如果绿色电源LED亮起,但插针13 LED不闪烁,则可能是工厂代码未在芯片上。如果您不使用标准板,则其插针13上可能没有内置LED,因此请查看文档以获取有关板的详细信息。

WindowsMac OS XLinux上都可以找到有关Arduino入门的在线指南。


2
注意:仅当USB端口或FTDI芯片未烧毁时,此方法才有效。即使这两个组件均不正常,Atmega芯片也可能正常工作。
asheeshr 2014年

1
+1,哈迪克!有趣的是,就在昨天,有人问了一个关于Arduino问题的问题,我想将它指向您的答案。现在我们可以正确地做到了。
里卡多

@里卡多:宾果游戏:P
Hardik Thaker

2
如果您重置板(使用按钮),则引导加载程序通常会闪烁13针LED指示灯
TheDoctor 2014年

我的第一块板是Duemilanove,并且配有失效的FTDI芯片。直到我得到一个可以工作的更换板之前,我都非常沮丧。
linhartr22

5

假设一个人拥有一个USB编程器,还有另一种检查Arduino的方法。

将编程器连接到Arduino的ICSP引脚,并avrdude使用正确的参数进行调用以读取Arduino的保险丝。

avrdude -c programmer-id -p partno -P port

对于Arduino Uno,partnom328pProgrammer-id取决于使用的设备。就我而言(mySmartUSB light)stk500v2是受支持的,并且port/dev/ttyUSB0。这里

avrdude -c stk500v2 -p m328p -P /dev/ttyUSB0

提供以下输出

avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e950f
avrdude: safemode: Fuses OK
avrdude done.  Thank you.

UNO董事会以正确的签名回应,并准备采取一些行动:)

如何连接?

我的USB编程器带有6线带状电缆,两侧带有2x3母连接器。与往常一样,插针1的电线标记为红色。由于编程器的2x3公连接器上有一个槽口,因此电缆只能在一个方向上安装。

如果您查看Arduino UNO,则ICSP标头位于重置按钮的右侧。

引脚排列如下。

MISO 1 2 VCC
SCK 3 4 MOSI
复位5 6 GND

注意插针1在左上角,并用白点标记!


2
但是,这不会测试USB-> Serial接口。
Cyber​​gibbons

@Cyber​​gibbons绝对正确!但是即使使用油炸的USB,仍然仍有可能使用编程器来刷新Arduino;)
Klaus-Dieter Warzecha 2014年

+1很高兴知道!将使我的3个已死的ATmegas通过此测试。您是否知道如何使用Arduino UNO作为程序员并已加载ArduinoISP草图来检查保险丝?
里卡多

2

如果您有另一个可以正常工作的Uno,并且都装有插槽的微控制器芯片,则可以使用已知的板将测试草图编程到未知板的芯片上,然后放回未知板上,然后运行它。

我喜欢下面的(伪编码)测试草图,用于快速检查手工制作的板;它同样适用于测试未知的工厂制造的产品。这不是详尽的测试,它只是检查基本的数字I / O,串行I / O以及短路或断路:

forever,
  for each digital I/O pin:
    write high;
    delay 100ms;
    write low;
  end;

  write "Hello, World!\n" to serial output;
  while serial character available,
    write character to serial output;
  end;
  write "\n" to the serial output;
end;
  • 连接至任何I / O与接地之间的测试LED(电阻焊接在其上的LED)应每2秒闪烁一次。如果不是,则该引脚可能发生故障或连接不良。

  • 连接到数字上相邻的引脚(物理上可能彼此不相邻)的两个测试LED应该依次闪烁。如果它们一起闪烁,则表明它们之间的短路,可能是焊料桥。

  • 终端应显示“ Hello World!” 每两秒钟。如果不是,则该引脚或FTDI电缆或板载USB /串行芯片可能出现故障。

  • 在键盘上键入一些内容,然后应将其重复回到串行终端(如果通过了先前的测试)。如果不是,则该针或FTDI电缆或板载USB /串行芯片可能再次出现故障。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.