Arduino开发板实验一:补充
由 动力老男孩 发表于 2010/01/18 20:54:50感谢 lifanxi 和 galaxy 两位同学对昨天实验一的讨论。经过补充实验,事实证明galaxy的看法是对的。当PinMode是INPUT时,digitalWrite(pin, HIGH)实际上是用来设置上拉电阻,所以只需要在setup中设置一次即可。
代码如下:
int ledPin=13; int buttonPin=44; void setup() { pinMode(ledPin, OUTPUT); pinMode(buttonPin, INPUT); digitalWrite(buttonPin, HIGH); } void loop() { //这一行移到上面的setup中 //digitalWrite(buttonPin, HIGH); digitalWrite(ledPin, digitalRead(buttonPin)); delay(100); }
因为我的外部电路连接的GND,所以没法测试下拉电阻。
做完实验我又看了一个教程,发现我的这个实验非常粗暴,“是烧毁单片机的最佳途径”。因为44脚置1后的电压是+5V,我直接用一个开关把它接地了。还好单片机已经有内置的上拉电阻,否则的话这个板子可能就废了(软件开发经常提到的一个术语是“冒烟测试”,看来就是用于检查这种低级错误)。下面这个图是专业人士推荐的接线方式:
这样接线的好处是,任意两个可能存在电压差的管脚之间,都至少存在一个电阻,就不容易烧板子了。我现在手头没有空的电阻,就不重复这个实验了。有兴趣的同学可以点此看原文教程。
当io处于输入状态时,内部一般处于高阻态,只要不超过电源电压一般不会烧毁芯片
当处于输出状态时,直接接电源或者地就容易烧芯片了
to galaxy: 多谢,呵呵
这个板子有没有原理图?
有的,Arduino好像是开源项目
国内卖Arduino板子的,好多都是照着开源PCB生产的,当然也有改进的
具体的需要去官网上看看
嗯 我发现我又买错了一个东西 就是那个ISP下载的板子 其实不需要吧 直接连接就可以下载吧?以前用单片机的时候用过
Arduino可以直接用USB下载
以前有些单片机需要专用的下载和烧写的工具
这个东东已经集成在板子上了